Class: ForemanDeployments::Tasks::WaitUntilBuiltTaskDefinition::Action

Inherits:
BaseAction
  • Object
show all
Includes:
Dynflow::Action::Polling
Defined in:
app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb

Instance Method Summary collapse

Instance Method Details

#done?Boolean

Returns:

  • (Boolean)


7
8
9
# File 'app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb', line 7

def done?
  external_task['built'] == true
end

#invoke_external_taskObject



15
16
17
18
# File 'app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb', line 15

def invoke_external_task
  schedule_timeout(timeout) unless timeout <= 0
  WaitUntilBuiltTaskDefinition.build_status
end

#poll_external_taskObject



20
21
22
23
24
25
26
# File 'app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb', line 20

def poll_external_task
  fail(_("'%s' is a required parameter") % 'host_id') unless input.key?('host_id')

  host = Host.find(input['host_id'])
  WaitUntilBuiltTaskDefinition.create_output(host, output)
  WaitUntilBuiltTaskDefinition.build_status(host)
end

#poll_intervalObject



28
29
30
# File 'app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb', line 28

def poll_interval
  30
end

#timeoutObject



11
12
13
# File 'app/lib/foreman_deployments/tasks/wait_until_built_task_definition.rb', line 11

def timeout
  input['timeout'] || 2 * 60 * 60 # 2 hours default
end