http://www.flickr.com/photos/jsome1/2226394415
Deploying Rails applications withDeploying Rails applications with
CapistranoCapistrano
Eu sou Almir 'm3nd3s'Eu sou Almir 'm3nd3s'@@m3nd3sm3nd3s
Desenvolvedor naDesenvolvedor na
http://www.giran.com.brhttp://www.giran.com.br
deploydeploy
Mas, o que é Mas, o que é deploy?deploy?
Colocar a aplicação Colocar a aplicação em em produçãoprodução
http://www.flickr.com/photos/ivyfield/4763965911
UploadUpload
DatabaseDatabase
Static filesStatic files
… … trabalhosotrabalhoso
http://www.flickr.com/photos/migueleveryday/5914092322
Mas, seus problemas Mas, seus problemas acabaramacabaram
Capistrano facilita sua vidaCapistrano facilita sua vida
Capistrano faz pra vocêCapistrano faz pra você
Mas, faz o que?Mas, faz o que?
TUDO!TUDO!
TUTO??!TUTO??!
http://www.flickr.com/photos/brapps/2890452070
Sim! Sim! TUDO!TUDO!
Pré-requisitos
ServidorServidor
RubyRuby
OpenSSHOpenSSH
GitGit
A aplicação
Instalação
$ $ gem install capistranogem install capistrano
group :development, test dogroup :development, test do gem 'capistrano'gem 'capistrano'endend
GemfileGemfile
$ $ bundle installbundle install
$ $ capify .capify .
$ $ capify rockandrails/capify rockandrails/
ouou
CapfileCapfile
config/deploy.rbconfig/deploy.rb
Configuração
https://gist.github.com/https://gist.github.com/****503****503
setssets
rolesroles
WebserverWebserver DatabaseDatabase Static filesStatic files
WebserverWebserver
https://gist.github.com/https://gist.github.com/****503****503
Setup
$ $ cap deploy:setupcap deploy:setup
releasesreleases
versão atualversão atual
CompartilhadosCompartilhados
Finalmente, o Finalmente, o deploydeploy!!
Aeee
Até que enfim
Woohooou!
Pára de enrolar seu trouxa!
$ $ cap deploycap deploy
Correr para o abraçoCorrer para o abraço
Não rodou as migrationsNão rodou as migrations
Ops! :'(Ops! :'(
Sabia que estavafácil demais
Ajustes finos
##comofáz?comofáz?
Custom taksCustom taks
gatilhosgatilhos
https://gist.github.com/https://gist.github.com/****503****503
$ $ cap deploycap deploy
Mas, se minha app Mas, se minha app não for Rails?não for Rails?
Migre para Rails!Migre para Rails!Seu fanfarrão!Seu fanfarrão!
Referências
https://github.com/capistrano/capistrano/wiki/_pages
https://gist.github.com/https://gist.github.com/12525031252503
Dúvidas?
Dúvidas?
Almir 'm3nd3s'Almir 'm3nd3s'@m3nd3s@m3nd3s
http://www.almirmendes.comhttp://[email protected]@giran.com.br
[email protected]@gmail.com