Your SlideShare is downloading. ×
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Deployment & PHP

620
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
620
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Deployment & PHP o caminho para a automatização Renan de Lima ProPHP - Abril / 2013
  • 2. Agenda● Definições● Conceitos● Recomendações Deployment & PHP ProPHP 2013 / Abril
  • 3. O que éDeployment & PHP ProPHP 2013 / Abril
  • 4. O que éDisponibilizar software para utilização! Deployment & PHP ProPHP 2013 / Abril
  • 5. O que não é Deployment & PHP ProPHP 2013 / Abril
  • 6. O que não é● Validação Deployment & PHP ProPHP 2013 / Abril
  • 7. O que não é● Validação● Teste Deployment & PHP ProPHP 2013 / Abril
  • 8. O que não é● Validação● Teste● Empacotamento Deployment & PHP ProPHP 2013 / Abril
  • 9. Pré-requisitos Deployment & PHP ProPHP 2013 / Abril
  • 10. Pré-requisitos● Software Deployment & PHP ProPHP 2013 / Abril
  • 11. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus... Deployment & PHP ProPHP 2013 / Abril
  • 12. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software Deployment & PHP ProPHP 2013 / Abril
  • 13. Pré-requisitos● Software – git, svn, zip, phar, composer, pear, pyrus...● Conhecer o software – Configurações necessárias Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. Você conhece seu software? Deployment & PHP ProPHP 2013 / Abril
  • 17. Você conhece seu software?● Configurações Deployment & PHP ProPHP 2013 / Abril
  • 18. Você conhece seu software?● Configurações – As que não variam Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. 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. 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. Você conhece seu ambiente? Deployment & PHP ProPHP 2013 / Abril
  • 24. Você conhece seu ambiente?● Instâncias Deployment & PHP ProPHP 2013 / Abril
  • 25. Você conhece seu ambiente?● Instâncias – Uma, várias... ● Se são várias, possui cluster manager? Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. Visão Geral AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  • 29. Visão Geral AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  • 30. Visão Geral ? AmbienteSoftware Deployment & PHP ProPHP 2013 / Abril
  • 31. Visão Geral 1 - Captura Ambiente ajustesSoftware Deployment & PHP ProPHP 2013 / Abril
  • 32. Visão Geral 1 - Captura Ambiente ajustesSoftware 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 33. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 34. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 35. Como é o seu deploy? Deployment & PHP ProPHP 2013 / Abril
  • 36. Como é o seu deploy?● Geração de pacote/release Deployment & PHP ProPHP 2013 / Abril
  • 37. Como é o seu deploy?● Geração de pacote/release – Conceito não existe? Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. 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. 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. 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. 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. 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. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 46. Simplifique! errar é humano Deployment & PHP ProPHP 2013 / Abril
  • 47. Dicas para Simplificação Deployment & PHP ProPHP 2013 / Abril
  • 48. Dicas para Simplificação● Construa releases utilizáveis Deployment & PHP ProPHP 2013 / Abril
  • 49. Dicas para Simplificação● Construa releases utilizáveis● Deixe configurável somente o necessário Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. Automatize! errar é humano Deployment & PHP ProPHP 2013 / Abril
  • 53. Dicas para Automatização Deployment & PHP ProPHP 2013 / Abril
  • 54. Dicas para Automatização● Simplifique o deploy Deployment & PHP ProPHP 2013 / Abril
  • 55. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente Deployment & PHP ProPHP 2013 / Abril
  • 56. Dicas para Automatização● Simplifique o deploy● Gerencie releases elegantemente – Evite diversificar as configurações entre elas Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. 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. 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. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 62. Metaa rotina automática deve ser capaz de manipular todos os release em qualquer ambiente Deployment & PHP ProPHP 2013 / Abril
  • 63. Visão Geral 3 - Envio 1 - Captura Ambiente ajustesSoftware 4 - Intervenções 2 - Configuração Deployment & PHP ProPHP 2013 / Abril
  • 64. Features Básicas● Deploy● Redeploy● Rollback● Remove Deployment & PHP ProPHP 2013 / Abril
  • 65. Ferramentas● Shell script● Capistrano● PHP Cloud● Zend Deployment● OpenShift● FortRabbit● ... Deployment & PHP ProPHP 2013 / Abril
  • 66. As escolhas são suas... Deployment & PHP ProPHP 2013 / Abril
  • 67. ... as consequências também! Deployment & PHP ProPHP 2013 / Abril
  • 68. para refletir... Deployment & PHP ProPHP 2013 / Abril
  • 69. para refletir...● Não existe automatização infalível Deployment & PHP ProPHP 2013 / Abril
  • 70. para refletir...● Não existe automatização infalível● Seguir padrões é saudável Deployment & PHP ProPHP 2013 / Abril
  • 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. 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. 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. 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. Obrigado! Renan de Limarenandelima@gmail.comhttp://github.com/renanbr Deployment & PHP ProPHP 2013 / Abril

×