Referencia rápida

Chuleta de la herramienta de compilación Rake

Guía de referencia rápida para Ruby Rake: definición de tareas, namespaces, dependencias, argumentos de tareas y operaciones con archivos.

· Publicado

Rake es una utilidad de compilación similar a Make para Ruby, que utiliza la sintaxis de Ruby para definir tareas y flujos automatizados.

Sintaxis Básica de Tareas

En el Rakefile:

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

# Tarea con dependencias previas
task deploy: [:test, :build] do
  puts "Deploying application..."
end

# Tarea por defecto invocada al ejecutar `rake`
task default: :test

Espacios de Nombres (Namespaces)

Agrupa tareas relacionadas lógicamente:

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

# Ejecutar en terminal: rake db:migrate

Argumentos de Tareas

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

# Ejecutar en terminal: rake send_digest[42]

Tareas de Archivos (File Tasks)

Las tareas de archivos solo se ejecutan si el archivo destino no existe o las dependencias son más recientes:

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

Referencias

Temas relacionados