代码之家  ›  专栏  ›  技术社区  ›  Femaref

使方法在capistrano部署文件中可用

  •  0
  • Femaref  · 技术社区  · 14 年前

    我有自己的gem,它为我简化了部署,因为服务器有一些配置。

    结构如下:

    - .
    - ..
    - lib
      - capistrano
        - foo
          - common.rb
        - foo.rb
    

    foo.rb:

    require "capistrano"
    require "capistrano/ext/multistage"
    require "capistrano/foo/common"
    

    公共.rb:

    def _cset(name, *args, &block)
      unless exists?(name)
        set(name, *args, &block)
      end
    end
    
    def _baz(param)
    end
    

    我好像不能打电话 _baz 在我的部署文件中,同时我可以调用 _cset 很好。我该怎么做 _巴兹 可在我的部署文件中调用?

    例外情况:

    capistrano--2.12.0/lib/capistrano/configuration/variables.rb:122:在“method_missing_with_variables”中:#的未定义方法“_symlink”(NoMethodError)

    1 回复  |  直到 14 年前
        1
  •  0
  •   Femaref    14 年前

    这是一个 require 问题 capistrano/foo 项目本身没有适当要求,我也不要求 capistrano/foo/common 明确地在我的基本食谱中。

    推荐文章