Successfully reported this slideshow.
Your SlideShare is downloading. ×

Gerenciando sites em WordPress de forma eficiente: do deploy à manutenção

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Traduções no WordPress
Traduções no WordPress
Loading in …3
×

Check these out next

1 of 68 Ad

Gerenciando sites em WordPress de forma eficiente: do deploy à manutenção

Download to read offline

A cada ano aumenta a quantidade de profissionais que além de criar e desenvolver o site em WordPress, precisam fazer a configuração, instalação e manutenção, tarefas que podem consumir um tempo significativo da sua semana, e que certamente pioram à medida em que o número de projetos cresce. Esta palestra apresenta uma alternativa para a gestão de múltiplos sites em WordPress, usando uma única instalação e sem Multisite, plugins ou outros serviços (que em muitos casos são pagos). Combinando wp-cli para administração e git para deploy automático, reduz-se o tempo gasto nas tarefas de manutenção, resultando numa economia significativa de tempo, incluindo atualização do core e plugins.
Apresentação realizada no WordCamp São Paulo 2016.

A cada ano aumenta a quantidade de profissionais que além de criar e desenvolver o site em WordPress, precisam fazer a configuração, instalação e manutenção, tarefas que podem consumir um tempo significativo da sua semana, e que certamente pioram à medida em que o número de projetos cresce. Esta palestra apresenta uma alternativa para a gestão de múltiplos sites em WordPress, usando uma única instalação e sem Multisite, plugins ou outros serviços (que em muitos casos são pagos). Combinando wp-cli para administração e git para deploy automático, reduz-se o tempo gasto nas tarefas de manutenção, resultando numa economia significativa de tempo, incluindo atualização do core e plugins.
Apresentação realizada no WordCamp São Paulo 2016.

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Viewers also liked (20)

Advertisement

Recently uploaded (20)

Gerenciando sites em WordPress de forma eficiente: do deploy à manutenção

  1. 1. Gerenciando sites em WordPress de forma eficiente: do deploy à manutenção Daniel Kossmann Ferraz WordCamp São Paulo 2016 | 10.DEZ.2016
  2. 2. Daniel Kossmann Ferraz daniel@spirallab.com.br www.spirallab.com.br
  3. 3. Desde 2009 <3 com WordPress
  4. 4. Criar sites no WordPress é divertido
  5. 5. Deploy e manutenção de vários sites em WordPress leva muito tempo (e não é divertido)
  6. 6. Minha jornada criando sites em WordPress
  7. 7. Workflow LOCAL → TEST → PROD
  8. 8. Deploy LOCAL → TEST LOCAL → PROD
  9. 9. 1. Abria FileZilla 2. Conectava ao servidor 3. Entrava na pasta do site 4. Seleciona os arquivos alterados 5. Enviava os arquivos desta pasta 6. Entrava na outra pasta 7. Seleciona os arquivos alterados 8. Enviava os arquivos desta pasta (…)
  10. 10. ~10min
  11. 11. E se der problema?
  12. 12. header.php header.bkp.20120102.php header.bkp.20120203.php header.bkp.20120203.02.php header.bkp.20120203.03.php header.bkp.20120205.php header.bkp.20120207.php header.bkp.20120304.php header.bkp.20120505.php
  13. 13. Problemas ● Falta de Versionamento ● Trabalhoso identificar as alterações ● “Bloqueio” do arquivo quando alguém da equipe edita ele
  14. 14. Sistema de controle de versão (Git, eu escolho você!) ● Ver o que você alterou ● Poder restaurar alterações ● Sincronizar o trabalho em equipe ● Visualizar histórico das alterações
  15. 15. Deploy LOCAL → TEST LOCAL → PROD
  16. 16. 1. Conectava no servidor pelo terminal 2. Entrava na pasta do tema do site (clone de um repositório Git) 3. Atualizava o repositório
  17. 17. ~2min
  18. 18. 2 projetos por mês com 15 envios por semana (11 DEV e 4 PROD) por projeto
  19. 19. SFTP: ~240hrs/ano Git: ~48hrs/ano
  20. 20. "Automatizar isto não é" Yoda, filósofo da automatização e mestre Jedi nas horas vagas
  21. 21. Git Hooks Disparar scripts personalizados quando certas ações importantes ocorrerem
  22. 22. Git Hooks A cada envio (push): LOCAL → TEST
  23. 23. Git Hooks A cada envio (push) com tag: LOCAL → PROD
  24. 24. 0s para DEV (automático) menos de 1min para PROD (~42s)
  25. 25. 2 projetos por mês com 15 envios por semana (11 DEV e 4 PROD) por projeto
  26. 26. SFTP: ~96hrs/ano Git: ~48hrs/ano Git Hooks: ~4,5hrs/ano
  27. 27. Automatizar rulez!
  28. 28. Outras vantagens
  29. 29. Diminuir a possibilidade de erros (humano) Todos os arquivos do projeto sincronizados
  30. 30. Melhorar a segurança Desenvolvedores não precisam de acesso ao servidor
  31. 31. Automatizar a remoção de arquivos somente de desenvolvimento readme.*, SCSS/, Gruntfile, node_modules/,bower_components/, ...
  32. 32. Deploy automatizado
  33. 33. Agora a manutenção das instalações do WordPress
  34. 34. Processo de atualização do WordPress: 1. Acessa o /wp-admin do site 2. Usa acessos do gerenciador de senhas 3. Abre tela de atualização do WP 4. Atualiza tudo 5. Testa para ver se não quebrou nada
  35. 35. ~2min para atualizar o WordPress + ~1min para teste mínimo do site x dois ambientes (TEST e PROD) = ~6min (sem erros)
  36. 36. WP 1 WP 2 WP 3 WP 4
  37. 37. WP 11 WP 12 WP 13 WP 14 WP 15 WP 16 WP 17 WP 18 WP 19
  38. 38. TEST: WP 11 TEST: WP 12 TEST: WP 13 TEST: WP 14 TEST: WP 15 TEST: WP 16 TEST: WP 17 TEST: WP 18 TEST: WP 19 PROD: WP 11 PROD: WP 12 PROD: WP 13 PROD: WP 14 PROD: WP 15 PROD: WP 16 PROD: WP 17 PROD: WP 18 PROD: WP 19
  39. 39. ai meu corassaum
  40. 40. Soluções mais conhecidas
  41. 41. WordPress Multisite Pontos negativos: ● Segurança: ○ Ambiente único para os arquivos ○ Um banco de dados ● Importação/exportação de sites isolados é mais difícil ○ Clientes/projetos entram e saem
  42. 42. Plugins ( ManageWP / InfiniteWP / Calypso / ... ) Pontos negativos: ● Dependência de serviços de terceiros ● Custo ● Segurança: ○ Comunicação externa ○ Nem sempre tudo é transparente
  43. 43. Outra maneira?
  44. 44. Solução inspirada no WordPress empacotado (.deb) pelo Debian ( https://wiki.debian.org/WordPress )
  45. 45. Mesma instalação do WordPress para vários sites isolados (WordPress Farm)
  46. 46. Carrega instalação WordPress Farm ( instalação original, apenas com wp-config.php modificado ) Carrega arquivos específicos do Site ( contém wp-config.php simplificado e wp-content/ ) Acesso ao Site
  47. 47. Sites: Plugins A pasta de plugins do site contém apenas links simbólicos para os plugins do WordPress Farm
  48. 48. Atualizando o WordPress: wp-cli no WordPress Farm
  49. 49. WordPress Farm só é acessível pelo terminal (mais segurança)
  50. 50. Requisitos / Limitações
  51. 51. Necessário ter controle do Servidor
  52. 52. Uso do terminal para manutenção e gerenciamento de temas e plugins ( usuários: role = editor)
  53. 53. Mesma versão (core/plugins) em todos sites no WordPress Farm
  54. 54. Novo processo de atualização do WordPress: 1. Abre o terminal e conecta no servidor 2. wp-cli para atualizar o Farm do TEST 3. Testa para ver se não quebrou nada 4. wp-cli para atualizar o Farm do PROD 5. Testa para ver se não quebrou nada
  55. 55. ~30s para atualizar a base + ~1min para teste mínimo do site x dois ambientes (TEST e PROD) = ~3min (sem erros)
  56. 56. 30 sites (TEST e PROD) 2 atualizações por mês (Plugins e/ou Core)
  57. 57. Painel do WordPress: ~72hrs/ano WordPress Farm: ~12hrs/ano
  58. 58. Conforme o número de sites aumenta o ganho proporcional de horas fica ainda maior
  59. 59. A ser implementado: atualização automática do TEST a cada 24hrs e automatizar os testes
  60. 60. Outras vantagens
  61. 61. Facilidade em importar/exportar sites
  62. 62. Autonomia e controle total do que acontece "nos bastidores" (solução tecnicamente simples)
  63. 63. Segurança Isolamento de sites e sem comunicações externas
  64. 64. Menos um plugin ;)
  65. 65. Manutenção automatizada
  66. 66. Surgiu uma oportunidade?
  67. 67. Use a magia da automação!
  68. 68. Gerenciando sites em WordPress de forma eficiente: do deploy à manutenção Daniel Kossmann Ferraz daniel@spirallab.com.br http://bit.ly/wcsp16-spirallab WordCamp São Paulo 2016 | 10.DEZ.2016

×