Назад | Перейти на главную страницу

Как в Capistrano создать файл .rvmrc в папке / current?

Во время развертывания я хочу создать файл .rvmrc в папке / current во время развертывания capistrano.

Как я могу это сделать?

Вы можете добавлять задачи в развертывание Capistrano, используя синтаксис, показанный ниже:

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

В этом примере каждый компьютер устанавливает git перед запуском развертывания. Все, что вам нужно сделать, это изменить это, чтобы получить нужный файл или выполнить bash echo.

Я оставлю это здесь как ссылку. Должен работать с более новыми версиями rbenv или 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'

или, если вы используете capistrano / bundler, вам понадобится этот хук:

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