1
由於缺乏文件,我訴諸閱讀Capistrano 2 hanbook,並遇到「默認」任務。如何在Capistrano 3中運行默認任務?
例子:
namespace :backup do
task :default do
web
db
end
task :web, :roles => :web do
puts "Backing Up Web Server"
end
task :db, :roles => :db do
puts "Backing Up DB Server"
end
end
的想法是,如果我跑cap backup
應該執行似乎task..which不工作的默認。
我的代碼修改,以適應上述:
namespace :status do
task :default do
webserver
db
end
desc "Check status of nginx on web server"
task :webserver do
on roles(:web) do |host|
execute 'hostname'
execute 'service nginx status'
end
end
desc "Check status of DB"
task :database do
on roles(:db) do |host|
execute 'hostname'
execute 'service postgresql status'
end
end
end
你如何運行Capistrano的3個默認的任務?
我跟着你的代碼,但我得到以下錯誤:'NameError:未定義的局部變量或方法'網絡服務器'爲主:對象' – kaizenCoder
嗨,我沒有複製所有的代碼,所以沒有任何名爲「網絡服務器」定義的任務。你必須這樣做。或者最適合測試目的。只需將「webserver」和「db」的調用替換爲「puts'hello world'」即可 – robkuz