Search Results: tag:rake

16 件ヒットしました。 1 - 10 番目を表示しています。

rake rspec ruby spec を実行するタスクを定義する

Rakefile で rspec/core/rake_task を読み込んで RSpec::Core::RakeTask.new を実行すれば良い。

require "rspec/core/rake_task"

desc "Run all specs in spec directory"
RSpec::Core::RakeTask.new

rake ruby タスクを定義するクラスを作る

RDoc::Task を参考にしてタスクを定義するクラスを作る。 ruby の lib/rdoc/task.rb を見る。 まず、Rake::TaskLib を継承する。

class RDoc::Task < Rake::TaskLib

initialize では、インスタンス変数を設定して ブロックが与えられていれば、ブロックを評価して define メソッドの中で Rake タスクを定義する。

def initialize name = :rdoc # :yield: self
  defaults
 
  check_names name
 
  @name = name
 
  yield self if block_given?
 
  define
end

rake ruby タスクの一覧を表示する

Rakefile に定義されているタスクの一覧を表示するには

rake -T

とする。ただ、desc で説明を記述していないタスクは表示されない。

rake ruby タスクの依存関係を表示する

rake -P

でタスクの依存関係が表示される。

rake ruby デフォルトのタスクを実行する

Rakefile があるディレクトリで

rake

と単に rake を実行すると default というタスクが実行される。

rake ruby 特定のタスクを実行する

default というタスク以外の特定のタスクを実行する場合は タスク名を指定する。

rake task_name

rake ruby タスクに引数を与えて実行する

Rakefile に

desc "Test of arguments"
task :task_name, ['a', 'b'] do |task, args|
  p task
  p args
  p args.a
  p args.b
end

のようにして引数をとるタスクを作っておき、 タスクに対する引数はタスク名の後に [ と ] で囲んで与える。

rake task_name[123,456]

args.a と args.b の値は文字列 "123" と "456" になる。 zsh の拡張を使っている場合は

rake "task_name[123,456]"

のようにしなければならない。

rake ruby 環境変数を与えて実行する

環境変数 var を表示するタスクを作る。

desc "Test environmental variable"
task :check_env do |t|
  p ENV['var']
end

これに対して

rake check_env var="VALUE"

として rake を実行すると ENV['var'] に値が代入される。

rake ruby Rake でタスクを定義する

タスクを定義する

desc "Description"
task :task_name do |t|
  ...
end

desc で説明を書かないと「rake -T」の一覧表示のときにタスクが表示されない。

rake ruby Rake でディレクトリの移動

cd "/path/to/dir"