# Ambientes Únicos - DevOps


Atualizações para usar o processo de ambientes únicos para Teste e Geração de Pacotes.

# Servidor


  • Solicitar ao pessoal de redes a criação de um websocket para o seu Produto ou Módulo.
# Tela Product

  • Relacionar o servidor criado com o seu produto com o tipo Teste.
    • Base URL : http://testephp7-[divisão].teknisa.com/[divisão]
    • Base Path: /var/www/equipe_teste/php7/[divisão]
  • Relacionar o servidor criado com o seu produto com o tipo Package.
    • Base URL : http://packages-[divisão].teknisa.com/[divisão]
    • Base Path: /var/www/packages/[divisão]

Dica

[divisão] = tecfood, pebbian, odhen, teknisa...

# Tela Server

  • Configurar os mnemônicos para o novo servidor.

Dica

É possível copiar do servidor antigo utilizando a action Mnemonic Export, atentando-se para as particularidades, como birt, que cada servidor terá o seu em execução.

# Scripts

# Composer
  • Alterar a instalação para composer update;
  • Retirar quaisquer pontos que limpem o cache, apaguem o composer.lock, apaguem o vendor e afins.

Dica

Geralmente localizado no back step, chamado pelo Test Before ou Test After.

# Bower e NPM
  • Alterar a instalação para bower/npm update;
  • Retirar quaisquer pontos que limpem o cache, apaguem o bower_components e afins.

Dica

Geralmente localizado no front step, chamado pelo Test After.

# Atualização do repositório de entidades
  • Na rotina atual, os scripts de banco de dados são gerados a partir dos homologados, sempre buscando os mais recentes de acordo com o estado atual da base. Sendo assim, tudo que é feito para atualizar o entities ou realizar um checkout em uma tag específica, não é mais necessário e pode ser removido.

Dica

Geralmente localizado no back step, chamado pelo Test Before.

# Cópia de Módulos
  • Adicionar validação para só copiar quando for necessário (Login, ACL, ect...).

Dica

Geralmente localizado Test After.

# Atualizações em arquivos do produto principal
  • Visto que o foco é manter um ambiente com todos os módulos, a atualização dos arquivos do produto (db.xml, parameters.xml, environment.js, entre outros...) ficará por conta apenas do script do produto principal. Os comandos que fazem isso nos módulos deverão ser removidos.

Dica

Geralmente localizado Test After.

# Pasta LTS
  • Não é mais necessário gerar um ambiente que tenha todos os módulos (geralmente chamado de LTS nos scripts), visto que já será feito um ambiente completo assim que cada módulo gere um teste. Os comandos que fazem isso nos módulos também deverão ser removidos.

Dica

Geralmente localizado Test After.

# Arquivos de login
  • A atualização da URL de login é desnecessária para o ambiente de teste. Os pontos onde isso é feito podem ser removidos (no script padrão, essa parte é feita executando um script chamado update_login_step.sh).

Dica

Geralmente localizado Test After.

# Limpeza de arquivos para pacote
  • Não remover .git e node_modules. No script padrão, isso é feito a partir dos comandos abaixo:
    • rm -Rf $MCSV_PATH/mobile/node_modules
    • find . -name .git -exec rm -rf {} +

Dica

Geralmente localizado Package Before.

# Repositório Principal

Atenção

Apenas para módulos. Esse passo não é necessário para o produto principal.

  • O repositório Teknisa Modules era utilizado apenas para um agrupamento necessário nas rotinas internas do DevOps. Visto que a pasta principal conterá o produto principal, agora temos que:
    • No PM, apagar o repositório do Teknisa Modules e adicionar o referente ao seu produto (erp, tecfood, management, etc...)
      • Exemplo: Em um módulo do TecFood, remover o git@gitlab.teknisa.com:teknisa/teknisa-modules.git e adicionar o git@gitlab.teknisa.com:tecfood/tecfood.git.
    • No DevOps, configurar o diretório do repositório adicionado e marcá-lo como Master.
      • Para que todos os módulos compartilhem do mesmo ambiente, o diretório principal deverá ser o mesmo para todos. No caso do TecFood, por exemplo, todos ficarão configurados no diretório principal como tecfood
    • Ainda do DevOps, na aba Product, alterar o Base URL para a mesma pasta configurada no repositório principal. No exemplo acima, ficaria também como tecfood.

# Exemplos



  • Solicitar a criação de um link fixo para acessar o ambiente de teste
    • Exemplo: http://teste-pm.teknisa.com
  • Com o link criado, alterar os mnemônicos para ficar igual produção, como a remoção do /service, por exemplo.