Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Deploy automático com PHP

Deploy automático com PHP

Palestra no youtube: https://www.youtube.com/watch?v=NB-vm66e0Kw

Esta palestra aborda técnicas de deploy que automatizam o processo e garantem uma segurança na entrega, sua implementação em processos de integração contínua, suas fases, configurações, ferramentas e cuidados. Também aborda como podemos inserir um sistema legado na integração contínua, passos e desafios que normalmente as novas equipes apresentam neste novo fluxo de trabalho

Avatar for Signorini

Signorini

August 20, 2016

More Decks by Signorini

Other Decks in Programming

Transcript

  1. Felipe Klerk Signorini Analista Sênior - NorteMKT Soluções em arquitetura,

    nível de infra estrutura e desenvolvimento. DevOps
  2. O que é deploy “Jogar código para o servidor” Instalar

    o software em um ambiente. - Transferência de arquivos - Instalação manual - Configuração de serviços
  3. 1. Qual o problema do FTP ➔ Sincronização git e

    servidor ➔ Downtime ➔ Army delivery Prepare-se amanhã iremos fazer deploy. ➔ RollBack = 2 horas fora do ar ➔ Sobreposição de código Tenho certeza que já tinha resolvido… ➔ LoadBalances/Autoscaling
  4. Continuos integration Práticas de automatização de testes unitários e gerenciamento

    no versionamento de código. Continuos Delivery Práticas para automatizaçao de entrega em ambientes para validação no negócio. Continuos Deployment Automatização de entrega e processos no ambiente de produção.
  5. Develop Stage UAT - Acceptance Test Production GIT como controle

    tag “2.1” tag “1.9” tag “2.0” tag “1.9” Branch - Dev Branch - Master Branch - UAT Branch - Master
  6. Copiar os arquivos de para Limpar a pasta de cache

    Reiniciar o php-fpm Enviar um push Para o New Relic Automatização git push origin master
  7. Como se faz isso Forge/Envoyer Serviço Saas AWS CodeDeploy Funciona

    somente na amazon Deployer PHP Biblioteca PHP
  8. AWS Code Deploy version: 0.0 os: linux files: - source:

    / destination: /var/www/ativo.com/public_html - source: codedeploy/configs/config.php destination: /var/www/ativo.com/ permissions: - object: /var/www/ativo.com/public_html owner: application group: application hooks: BeforeInstall: - location: codedeploy/scripts/app_dependencies timeout: 300 runas: root ApplicationStart: - location: codedeploy/scripts/app_start timeout: 300 runas: root - Integração fácil em ambiente AWS - Integração Github e BitBucket - Rápida instalação e implementação - Monitoramento - Controle de acesso - HealthChecks
  9. PHP Deployer require 'recipe/symfony.php'; // Configuração do servidor server('prod', ‘ec2’,

    22) ->user('ec2-user') ->forwardAgent() // por chave ->stage('production') ->env('deploy_path', '/var/www/ativo.com/'); set('repository', '[email protected]:org/ativo.git'); - Instalação via Composer - Tarefas paralelas - Escrito em PHP - Gratuito $ dep deploy production