当使用ext/multistage时,为什么在阶段(production.rb)中设置的变量在deploy.rb中不可用?
在production.rb中:set :domain, "domain.com"
在deploy.rb中:set :vhost, "/var/www/#{domain}"
但是当我试着跑的时候,它抱怨
undefined local variable or method `domain' for #<Capistrano::Configuration:0x00000100d07248> (NameError)发布于 2010-11-10 06:56:15
这看起来非常愚蠢,我可能没有正确地这样做,但如果我像这样推迟deploy.rb中的变量设置,它确实可以工作:
set(:stage_domain) { "#{domain}" }
set(:vhost) { "/var/www/#{stage_domain}" }
set(:repo_dir) { "#{vhost}/repository" }
set(:deploy_to) { "#{repo_dir}" }
set(:httpdocs_link) { "#{deploy_to}" }
role(:web) { stage_domain }https://stackoverflow.com/questions/4137493
复制相似问题