Deployment & PHP o caminho para a automatização       Renan de Lima        ProPHP - Abril / 2013
Agenda●   Definições●   Conceitos●   Recomendações                 Deployment & PHP       ProPHP                          ...
O que éDeployment & PHP       ProPHP                   2013 / Abril
O que éDisponibilizar software para utilização!                Deployment & PHP          ProPHP                           ...
O que não é  Deployment & PHP       ProPHP                     2013 / Abril
O que não é●   Validação                  Deployment & PHP       ProPHP                                     2013 / Abril
O que não é●   Validação●   Teste                  Deployment & PHP       ProPHP                                     2013 ...
O que não é●   Validação●   Teste●   Empacotamento                  Deployment & PHP       ProPHP                         ...
Pré-requisitos   Deployment & PHP       ProPHP                      2013 / Abril
Pré-requisitos●   Software                  Deployment & PHP       ProPHP                                     2013 / Abril
Pré-requisitos●   Software    –   git, svn, zip, phar, composer, pear, pyrus...                        Deployment & PHP   ...
Pré-requisitos●   Software    –   git, svn, zip, phar, composer, pear, pyrus...●   Conhecer o software                    ...
Pré-requisitos●   Software    –   git, svn, zip, phar, composer, pear, pyrus...●   Conhecer o software    –   Configuraçõe...
Pré-requisitos●   Software    –   git, svn, zip, phar, composer, pear, pyrus...●   Conhecer o software    –   Configuraçõe...
Pré-requisitos●   Software    –   git, svn, zip, phar, composer, pear, pyrus...●   Conhecer o software    –   Configuraçõe...
Você conhece seu software?          Deployment & PHP       ProPHP                             2013 / Abril
Você conhece seu software?●   Configurações                    Deployment & PHP       ProPHP                              ...
Você conhece seu software?●   Configurações    –   As que não variam                      Deployment & PHP       ProPHP   ...
Você conhece seu software?●   Configurações    –   As que não variam        ●   Exemplo: diretórios de módulos, views...  ...
Você conhece seu software?●   Configurações    –   As que não variam        ●   Exemplo: diretórios de módulos, views...  ...
Você conhece seu software?●   Configurações    –   As que não variam        ●   Exemplo: diretórios de módulos, views...  ...
Você conhece seu software?●   Configurações    –   As que não variam        ●   Exemplo: diretórios de módulos, views...  ...
Você conhece seu ambiente?          Deployment & PHP       ProPHP                             2013 / Abril
Você conhece seu ambiente?●   Instâncias                 Deployment & PHP       ProPHP                                    ...
Você conhece seu ambiente?●   Instâncias    –   Uma, várias...        ●   Se são várias, possui cluster manager?          ...
Você conhece seu ambiente?●   Instâncias    –   Uma, várias...        ●   Se são várias, possui cluster manager?●   Admini...
Você conhece seu ambiente?●   Instâncias    –   Uma, várias...        ●   Se são várias, possui cluster manager?●   Admini...
Visão Geral                                AmbienteSoftware             Deployment & PHP                  ProPHP          ...
Visão Geral                                AmbienteSoftware             Deployment & PHP                  ProPHP          ...
Visão Geral               ?                                AmbienteSoftware             Deployment & PHP                  ...
Visão Geral           1 - Captura                                            Ambiente                              ajustes...
Visão Geral           1 - Captura                                            Ambiente                              ajustes...
Visão Geral                                            3 - Envio           1 - Captura                                    ...
Visão Geral                                            3 - Envio           1 - Captura                                    ...
Como é o seu deploy?       Deployment & PHP       ProPHP                          2013 / Abril
Como é o seu deploy?●   Geração de pacote/release                  Deployment & PHP       ProPHP                          ...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?                       Deployment & PHP      ...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?           ...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?●   Ajustes...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?●   Ajustes...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?●   Ajustes...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?●   Ajustes...
Como é o seu deploy?●   Geração de pacote/release    –   Conceito não existe?    –   Geração é uma ação manual?●   Ajustes...
Como é o seu deploy?●   Geração de pacote    –   Conceito de pacote não existe?    –   Geração do pacote é uma ação manual...
Visão Geral                                            3 - Envio           1 - Captura                                    ...
Simplifique! errar é humano   Deployment & PHP       ProPHP                      2013 / Abril
Dicas para Simplificação         Deployment & PHP       ProPHP                            2013 / Abril
Dicas para Simplificação●   Construa releases utilizáveis                    Deployment & PHP       ProPHP                ...
Dicas para Simplificação●   Construa releases utilizáveis●   Deixe configurável somente o necessário                    De...
Dicas para Simplificação●   Construa releases utilizáveis●   Deixe configurável somente o necessário●   Exija menos custom...
Dicas para Simplificação●   Construa releases utilizáveis●   Deixe configurável somente o necessário●   Exija menos custom...
Automatize! errar é humano   Deployment & PHP       ProPHP                      2013 / Abril
Dicas para Automatização         Deployment & PHP       ProPHP                            2013 / Abril
Dicas para Automatização●   Simplifique o deploy                   Deployment & PHP       ProPHP                          ...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente                   Deployment & PHP    ...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente    –   Evite diversificar as configura...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente    –   Evite diversificar as configura...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente    –   Evite diversificar as configura...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente    –   Evite diversificar as configura...
Dicas para Automatização●   Simplifique o deploy●   Gerencie releases elegantemente    –   Evite diversificar as configura...
Visão Geral                                            3 - Envio           1 - Captura                                    ...
Metaa rotina automática deve ser capaz de manipular      todos os release em qualquer ambiente                  Deployment...
Visão Geral                                            3 - Envio           1 - Captura                                    ...
Features Básicas●   Deploy●   Redeploy●   Rollback●   Remove                    Deployment & PHP       ProPHP             ...
Ferramentas●   Shell script●   Capistrano●   PHP Cloud●   Zend Deployment●   OpenShift●   FortRabbit●   ...               ...
As escolhas são suas...       Deployment & PHP       ProPHP                          2013 / Abril
... as consequências também!          Deployment & PHP         ProPHP                               2013 / Abril
para refletir...    Deployment & PHP       ProPHP                       2013 / Abril
para refletir...●   Não existe automatização infalível                   Deployment & PHP          ProPHP                 ...
para refletir...●   Não existe automatização infalível●   Seguir padrões é saudável                   Deployment & PHP    ...
para refletir...●   Não existe automatização infalível●   Seguir padrões é saudável    –   Em situações problemáticas, na ...
para refletir...●   Não existe automatização infalível●   Seguir padrões é saudável    –   Em situações problemáticas, na ...
para refletir...●   Não existe automatização infalível●   Seguir padrões é saudável    –   Em situações problemáticas, na ...
para refletir...●   Não existe automatização infalível●   Seguir padrões é saudável    –   Em situações problemáticas, na ...
Obrigado!     Renan de Limarenandelima@gmail.comhttp://github.com/renanbr      Deployment & PHP          ProPHP           ...
Próximos SlideShares
Carregando em…5
×

Deployment & PHP

967 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
967
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
5
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Deployment & PHP

  1. 1. Deployment & PHP o caminho para a automatização Renan de Lima ProPHP - Abril / 2013
  2. 2. Agenda● Definições● Conceitos● Recomendações Deployment & PHP ProPHP 2013 / Abril
  3. 3. O que éDeployment & PHP ProPHP 2013 / Abril
  4. 4. O que éDisponibilizar software para utilização! Deployment & PHP ProPHP 2013 / Abril
  5. 5. O que não é Deployment & PHP ProPHP 2013 / Abril
  6. 6. O que não é● Validação Deployment & PHP ProPHP 2013 / Abril
  7. 7. O que não é● Validação● Teste Deployment & PHP ProPHP 2013 / Abril
  8. 8. O que não é● Validação● Teste● Empacotamento Deployment & PHP ProPHP 2013 / Abril
  9. 9. Pré-requisitos Deployment & PHP ProPHP 2013 / Abril
  10. 10. Pré-requisitos● Software Deployment & PHP ProPHP 2013 / Abril
  11. 11. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus... Deployment & PHP ProPHP 2013 / Abril
  12. 12. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software Deployment & PHP ProPHP 2013 / Abril
  13. 13. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software – Configurações necessárias Deployment & PHP ProPHP 2013 / Abril
  14. 14. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software – Configurações necessárias● Conhecer o ambiente destino Deployment & PHP ProPHP 2013 / Abril
  15. 15. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software – Configurações necessárias● Conhecer o ambiente destino – Quantos são, onde estão, permissões... Deployment & PHP ProPHP 2013 / Abril
  16. 16. Você conhece seu software? Deployment & PHP ProPHP 2013 / Abril
  17. 17. Você conhece seu software?● Configurações Deployment & PHP ProPHP 2013 / Abril
  18. 18. Você conhece seu software?● Configurações – As que não variam Deployment & PHP ProPHP 2013 / Abril
  19. 19. Você conhece seu software?● Configurações – As que não variam ● Exemplo: diretórios de módulos, views... Deployment & PHP ProPHP 2013 / Abril
  20. 20. Você conhece seu software?● Configurações – As que não variam ● Exemplo: diretórios de módulos, views... – As que variam conforme o ambiente Deployment & PHP ProPHP 2013 / Abril
  21. 21. Você conhece seu software?● Configurações – As que não variam ● Exemplo: diretórios de módulos, views... – As que variam conforme o ambiente ● Exemplo: credenciais de banco, cache... Deployment & PHP ProPHP 2013 / Abril
  22. 22. Você conhece seu software?● Configurações – As que não variam ● Exemplo: diretórios de módulos, views... – As que variam conforme o ambiente ● Exemplo: credenciais de banco, cache... ● Precisam ser parametrizadas no deploy! Deployment & PHP ProPHP 2013 / Abril
  23. 23. Você conhece seu ambiente? Deployment & PHP ProPHP 2013 / Abril
  24. 24. Você conhece seu ambiente?● Instâncias Deployment & PHP ProPHP 2013 / Abril
  25. 25. Você conhece seu ambiente?● Instâncias – Uma, várias... ● Se são várias, possui cluster manager? Deployment & PHP ProPHP 2013 / Abril
  26. 26. Você conhece seu ambiente?● Instâncias – Uma, várias... ● Se são várias, possui cluster manager?● Administração Deployment & PHP ProPHP 2013 / Abril
  27. 27. Você conhece seu ambiente?● Instâncias – Uma, várias... ● Se são várias, possui cluster manager?● Administração – Que permissões você possui no servidor? ● Escrita/leitura, execução de binários, acesso à internet... Deployment & PHP ProPHP 2013 / Abril
  28. 28. Visão Geral AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  29. 29. Visão Geral AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  30. 30. Visão Geral ? AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  31. 31. Visão Geral 1 - Captura Ambiente ajustesSoftware Deployment & PHP ProPHP 2013 / Abril
  32. 32. Visão Geral 1 - Captura Ambiente ajustesSoftware 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  33. 33. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  34. 34. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  35. 35. Como é o seu deploy? Deployment & PHP ProPHP 2013 / Abril
  36. 36. Como é o seu deploy?● Geração de pacote/release Deployment & PHP ProPHP 2013 / Abril
  37. 37. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? Deployment & PHP ProPHP 2013 / Abril
  38. 38. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual? Deployment & PHP ProPHP 2013 / Abril
  39. 39. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual?● Ajustes do software Deployment & PHP ProPHP 2013 / Abril
  40. 40. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual?● Ajustes do software – Há verificações manuais no código fonte? Deployment & PHP ProPHP 2013 / Abril
  41. 41. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual?● Ajustes do software – Há verificações manuais no código fonte? – Há exagero de configurações? Deployment & PHP ProPHP 2013 / Abril
  42. 42. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual?● Ajustes do software – Há verificações manuais no código fonte? – Há exagero de configurações?● Envio do código fonte para o servidor Deployment & PHP ProPHP 2013 / Abril
  43. 43. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? – Geração é uma ação manual?● Ajustes do software – Há verificações manuais no código fonte? – Há exagero na quantidade de configurações?● Envio do código fonte para o servidor – É um ser humano quem faz o envio dos arquivos? Deployment & PHP ProPHP 2013 / Abril
  44. 44. Como é o seu deploy?● Geração de pacote – Conceito de pacote não existe? – Geração do pacote é uma ação manual?● Ajustes do software – Há verificações manuais no código fonte? – Há exagero na quantidade de configurações?● Envio do código fonte para o servidor – É um ser humano quem faz o envio dos arquivos? Deployment & PHP ProPHP 2013 / Abril
  45. 45. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  46. 46. Simplifique! errar é humano Deployment & PHP ProPHP 2013 / Abril
  47. 47. Dicas para Simplificação Deployment & PHP ProPHP 2013 / Abril
  48. 48. Dicas para Simplificação● Construa releases utilizáveis Deployment & PHP ProPHP 2013 / Abril
  49. 49. Dicas para Simplificação● Construa releases utilizáveis● Deixe configurável somente o necessário Deployment & PHP ProPHP 2013 / Abril
  50. 50. Dicas para Simplificação● Construa releases utilizáveis● Deixe configurável somente o necessário● Exija menos customização do ambiente Deployment & PHP ProPHP 2013 / Abril
  51. 51. Dicas para Simplificação● Construa releases utilizáveis● Deixe configurável somente o necessário● Exija menos customização do ambiente – Extensões, bibliotecas... – php.ini, variáveis de ambiente... – Binários, executáveis... Deployment & PHP ProPHP 2013 / Abril
  52. 52. Automatize! errar é humano Deployment & PHP ProPHP 2013 / Abril
  53. 53. Dicas para Automatização Deployment & PHP ProPHP 2013 / Abril
  54. 54. Dicas para Automatização● Simplifique o deploy Deployment & PHP ProPHP 2013 / Abril
  55. 55. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente Deployment & PHP ProPHP 2013 / Abril
  56. 56. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas Deployment & PHP ProPHP 2013 / Abril
  57. 57. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas – Disponibilize-os em protocolos padrões Deployment & PHP ProPHP 2013 / Abril
  58. 58. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas – Disponibilize-os em protocolos padrões ● Controle de versão, gerenciador de pacotes ... Deployment & PHP ProPHP 2013 / Abril
  59. 59. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas – Disponibilize-os em protocolos padrões ● Controle de versão, gerenciador de pacotes ...● Deploy deve estar fora do software Deployment & PHP ProPHP 2013 / Abril
  60. 60. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas – Disponibilize-os em protocolos padrões ● Controle de versão, gerenciador de pacotes ...● Deploy deve estar fora do software – O ambiente pode mudar Deployment & PHP ProPHP 2013 / Abril
  61. 61. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  62. 62. Metaa rotina automática deve ser capaz de manipular todos os release em qualquer ambiente Deployment & PHP ProPHP 2013 / Abril
  63. 63. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  64. 64. Features Básicas● Deploy● Redeploy● Rollback● Remove Deployment & PHP ProPHP 2013 / Abril
  65. 65. Ferramentas● Shell script● Capistrano● PHP Cloud● Zend Deployment● OpenShift● FortRabbit● ... Deployment & PHP ProPHP 2013 / Abril
  66. 66. As escolhas são suas... Deployment & PHP ProPHP 2013 / Abril
  67. 67. ... as consequências também! Deployment & PHP ProPHP 2013 / Abril
  68. 68. para refletir... Deployment & PHP ProPHP 2013 / Abril
  69. 69. para refletir...● Não existe automatização infalível Deployment & PHP ProPHP 2013 / Abril
  70. 70. para refletir...● Não existe automatização infalível● Seguir padrões é saudável Deployment & PHP ProPHP 2013 / Abril
  71. 71. para refletir...● Não existe automatização infalível● Seguir padrões é saudável – Em situações problemáticas, na maioria das vezes, você não está sozinho. A comunidade pode te ajudar Deployment & PHP ProPHP 2013 / Abril
  72. 72. para refletir...● Não existe automatização infalível● Seguir padrões é saudável – Em situações problemáticas, na maioria das vezes, você não está sozinho. A comunidade pode te ajudar● Deixe seu orgulho de lado Deployment & PHP ProPHP 2013 / Abril
  73. 73. para refletir...● Não existe automatização infalível● Seguir padrões é saudável – Em situações problemáticas, na maioria das vezes, você não está sozinho. A comunidade pode te ajudar● Deixe seu orgulho de lado – Você pode ter tomado uma má decisão Deployment & PHP ProPHP 2013 / Abril
  74. 74. para refletir...● Não existe automatização infalível● Seguir padrões é saudável – Em situações problemáticas, na maioria das vezes, você não está sozinho. A comunidade pode te ajudar● Deixe seu orgulho de lado – Você pode ter tomado uma má decisão – Proponha melhorias Deployment & PHP ProPHP 2013 / Abril
  75. 75. Obrigado! Renan de Limarenandelima@gmail.comhttp://github.com/renanbr Deployment & PHP ProPHP 2013 / Abril

×