Seções iMasters
Ruby + Ruby on Rails

Gerencie várias versões do Ruby com Ruby Version Manager

Olá! No artigo de hoje, veremos o Ruby Version Manager (RVM), que
viabiliza a instalação de inúmeras versões do interpretador Ruby com suas
respectivas gemsets. Ou
seja, você pode desenvolver o projeto “ABC” usando o Ruby
1.8.7, com seu determinado conjunto de gems, dentre elas o Rails
2.3.4, e, ao mesmo, tempo ter o projeto “DEF” usando o JRuby
e o Rails 3.0.0. Simples assim, sem conflitos internos e com liberdade
total para o desenvolvimento.

Como
faço? Vamos lá, para quem quiser se aprofundar mais, dê uma boa
estudada em http://rvm.beginrescueend.com, e para os mais ansiosos
vou apresentar a receita de bolo ;-)

Instalando
o RVM

Abra o terminal, vá
para um diretório de sua escolha (opt no meu exemplo) e crie o
arquivo rvm_install.sh:

cd /opt

curl http://rvm.beginrescueend.com/releases/rvm-install-head > rvm_install.sh

Execute o script de
instalação do rvm.

sh rvm_install.sh

Habilite o comando
RVM, inserindo a linha abaixo no arquivo ~/.bash_profile.

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

Teste
a instalação.

rvm

Criando
seu primeiro ambiente

Nesse
primeiro exemplo, vamos criar um ambiente com o Ruby Enterprise
Edition, que é uma branch do MRI (Matz Ruby Interpreter,
implementação canônica do Ruby) com uma série de patches que
priorizam performance, escalabilidade, memória etc.

Para isso, faça o seguinte:

rvm install ree 

Aguarde, pois pode demorar um pouco, ao final da instalação para conferir se tudo
deu certo:

rvm list

Será
apresentada uma lista do rubies instalados a partir do RVM.

ree-1.8.7-2010.02 [ x86_64 ]

Para
saber mais comandos:

rvm help

Agora
que você instalou o Ruby Enterprise Edition, para usá-lo, faça o
seguinte:

rvm use ree

A
partir de agora, o Ruby executado será o Enterprise Edition. Vamos
instalar um gemset para nosso novo ambiente:

rvm gemset create meu-projeto

Foi
criado um gemset dentro do ambiente do Ruby Enterprise Edition, e
para usar:

rvm gemset use meu-projeto

Pronto,
instalamos o RVM, criamos um novo ambiente com o Ruby Enterprise
Edition, e seu respectivo gemset, teoricamente tudo certo e para
usarmos essas configurações em nosso projeto de uma maneira mais
simples com um comando só, faça isso:

rvm use ree@meu-projeto

Entendeu? informei ao RVM que quero usar o ambiente “ree” com o
gemset “meu-projeto”.

Quer
algo mais simples ainda que garanto vai te poupar possíveis dores de
cabeça?

Crie
um arquivo .rvmrc coloque na raiz do seu projeto com o seguinte
conteúdo

rvm use ree@meu-projeto

Agora,
sim, temos tudo instalado ativado e sem intervenções manuais para
uso.

É
isso, espero que tenham gostado e qualquer dúvida entrem em contato
comigo!

Comente também

3 Comentários

É legal também acrescentar que você pode criar um arquivo .rvmrc dentro da pasta do projeto com a sintaxe: rvm @, por exemplo rvm 1.8.7@meuprojeto ou rvm jruby@meuprojeto

Dessa forma você não precisa trocar de ambientes via linha de comando. O próprio RVM pode fazer isso para você :-D

Elton Okada

No final do artigo falo sobre isso, mas o seu exemplo vm @ ficou bem legal !
obrigado !

João Zarate

Muito bom Elton Okada…

Qual a sua opinião?