# Procedimento Publicação Release Atende.Net > > Documentação do passo a passo para realizar publicação da Release Atende.Net no repositório SVN e GIT > IMPORTANTE: Este processo deve ser iniciado sempre na segunda-feira da semana do fechamento da Release. Deve ser feito todos os dias da semana em questão, sempre às 12:00 e às 18:00. Para verificar a data de fechamento da Release, no dicionário selecione o grupo `AtendeNet Web` e depois vá no Menu `Outros > Fábrica > Pacotes de sistemas` e ao expandir `Pacotes de Sistemas` você verá a data de fechamento de todos os pacotes. ## 📦 Simulação de Cópia Com o grupo selecionado, devemos dar sequencia ao processo de simulação de cópia. ![Grupo](../img/grupo.PNG) Vá no menu `Outros > Fábrica > Pacotes de sistemas`, expanda o campo `Pacotes de Sistemas`, clique com o botão direito na Release desejada **(esteja atento as datas!)** e clique em `Liberação de Pacotes`. Conforme imagem abaixo: ![Liberacao](../img/liberacao.png) Após esse processo clique em `Simular Cópia` e na próxima janela clique novamente em `Simular Cópia`. Aguarde enquanto o processo verifica se possui erros. ![Liberacao](../img/simular.PNG) #### ⚠️ Caso a simulação da cópia apresente erros nos pacotes, deverá ser aberto chamado para cada módulo com os seus erros conforme na imagem a seguir: ![Chamado](../img/chamado.PNG) ## 📦 Cópia da Release Se a simulação finalizar sem erros, deverá ser efetuado a cópia, clicando no botão `Copiar Produção` ![copia](../img/copia.png) #### ⚠️ Será solicitado se deseja definir como "Em publicação", porém durante as cópias da semana **NÃO** deve ser definido, somente na última cópia, na quinta-feira, para finalizar o fechamento da release. ![copia2](../img/executar_copia_release_atendenet.png) ![copia3](../img/tela_finalizacao_copia.png) ![copia4](../img/copia_ok.png) ## 📦 Teste de Pacotes No dia do fechamento, a última cópia deverá ser marcada como **Em Publicação**. Após a finalização, deverá ser realizado o teste dos pacotes da Release, acessando o seguinte endereço: https://origens-qualidade-atendenet56.ipm.com.br:7443/release/atualiza/atualiza_versao.php?cidade=copia_release Clicar no menu `Atualização do banco de dados` conforme imagem abaixo: ![testar1](../img/testar1.png) Selecionar todos, ativar a caixa de seleção `Executar pacotes em transação única` e clicar em `Executar Atualização` no final da página, conforme imagem abaixo: ![testar2](../img/testar2.png) Caso apresente erro em algum pacote, deverá ser aberto um chamado para corrigir o erro. Assim que o erro for corrigido, deverão nos informar para que seja possível inserir o chamado no grupo da release em questão. Após isso, os processo de **Simulação de Cópia** e **Copiar Produção** definindo como **"Em Publicação"** deverão ser realizados novamente. ## 📦 Publicação manual no repositório SVN ### ⚠️ Este processo somente deverá ser executado APÓS o teste dos pacotes em transação única! Neste processo iremos obter a lista de arquivos para a publicação, editar a lista para adicionar ao SVN, adicionar os arquivos no SVN, comitar o processo e realizar a atualização da release nos ambientes de testes. 🔹Obter a lista de arquivos para publicação: Acesse o servidor linux Apache da release via SSH: ``` Endereço: 192.168.13.23 Porta: 9012 Usuário: pub_release Senha: ******* ``` ⚠️ TEMPORARIAMENTE a senha do usuário pub_release está registrada no https://datacenter.atende.net/, dentro do equipamento JITSI de Gravataí 🔹Acessar a pasta da WorkCopy: ``` $ cd /var/www/html/svn-atendenet56.ipm.com.br/origens-qualidade-atendenet56.ipm.com.br/release/ ``` 🔹Exportar lista de arquivos para txt: ``` $ svn status | grep ? > /home/pub_release/release_122022.txt ``` **Alterar o nome do arquivo conforme a necessidade* Para fazer o download do arquivo para sua máquina local, utilize o Prompt de comando DOS da sua máquina, acesse sua pasta onde você possui o executável `pscp` e execute o comando abaixo. ``` $ pscp -P 9012 pub_release@192.168.13.23:/home/pub_release/release_122022.txt "C:\ipm" ``` Edite o arquivo com o Notepad++ e remova as seguintes linhas: 🔹Remover da lista todos as linhas com os arquivos: ``` _config.*.inc ``` 🔹Remover da lista tudo que estiver nas pastas: ``` - imagem/tmp/... - imagem/brasao/... - imagem/marca/... - temp/... - static/... - estrutura/js/mensagem_sistema/... - estrutura/js/icones_fa.json - atualiza/atualiza_versao_config.inc Obs: Não necessariamente estarão no início do caminho ``` 🔹Adicionar ao começo de cada linha o comando svn add ... ``` Exemplo: svn add include/wpc/model/wpc_class_model_bo_process_processo_wpc.inc svn add include/wun/model/wun_class_model_log_familia_formatacao.inc svn add include/wun/model/wun_class_model_log_familia_formatacao_formatado.inc svn add include/wun/model/wun_class_model_log_familia_formatacao_historico.inc svn add include/wun/model/wun_class_model_tribunal_contas.inc ``` Separar as linhas em grupos de 30 e após, copiar e colar no servidor Apache. Dessa forma será adicionado os arquivos para posteriormente fazer o Commit. 🔹Para verificar se não ficou nenhuma linha esquecida, execute o seguinte comando que deverá mostrar as linhas que não foram adicionadas, deverá mostrar somente as linhas que foram excluídas do arquivo txt: ``` $ svn status | grep ?| more ``` 🔹Para finalizar o processo de Publicação da Release, execute o Commit para enviar os arquivos ao repositório: ``` $ svn commit -m "Publicacao_Release_Manual" ``` Aguarde e ao final será informada a revisão da Release Publicada. ![exemplo_revisao_svn](../img/exemplo_revisao_svn.png) Uma observação importante é que a publicação do SVN pelo dicionário está desativada, então ao clicar em publicar, aparecerá a mensagem abaixo: ![publicar_git](../img/publicar_git.png) Onde deve-se seguir com a publicação da release através do dicionário "Publicar Produção", para que a release seja publicada no Git. ## 📦 Publicação no GIT, via dicionário Após confirmar a mensagem acima, siga os passos listados para realizar a publicação no GIT: ![publicar_git1](../img/publicar_git_clicar_nao.png) Ao exibir a mensagem acima, clique em não, pois será a primeira publicação via dicionario! ![publicar_git2](../img/publicar_git_buscando_lista.png) Confirme o commit dos arquivos: ![publicar_git3](../img/publicar_git_confirmar_commit.png) ![publicar_git4](../img/publicar_git_confirmar_commit2.png) Após isso, aguarde até que retorne a mensagem com a confirmação da publicação, conforme exemplo abaixo: ![publicar_git5](../img/publicar_git_mensagem_ok.png) ## 📦 Fechar pacote no Dicionário Neste momento, a relase já estará publicada no SVN e no GIT, ficando pendente o fechamento do pacote. Para que nesse momento, as liberações possam ocorrer normalmente em operação. Para realizar este passo, será necessário salvar o numero do pacote, a revisão SVN e a hash GIT! A revisão GIT estará informado no campo de manutenção do pacote, na aba de repositórios: ![pegar_hash_git](../img/pegar_hash_git.png) Após salvar as informações necessárias, vá na rotina Outros > Supervisor > Registar Publicação Prod. Release. Preencha os campos conforme abaixo: ![registra_publicacao](../img/registrar_publicacao_svn_git_saude.png) ### ⚠️ Caso não consiga realizar a publicação pelo Dicionário, utilize este [`link`](./troubleshooting_fechamento_release.md)