Convertendo Rails 1.2.x para 2.0
De TeHospedia
A TeHospedo oferece em seus planos de hospedagem ruby o Rails 1.2.x e Rails 2.0. Se você está com o Rails 1.2.x é interessante converter para Rails 2.0. Neste artigo, explicamos como proceder para efetuar a conversão.
Conteúdo |
[editar] Rodando o r2check.rb
Neste post do TeaBass.com é indicado um roteiro de como converter uma aplicação em Rails 1.2.x para Rails 2.0. O básico, no entanto é acessar é baixar um script e salvar como r2check.rb. Ele deve ser salvo dentro da pasta do rails, ou seja, direto na pasta que contém as subpastas app, config, public, etc.
- Acesse sua conta SSH
- acesse a pasta de sua aplicação e digite:
wget "http://pastie.caboo.se/pastes/99900/download?key=krcevozww61drdeza13e3a" -O r2check.rb
- em seguida, execute o script de verificação
ruby r2check.rb
- após alguns segundos, o script irá retornar sugestões de como tornar seu código compatível.
- repita a execução do r2check.rb operação após resolver cada uma das questões que o script aponta
Note que a maioria das conversões são de códigos que foram removidos do Rails e devem ser instalados manualmente através do script/plugin.
[editar] Analisando o log
Após resolver todas as questões, você deve abrir seu site e verificar se abriu, provavelmente aparecerá um erro 500. Verifique na pasta log:
tail -f log/production.log -n 500
O que ocorreu. O arquivo de log representa o environment que você está usando.
[editar] Criando o session_key
Provavelmente você precisará adicionar em config/environment.rb uma linha para critografar os dados de sua sessão:
config.action_controller.session = { :session_key => "_myapp_session", :secret => "Texto Aleatorio de 30 caracteres no minimo" }
Essa linha deve conter um Texto Aleatorio de 30 caracteres no minimo' no lugar do secret.
A linha pode ficar logo abaixo da linha:
Rails::Initializer.run do |config|
[editar] Como obter suporte
Apesar de não ser nossa obrigação, a TeHospedo oferece suporte nessa conversão aos seus clientes. Estamos dando muita importância ao Ruby e sabemos o quão importante ele é para nossos clientes e para nossa empresa.



