Я хочу отметить текущий развернутый каталог с номером выпуска.Capistrano 3/SSHKit записать в файл в пользовательской задаче
Я попробовал этот подход:
Получить локально версию приложения, сохранить его в переменной, а на удаленном хосте, сохранить его в файле.
namespace :deploy do
desc "Set a release number as the app version"
task :mark_release do
release_number = `git describe`
on roles(:web) do
execute("echo #{release_number} > #{current_path}/RELEASE")
end
end
end
Проблема заключается в том, когда я запускаю это через:
cap deploy:mark_release
команды выглядит следующим образом:
echo v9.3.0-254-g178d1f8; > /foo/bar/current/RELEASE
точка с запятой делает проблемы. и мой файл RELEASE, конечно, пуст.
Я думаю, что это связано с некоторыми побегами, сделанными SSHKit.
Любые подсказки?
Вам нужно бежать номер версии с кавычки выполнить ("эхо \" # {release_number} \ "> # {current_path}/RELEASE") – dpa