Orientação básica de configuração necessária

0

Eu configurei um CentOS para rodar o site da nossa empresa usando o Apache. O Apache é executado como usuário apache . Agora, para atualizar o código do nosso site usando o git, defino um usuário como sumit e crie um script de shell que use git pull (acho que podemos usar rsync , mas não sei como usá-lo).

Agora, eu configurei este script de shell para funcionar em tempo hábil e funciona bem. no entanto, quando baixar as alterações, altere o proprietário do formulário de arquivo apache:apache para sumit:sumit , pois esse é o usuário com o qual ele faz o download. Eu tento colocar chown no meu script de shell, mas ele não muda o usuário, pois requer sudo user.

Como posso garantir que usar git 1. Eu posso gerenciar a permissão (para que toda a pasta gravável não mude ou se atenha à minha necessidade) 2. novos arquivos baixados permanecem para o apache.

Oh, eu tentei executar o cron usando apache user, mas isso não funcionou porque apache foi banido do shell.

    
por Sumit Gupta 05.02.2016 / 06:45

1 resposta

0

Seu problema aqui é que você está usando o git como uma ferramenta de implantação, que não é. Git é para controle de versão, e é isso. Quando você quiser implantar seu código em algum lugar, você deve usar um script ou um produto pré-criado para verificar o ramo correto, copiar arquivos relevantes, compilar tudo o que possa precisar de compilação e, no seu caso, definir permissões. / p>

Existem várias maneiras de fazer isso. Existem servidores de compilação comerciais, como o TeamCity ou o Jenkins / Hudson (e muitos outros semelhantes), que têm todos os tipos de funcionalidades incorporadas para implementação.

Como alternativa, você pode usar um gancho git no seu servidor git para chamar um script que faça a cópia e a configuração de permissão para você. Este gancho precisaria ser executado como um usuário que tem as permissões corretas para chown / chmod, obviamente, mas você pode conseguir isso com segurança com as chaves ssh.

    
por 05.02.2016 / 08:17