我正在尝试为我的网站设置 Capistrano 部署,我的部署工作正常,所有身份验证都很好,但是我使用 Media Temple 托管,因此默认符号链接将不起作用,因为 apache 无法访问为当前指定的路径最新发布的。
我正在尝试做一个任务来取消当前符号链接的链接,然后用相对路径重新创建它,但是 Capistrano 文档严重缺乏,我无法在任何地方找到更多关于如何准确设置它的信息。
我曾尝试使用 sh,但这似乎是在我的计算机上而不是在服务器上运行命令,找不到运行命令,我尝试执行但找不到正确的格式来执行诸如 rm 或 ln 等操作。 .
目前我正在尝试以下方法:
namespace :deploy do
desc "Change HTML Symlink to relative path"
task :create_symlink do
#latest_release_relative = relative_path(deploy_to, release_path + '/html')
#sh "rm -f #{current_path} && ln -s #{latest_release_relative} #{current_path}"
#sh "echo #{File.basename release_path}"
info "echo Modifying symlink to be relative"
#run "rm -d #{current_path}"
#run "ln releases/#{File.basename release_path} #{current_path}"
#execute :rm, '-d', #{current_path}
end
desc "Create environment file"
task :create_env_conf
file 'env.conf' do |t|
sh "touch env.conf"
end
end
after :deploy, "deploy:create_symlink", "deploy:create_env_conf"