【发布时间】:2013-03-08 08:36:33
【问题描述】:
我猜这部分有问题。
check = %x( cat '/etc/apache2/ports.conf' )
我想从 /etc/apache2/ports.conf 获取内容并检查端口 8581 是否已被监听,这是我的代码,它是部署后的上限任务。
desc "Ports Updation"
task :portsUpdation do
# Editing /etc/apache2/ports.conf
ports_file = "/etc/apache2/ports.conf"
run "#{try_sudo} chmod -R 0777 #{ports_file}"
check = %x( cat '/etc/apache2/ports.conf' )
puts check
unless /Listen 8581/.match check
run "#{try_sudo} sed -i '$ a\Listen 8581\n' #{ports_file}"
end
run "#{try_sudo} chmod -R 0644 #{ports_file}"
end
我运行了这个 cap 任务,变量“check”总是打印我本地的 ports.conf。我想要的是来自服务器的内容。
当我运行这个 cap 任务时,我被问到服务器密码。我也尝试过 cap deploy。结果相同。可能是什么pblm。
【问题讨论】:
标签: ruby linux capistrano