module ForemanTasks
Constants
- VERSION
Public Class Methods
async_task(action, *args, &block)
click to toggle source
# File lib/foreman_tasks.rb, line 34 def self.async_task(action, *args, &block) trigger_task true, action, *args, &block end
delay(action, delay_options, *args)
click to toggle source
# File lib/foreman_tasks.rb, line 44 def self.delay(action, delay_options, *args) result = dynflow.world.delay action, delay_options, *args ForemanTasks::Task::DynflowTask.where(:external_id => result.id).first! end
dynflow()
click to toggle source
# File lib/foreman_tasks.rb, line 13 def self.dynflow @dynflow ||= ForemanTasks::Dynflow.new end
sync_task(action, *args, &block)
click to toggle source
# File lib/foreman_tasks.rb, line 38 def self.sync_task(action, *args, &block) trigger_task(false, action, *args, &block).tap do |task| raise TaskError, task if task.execution_plan.error? || task.execution_plan.result == :warning end end
table_name_prefix()
click to toggle source
# File lib/foreman_tasks/engine.rb, line 169 def self.table_name_prefix 'foreman_tasks_' end
trigger(action, *args, &block)
click to toggle source
# File lib/foreman_tasks.rb, line 17 def self.trigger(action, *args, &block) dynflow.world.trigger action, *args, &block end
trigger_task(async, action, *args, &block)
click to toggle source
# File lib/foreman_tasks.rb, line 21 def self.trigger_task(async, action, *args, &block) Match! async, true, false match trigger(action, *args, &block), (on ::Dynflow::World::PlaningFailed.call(error: ~any) do |error| raise error end), (on ::Dynflow::World::Triggered.call(execution_plan_id: ~any, future: ~any) do |id, finished| finished.wait if async == false ForemanTasks::Task::DynflowTask.where(:external_id => id).first! end) end
Public Instance Methods
use_relative_model_naming()
click to toggle source
# File lib/foreman_tasks/engine.rb, line 173 def use_relative_model_naming true end