в каком направлении я могу запускать команды rake через capistrano на удаленном сервере.
например, у меня есть lib/task/reparse.rake
с некоторыми методами
desc "it take csv file, makes some changes and fill db with this info"
task :example1 => :environment do
require 'csv'
rows_to_insert = []
# some actions
# ...
end
на локальном сервере все нормально - я просто запустил rake reparse:example1
и он работает (заполните db правильно).
поэтому вопрос в том, как я могу запустить эту команду на реальном хостинге после развертывания?
Я использую рельсы 4.1 + capistrano 3.
P.S. примеры с сайта не работают для меня Как запустить задачу рейка из Capistrano?
если я попробую cap production rake:invoke task=reparse:land
он терпит неудачу:
cap aborted!
Don't know how to build task 'rake:invoke'
некоторые исправления
namespace :somenamespace do
task :runrake do
on roles(:all), in: :sequence, wait: 5 do
within release_path do
execute :rake, ENV['task'], "RAILS_ENV=production"
end
end
end
end
таким образом, он начинает выполняться через
cap production somenamespace:runrake task=custom_task_file:custom_method1