Class: SolidStackWeb::JobsController

Inherits:
ApplicationController show all
Defined in:
app/controllers/solid_stack_web/jobs_controller.rb

Constant Summary collapse

EXECUTION_MODELS =
{
  "ready"     => ::SolidQueue::ReadyExecution,
  "scheduled" => ::SolidQueue::ScheduledExecution,
  "claimed"   => ::SolidQueue::ClaimedExecution,
  "blocked"   => ::SolidQueue::BlockedExecution
}.freeze
DISCARDABLE =
%w[ready scheduled blocked].freeze

Instance Method Summary collapse

Instance Method Details

#destroyObject



20
21
22
23
24
25
26
27
28
29
30
# File 'app/controllers/solid_stack_web/jobs_controller.rb', line 20

def destroy
  model     = EXECUTION_MODELS[@status]
  execution = model.find(params[:id])
  execution.job.destroy!
  @executions_remain = model.exists?

  respond_to do |format|
    format.html { redirect_to jobs_path(status: @status) }
    format.turbo_stream
  end
end

#indexObject



15
16
17
18
# File 'app/controllers/solid_stack_web/jobs_controller.rb', line 15

def index
  scope = EXECUTION_MODELS[@status].includes(:job).order(created_at: :desc)
  @pagy, @executions = pagy(scope)
end