Thorを使ってみた(Rubyバッチ編)

ちょっとJenkinsのことは置いておいて、rubyでバッチを書くことになった。

悩んで、いろいろ試してみた。
まずは、Thor。
Railsにデフォルトで入っているのだけど、Thorだけで利用してみる。

実行結果
ヘルプ1
# ruby thor_test.rb help
Commands:
thor_test.rb execute [OPTION] # Test execute
thor_test.rb help [COMMAND] # Describe available commands or one specific command

Options:
-h, [--help] # Thor test

ヘルプ2
# ruby thor_test.rb help execute
Usage:
thor_test.rb execute [OPTION]

Options:
-p, [--production] # Run production DB server
-n, [--number=N] # test number
# Default: 3
-h, [--help] # Thor test

Test execute

デフォルト
# ruby thor_test.rb
DEVELOPMENT
3

パラメータ設定
# ruby thor_test.rb -p -n=100
PRODUCTION
100

こんな感じで、ソース少ないのに、複雑なことができちゃう。

===
共通部分を抽出して、バッチ作成を簡単にできるようにしてみました。
Thorを使いやすくしてみた(Ruby・Railsバッチ編)