【问题标题】:Capistrano 3: How to store git revision into a file?Capistrano 3:如何将 git 修订版存储到文件中?
【发布时间】:2013-11-03 22:11:33
【问题描述】:

有没有办法从 Capistrano 3 中获取 git 修订变量?

我不知道如何访问 capistrano 变量:

namespace :deploy do

  after :finished, :set_current_version do
    on roles(:app) do
      # dump current git version
      within release_path do
        execute :echo, "#{fetch(:revision_log_message)} >> public/version"
      end
    end
  end
end

【问题讨论】:

    标签: capistrano capistrano3


    【解决方案1】:

    这个有效

      after :finished, :set_current_version do
        on roles(:app) do
          # dump current git version
          within release_path do
            execute :echo, "#{capture("cd #{repo_path} && git rev-parse --short HEAD")} >> public/version"
          end
        end
      end
    

    【讨论】:

      【解决方案2】:

      此功能是在 3.0.1 中添加的,请查看他们的更新日志!

      【讨论】:

      • 谢谢,你是说这个吗? github.com/capistrano/capistrano/commit/…
      • 好的,谢谢,我仍然对新语法感到困惑。有没有办法在上下文中列出可用变量?
      • 不,抱歉。这是set()fetch() 的一个弱点,这就是它在很大程度上从核心中移除的原因(现在很多东西都是真正的变量)。 Capistrano 源代码非常简单,值得一读。
      • 3.0.1中没有,下个版本会出现
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-16
      • 2010-12-29
      • 1970-01-01
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      相关资源
      最近更新 更多