Class: ForemanDeployments::Api::V2::DeploymentsController

Inherits:
BaseController
  • Object
show all
Includes:
Api::TaxonomyScope
Defined in:
app/controllers/foreman_deployments/api/v2/deployments_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

#resource_class_for, #unprocessable_entity_error

Instance Method Details

#createObject



21
22
23
24
25
26
27
28
29
30
31
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 21

def create
  deployment_params = params[:deployment]

  if deployment_params[:stack_id]
    stack = ForemanDeployments::Stack.authorized(:view_stacks).find(deployment_params.delete(:stack_id))
  end
  deployment_params[:configuration] = ForemanDeployments::Configuration.new(:stack => stack)

  @deployment = ForemanDeployments::Deployment.new(deployment_params)
  process_response @deployment.save
end

#indexObject



38
39
40
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 38

def index
  @deployments = resource_scope_for_index
end

#merge_configurationObject



47
48
49
50
51
52
53
54
55
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 47

def merge_configuration
  configuration_update = ForemanDeployments::Configuration.new(:values => params[:values])

  config = @deployment.configurator
  config.merge(@deployment.configuration, configuration_update)
  config.dump(@deployment.configuration)

  @deployment.configuration.save!
end

#replace_configurationObject



62
63
64
65
66
67
68
69
70
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 62

def replace_configuration
  new_configuration = ForemanDeployments::Configuration.new(:values => params[:values])

  config = @deployment.configurator
  config.configure(new_configuration)
  config.dump(@deployment.configuration)

  @deployment.configuration.save!
end

#runObject



83
84
85
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 83

def run
  @deployment.run
end

#showObject



74
75
76
77
78
79
# File 'app/controllers/foreman_deployments/api/v2/deployments_controller.rb', line 74

def show
  config = @deployment.configurator
  config.configure(@deployment.configuration)

  @validation_result = @deployment.parsed_stack.validate
end