jea*_*rlu 11 capistrano capistrano3
在deploy.rb,我相信这:rails_env通常是require 'capistrano/rails'在你的Capfile.我使用的是rails,但是没有使用内置资产管道,因此,不要使用capistrano/rails,并且:rails_env在deploy.rb切换和生产部署之间切换时必须手动设置.这似乎相当愚蠢,因为在执行cap staging deploy或执行时总是包含环境cap production deploy.我发布这个问题,因为看起来这可能是一个相当普遍的痛点,有一个微不足道的解决方案,但经过大量的谷歌搜索后,我空手而归.因此,我深入研究了Capistrano 3.1.0源代码,以找出如何访问在命令行中输入的阶段变量,并将跟进一个简短的回答,做一些解释.
jea*_*rlu 25
简单的答案是在顶部附近添加以下行deploy.rb:
set:rails_env,fetch(:stage)
变量:stage设置capistrano/setup在您的需要中Capfile.此脚本为定义的每个阶段创建rake任务config/deploy.在rake任务的定义中,您将找到以下内容:set(:stage, stage.to_sym)您的cap staging deploy或cap production deploy命令中的stage/rails_env变量.
| 归档时间: |
|
| 查看次数: |
4937 次 |
| 最近记录: |