Ao fazer uma implantação contínua com o Git, como você lida com arquivos ignorados no gitignore? Esses arquivos são ignorados por motivos de privacidade (ou seja, não os querem enviados para outros repositórios remotos, como o GitHub), mas com esses arquivos ignorados não sendo enviados para o repositório de implantação contínua, o aplicativo não será executado (pois os arquivos ignorados são necessário para o software funcionar corretamente).
Como as pessoas costumam fazer isso? Nesse caso, o Git não é o melhor candidato para implantação contínua devido a arquivos ignorados?
version-control
user3175663
fonte
fonte
Respostas:
Se o seu software não funcionar sem esses arquivos, você terá um problema com qualquer tipo de implantação, manual, automática ou contínua, com qualquer tipo de VCS ou mesmo sem nenhum VCS. Portanto, altere seu software para que ele possa ser executado realmente sem esses arquivos (por exemplo, ele pode assumir algum tipo de "parâmetros padrão" se os arquivos estiverem ausentes) ou forneça uma versão desses arquivos adequados para implantação que são copiados ( como parte da etapa de implantação) no ambiente de destino, caso não exista uma versão "privada" desses arquivos.
Se você estiver falando de algo como um arquivo contendo credenciais de banco de dados para efetuar logon no servidor, que, por motivos de segurança, não deseja estar no controle de versão, precisará colocar esse arquivo no ambiente de implantação uma vez , provavelmente manualmente , por uma pessoa que possui direitos suficientes ou conhece a senha. Mas isso é intencional e não deve impedir você de implantar novas versões diárias do seu software. Apenas verifique se os arquivos de credenciais em vigor não são substituídos ao implantar uma nova versão.
fonte
Outra opção é armazenar as informações confidenciais dentro da sua ferramenta de implantação. E a configuração da ferramenta de implantação em um repositório de origem privado separado.
Deixar os dados confidenciais na máquina de destino funciona, mas pode apodrecer - alguém muda isso sem seguir os procedimentos, a máquina freia e ninguém se lembra das configurações corretas, etc ...
O Saltstack, por exemplo, tem https://docs.saltstack.com/en/latest/topics/pillar/index.html
fonte