No Capistrano, como criar um arquivo .rvmrc na pasta /current?

No Capistrano, como criar um arquivo .rvmrc na pasta /current?

Durante minha implantação, desejo criar um arquivo .rvmrc na pasta /current durante uma implantação capistrano.

Como posso fazer isso?

Responder1

Você pode adicionar tarefas a uma implantação do Capistrano usando a sintaxe mostrada abaixo:

task :gitinstall do
   run "apt-get update"
   run "apt-get -y install git-core"
end
before "deploy:update", :gitinstall

Este exemplo faz com que cada máquina instale o git antes de executar a implantação. Tudo o que você precisa fazer é modificar isso para obter o arquivo em questão ou fazer um bash echo.

Responder2

Vou deixar isso aqui como referência. Deve funcionar com versões mais recentes do rbenv ou rvm.

namespace :deploy do
  desc 'Sets the ruby version'
  task :set_ruby_version do
    put "2.0.0-p0", "#{latest_release}/.ruby-version"
  end
end

after 'deploy:update_code', 'deploy:set_ruby_version'

ou, se estiver usando capistrano/bundler, você precisará deste gancho:

before 'bundle:install', 'deploy:set_ruby_version'

informação relacionada