【问题标题】:Load Capistrano's environment in rails console在 Rails 控制台中加载 Capistrano 的环境
【发布时间】:2012-05-03 13:41:12
【问题描述】:

在 rails 控制台中加载 Capistrano 环境的最佳方式是什么?

我想访问 capistrano 在部署中使用的变量和方法,例如 latest_release、source 等。

在尝试破解复杂的 capistrano 任务时,Ruby 调试效率不高。

【问题讨论】:

    标签: ruby-on-rails deployment capistrano


    【解决方案1】:

    在 Rails 控制台中可能不实用,因为这两种环境可能会发生冲突。不过,在交互式控制台中并不难。您可以添加一个简单地启动一个 Capistrano 任务:

    task :console do
      require 'irb'
      $config = self
      ARGV.clear
      IRB.start
    end
    

    这会将当前配置对象公开为全局$config。虽然使用全局变量有点难看,但我找不到从main对象切换IRB默认上下文的方法。

    【讨论】:

    • 一旦我意识到使用 $config 将为我提供所需的一切,这将完美运行。我想知道是否有办法将 irb 中的主要对象类设置为默认类。猜猜这就是撬的目的
    • 嗨!你知道如何在 capistrano 中改变 IRB 的上下文吗?我试图获取在 capistrano 上定义的所有角色名称。我还没有找到任何与此相关的文件。你是唯一一个在谈论 ir 的人。提前谢谢!
    • @RenatoIsidio 这将涉及探索当前的 Capistrano API,我并不十分熟悉,但是,源本身应该让您知道在哪里查找。
    猜你喜欢
    • 2013-02-28
    • 2017-09-21
    • 2014-12-07
    • 1970-01-01
    • 2013-06-29
    • 2012-06-03
    • 2010-11-06
    • 2015-05-05
    • 2013-02-15
    相关资源
    最近更新 更多