especial focus na web Experiência em diferentes áreas ensino e formação webdesign e programação web usabilidade integração e testes Unix (linux, solaris, osx, ...)
- Sou entusiasta Drupal Qualidade - Acredito que é o melhor CMS/Framework web Partilhar - Apoiar a comunidade partilhando experiências e conhecimentos adquiridos Cidade do Porto - vale sempre a pena voltar
• v.tr. 1. • a. To position (troops) in readiness for combat, as along a front or line. • b. To bring (forces or material) into action. • C. To base (a weapons system) in the field. • 2. To distribute (persons or forces) systematically or strategically. • 3. To put into use or action
Muitas vezes “Testa-se” em produção Copiam-se e editam-se ficheiros remotamente (ftp, ssh, cpanel, etc..) Não se “marcam” as alterações Shared hostings...
developer, ambiente instável e sujeito a erros Dev - Desenvolvimento, normalmente partilhado por vários developers, nem sempre idêntico a Produção Staging - Testes/Qa, deve estar idêntico a produção Produção - Acedido pelos utilizadores finais do site, não deve estar indisponível
potencial do Drupal na linha de comandos: Limpar as caches Criar/restaurar um site (código e dados num único ficheiro) Executar o cron Executar testes Obter status do site Instalar/activar módulos e temas Executar comandos sql Criar e obter info de utilizadores E muito mais...
repositório Cada utilizador faz “commit” para o seu repositório e faz “push” das alterações para o respositório central Outros utilizadores podem obter as alterações através de um “pull” Diferentes linhas de código (branches) Código referente a releases (tags) Corre em diferentes plataformas (osx, linux, win) Linha de comandos ou gui (conforme o s.o.) Github (repositórios online)
deve estar offline A bd pode ter uma dimensão muito elevada (processo de dump e restore lento) Aceitável até X MB (depende processamento) Pode ser feito diretamente com os comandos mysql e mysqldump ou através do drush ex: drush sql-sync @prod.site1 @dev.site1 --result-file=/tmp/site1.dump
escolher um que “suporte” Drupal e acesso por ssh Planear ambientes de acordo com as necessidades Usar GIT (nem que apenas localmente) Essencial: Configurar o drush e respetivos aliases Iniciar projeto localmente: instalar drupal, efetuar configurações e depois passar para os restantes ambientes Usar o features
Antes de iniciar processo Desligar cron ou outros processos automáticos Colocar site offline Limpar caches Efetuar backups Quando o processo terminar Correr o update.php Testes: validar áreas afectadas pelo novo código Colocar site online