Class: ForemanAnsibleDirector::Api::V2::AnsibleContentController

Inherits:
AnsibleDirectorApiController show all
Defined in:
app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb

Instance Method Summary collapse

Methods inherited from AnsibleDirectorApiController

#attach_request_ctx, #find_organization

Methods included from RequestCtx::RequestContextHelper

#ctx

Instance Method Details

#consistency_checkObject

endregion



139
140
141
142
143
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 139

def consistency_check
  @consistency_check = ::ForemanAnsibleDirector::ActionService.trigger(
    ::ForemanAnsibleDirector::Actions::ConsistencyCheck::Perform
  )
end

#create_unitsObject

endregion



58
59
60
61
62
63
64
65
66
67
68
69
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 58

def create_units
  resolved = ::ForemanAnsibleDirector::AnsibleContent::AnsibleContentHelpers.resolve_import_payload(
    params[:units]
  )
  @bulk_create_task = ::ForemanAnsibleDirector::ActionService.trigger(
    ::ForemanAnsibleDirector::Actions::AnsibleContentUnit::Bulk::Import,
    task_args: {
      resolved_content_units: resolved,
      organization_id: @organization.id,
    }
  )
end

#destroy_unitsObject

endregion



123
124
125
126
127
128
129
130
131
132
133
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 123

def destroy_units
  resolved = ::ForemanAnsibleDirector::AnsibleContent::AnsibleContentHelpers.resolve_destroy_payload(
    destroy_params
  )
  @bulk_destroy_task = ::ForemanAnsibleDirector::ActionService.trigger(
    ::ForemanAnsibleDirector::Actions::AnsibleContentUnit::Bulk::Destroy,
    task_args: {
      resolved_content_units: resolved,
    }
  )
end

#indexObject

endregion



76
77
78
79
80
81
82
83
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 76

def index
  scope = resource_scope_for_index
  @ansible_content_units = if @organization
                             scope.where(organization_id: @organization.id)
                           else
                             scope
                           end
end

#model_of_controllerObject



145
146
147
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 145

def model_of_controller
  resource_class
end

#version_detailObject

endregion



89
90
91
# File 'app/controllers/foreman_ansible_director/api/v2/ansible_content_controller.rb', line 89

def version_detail
  @content_unit_version = ::ForemanAnsibleDirector::ContentUnitVersion.find_by(id: params[:version])
end