Truquitos: Ejecutando Rails Jobs en la terminal

Puedes ejecutar trabajos (jobs) de Rails sin tener que configurar ningún backend. Las únicas cosas que necesitas son la consola de Rails y el método perform_now.

Supón que creaste un job llamado PrintHappy:

rails generate job print_happy

Puedes navegar a la carpeta app/jobs y poblar el método perform con cualquier cosa que necesites:

class PrintHappyJob < ApplicationJob
  queue_as :default

  def perform(*args)
    puts "Estoy muy feliz, ¿tú también eres feliz?"
  end
end

Ahora lo único que necesitas es ejecutar rails c e invocar el método perform_now en PrintHappyJob:

> rails c
Running via Spring preloader in process 5126
Loading development environment (Rails 6.0.2.1)

> PrintHappyJob.perform_now()

Performing PrintHappyJob (Job ID: 7f8216f8-...) from Async(default) enqueued at
Estoy muy feliz, ¿tú también eres feliz?
Performed PrintHappyJob (Job ID: 7f8216f8-...) from Async(default) in 0.06ms

Esto ejecuta el job inmediatamente y hace que el debugging y desarrollo de jobs sea mucho más fácil.

¡Gracias por leer!

Juan Luis Orozco Villalobos

¡Hola! Soy Juan, ingeniero de software y consultor en Budapest. Me especializo en computación en la nube e IA, y me encanta ayudar a otros a aprender sobre tecnología e ingeniería