ようへいの日々精進XP

よかろうもん

ショロカレ 14 日目 | 初老ときゃぴきゃぴ Capistrano(1) 〜 task 内から外部のメソッドを呼び出す 〜

これは

初老丸アドベントカレンダー 14 日目の記事です。

qiita.com

ということで、小ネタ大ネタを交えて 12/25 まで張り切っていきましょう。

初老と きゃぴきゃぴ Capistrano(1) 〜 task 内から外部のメソッドを呼び出す 〜

ついつい頼ってしまう Stack Overflow

stackoverflow.com

有難うございます。

task から外部のメソッドを呼び出す

以下のように self.メソッド名(クラスメソッド)でメソッドを書いて、task 内から参照すれば良いようです。

bash-3.2$ cat config/deploy.rb
require "capistrano_colors"

def self.bakayarou
  puts "バカ野郎"
end

def self.nahanaha
  puts "ナハナハ(せんだみつお)"
end

namespace :たけし軍団 do
  desc "ダンカン"
  task :ダンカン do
    bakayarou
  end

  desc "コマネチ"
  task :コマネチ do
    nahanaha
  end
end

実行

ダンカンを呼び出してみましょう。

bash-3.2$ bundle exec cap たけし軍団:ダンカン
  * 2016-12-18 13:42:03 13:42:03 == Currently executing `たけし軍団:ダンカン'
バカ野郎

コマネチ、コマネチ。

bash-3.2$ bundle exec cap たけし軍団:コマネチ
  * 2016-12-18 13:42:07 13:42:07 == Currently executing `たけし軍団:コマネチ'
ナハナハ(せんだみつお)

以上

メモでした。

日本語で task 名を書けて思わず吹いた。