クイックリファレンス

Rakeビルドツール チートシート

Ruby Rakeクイックリファレンス:タスク定義、名前空間、依存関係、引数付きタスク、ファイルタスクの基本構文。

· 公開日

Rake は、RubyのMakeライクなビルドユーティリティであり、標準的なRuby構文を用いてタスク定義や自動化ワークフローを記述できます。

基本タスク構文

Rakefile 内:

desc "Run all project test suites"
task :test do
  puts "Running tests..."
end

# 前提条件(依存関係)を持つタスク
task deploy: [:test, :build] do
  puts "Deploying application..."
end

# 引数なし `rake` で実行されるデフォルトタスク
task default: :test

名前空間 (Namespaces)

関連するタスクを論理的にグループ化:

namespace :db do
  desc "Run database migrations"
  task :migrate do
    puts "Migrating database..."
  end

  desc "Rollback previous migration"
  task :rollback do
    puts "Rolling back..."
  end
end

# ターミナルで実行: rake db:migrate

タスクの引数 (Task Arguments)

desc "Send digest email to user by ID"
task :send_digest, [:user_id] do |_, args|
  puts "Sending digest to user #{args[:user_id]}"
end

# ターミナルで実行: rake send_digest[42]

ファイルタスク (File Tasks)

ファイルタスクは出力先ファイルが存在しないか、前提ファイルの方が新しい場合にのみ実行されます:

file "dist/bundle.js" => ["src/app.js", "src/utils.js"] do
  sh "esbuild src/app.js --bundle --outfile=dist/bundle.js"
end

参考資料

関連テーマ