我想用我的版本号标记当前部署的目录。
我尝试了这种方法:
在本地获取应用程序版本,将其存储到变量中,然后在远程主机上将其存储在文件中。
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 进行了一些转义。
有什么线索吗?