Class: Actions::Pulp::Repository::CreateInPlan

Inherits:
Create show all
Defined in:
app/lib/actions/pulp/repository/create_in_plan.rb

Instance Method Summary collapse

Methods inherited from Create

#distributors, #docker_distributor, #docker_importer, #export_distributor, #importer, #iso_distributor, #ostree_distributor, #ostree_importer, #puppet_distributor, #puppet_importer, #puppet_install_distributor, #yum_clone_distributor, #yum_distributor, #yum_or_iso_importer

Methods included from Helpers::Presenter

#presenter

Methods inherited from Abstract

#pulp_extensions, #pulp_resources

Instance Method Details

#error_message(body) ⇒ Object



17
18
19
20
21
# File 'app/lib/actions/pulp/repository/create_in_plan.rb', line 17

def error_message(body)
  JSON.parse(body)['error_message']
rescue JSON::ParserError
  nil
end

#perform_runObject



5
# File 'app/lib/actions/pulp/repository/create_in_plan.rb', line 5

alias_method :perform_run, :run

#plan(input) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'app/lib/actions/pulp/repository/create_in_plan.rb', line 7

def plan(input)
  plan_self(input)
  pulp_extensions.repository.create_with_importer_and_distributors(input[:pulp_id],
                                                                              importer,
                                                                              distributors,
                                                                              display_name: input[:name])
rescue => e
  raise error_message(e.http_body) || e
end

#runObject



23
24
25
# File 'app/lib/actions/pulp/repository/create_in_plan.rb', line 23

def run
  self.output = input
end