Páginas

Friday, December 5, 2008

Instalando e usando o Capistrano no Ubuntu Linux - Parte 1

Hoje resolvemos testar o Capistrano [1] como nova solução para fazer deploy automático das nossas aplicações web do Labase [2].
Partindo de um Ubuntu 8.04 sem o Ruby [3] instalado, o procedimento é o seguinte:

$ sudo apt-get install ruby irb rdoc rubygems

ou

Sistema > Administração > Synaptic
E procure os pacotes ruby, irb, rdoc e rubygems, marque para instalação e clique em "aplicar" (botão verde).

Agora podemos usar o RubyGems para instalar o Capistrano.
O site do Capistrano é enfático em dizer que basta uma linha.
No terminal, digite:

$ sudo gem install capistrano

Bem, isso deveria ter funcionado! Mas não deu certo, pois o pacote RubyGems do repositório do Ubuntu vem dos mantenedores do Debian, e está numa versão muito antiga (0.9.4). Precisamos da versão 1.3.1, que instalamos assim [4]:

$ wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
$ tar xzf rubygems-1.3.1.tgz
$ cd rubygems-1.3.1
$ sudo ruby setup.rb
$ gem -v
bash: gem: comando não encontrado

Mas...

$ gem1.8 -v
1.3.1

O que aconteceu é que o rubygems instalou o script em /usr/bin/gem1.8, e não /usr/bin/gem como esperado. Então, basta criar um link simbólico:

$ sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
$ gem -v
1.3.1

Com isso, agora conseguiremos instalar o Capistrano:
$ sudo gem install capistrano
Successfully installed net-ssh-2.0.4
Successfully installed net-sftp-2.0.1
Successfully installed net-scp-1.0.1
Successfully installed net-ssh-gateway-1.0.0
Successfully installed highline-1.5.0
Successfully installed capistrano-2.5.2
6 gems installed
Installing ri documentation for net-ssh-2.0.4...
Installing ri documentation for net-sftp-2.0.1...
Installing ri documentation for net-scp-1.0.1...
Installing ri documentation for net-ssh-gateway-1.0.0...
Installing ri documentation for highline-1.5.0...
Installing ri documentation for capistrano-2.5.2...
Installing RDoc documentation for net-ssh-2.0.4...
Installing RDoc documentation for net-sftp-2.0.1...
Installing RDoc documentation for net-scp-1.0.1...
Installing RDoc documentation for net-ssh-gateway-1.0.0...
Installing RDoc documentation for highline-1.5.0...
Installing RDoc documentation for capistrano-2.5.2...

E agora?

Lá vem a parte 2...

[1] http://www.capify.org
[2] http://labase.nce.ufrj.br
[3] http://www.ruby-lang.org
[4] Segundo solução postada aqui: http://intertwingly.net/blog/2008/11/23/RubyGems-1-3-1-on-Ubuntu-8-10

2 comments:

Valéria Parajara said...

E cadê a parte dois???? rsrsrs

Rodolfo said...

Será que não é tarde demais? Eu nem lembrava que um dia já tinha feito aquilo :D