Gerencia o projeto da Web do SFTP em vários hosts da Web remotos ao mesmo tempo

3

Eu já fiz algumas pesquisas, mas infelizmente não consegui encontrar uma solução que eu pudesse fazer no meu caso.

Portanto, trabalhe em pilhas LAMP e, para um cliente, há o problema de ter que trabalhar simultaneamente em três troncos diferentes do mesmo projeto. Então, neste momento, existem três hosts (no mesmo servidor):

develop.myproject.ext
testing.myproject.ext
production.myproject.ext

Como concebível, o projeto tem este curso: 1. novos recursos são desenvolvidos na versão develop do projeto 2. acabados, eles são "copiados" para a versão testing , onde o teste é feito pelo cliente 3. Depois que tudo estiver funcionando e o cliente aprovar, as alterações serão informadas no production version

Eu uso o Elementary OS e o Sublime Text 3 com o plugin SFTP (cada vez que um arquivo é editado, o save é automaticamente carregado no host de destino).

No momento, eu uso um método não muito conveniente, isto é, um arquivo onde eu acompanho os arquivos atualizados para cada host, que é muito dispersivo (eu preciso saber para cada host onde eu carreguei qual arquivo) e é provável que isso crie conflitos caso haja desenvolvimento e teste (por exemplo, eu tenho a versão 1.2 de um arquivo develop , 1.1 em testing e 1.0 em production ).

Existe uma metodologia, um programa, enfim, algo que possa facilitar esse gerenciamento?

Eu já avaliei a opção de usar o Git (Gitlab em particular), mas isso pressupõe que ele tenha que passar cada vez do terminal (ou usar o plugin no Sublime Text) para carregar o arquivo e ainda ter três ramificações separadas, o que parece, no entanto, incontrolável (eu não preciso ter todo o histórico e funções que o git me oferece).

Como todos os três hosts operam em bancos de dados diferentes, seria conveniente ter uma ferramenta de gerenciamento que migre automaticamente o banco de dados inteiro da produção para os outros dois hosts (aquele que é constantemente atualizado). No entanto, isso não é particularmente urgente porque eu encontrei uma solução temporária usando uma série de scripts bash automáticos.

Obrigado a todos que decidirem me ajudar.

    
por mimet 06.09.2017 / 09:47

1 resposta

1

A solução git deve funcionar bem com ramificações para cada compilação

  • Desenvolver
  • Teste
  • Produção

O ramo relevante pode ser reencaminhado para o novo ponto de cada vez, tornando mais fácil manter as 3 versões sincronizadas.

Exemplo

(1 | DTP)

Você adiciona dois commits para desenvolver

(1 | TP) - > (2) - > (3 | D)

Uma vez que você está feliz, você avança rapidamente os testes para desenvolver

(1 | P) - > (2) - > (3 | DT)

Uma vez que você está feliz com isso, você avança a produção para testes

(1) - > (2) - > (3 | DTP)

Os commits aqui podem ser mesclados em ramificações de recursos ou qualquer fluxo de trabalho que você preferir

Quanto ao upload, você pode puxar o servidor, ou se você não pode obter um shell, você pode ter um script de verificação de cada ramo e empurrá-lo para o servidor relevante automaticamente.

Se todos eles forem servidores da web, você poderá usar um servidor como o caddy com um plug-in como este , que será automaticamente sincronizar-se com o seu repo, então o script seria desnecessário

    
por 06.09.2017 / 10:03