Class: Actions::Katello::Product::Create

Inherits:
EntryAction
  • Object
show all
Defined in:
app/lib/actions/katello/product/create.rb

Instance Method Summary collapse

Instance Method Details

#humanized_nameObject



36
37
38
# File 'app/lib/actions/katello/product/create.rb', line 36

def humanized_name
  _("Product Create")
end

#plan(product, organization, subscription_start = nil) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'app/lib/actions/katello/product/create.rb', line 5

def plan(product, organization, subscription_start = nil)
  sequence do
    product.provider = organization.anonymous_provider
    product.organization = organization
    product.setup_label_from_name
    product.cp_id = ::Katello::Product.unused_product_id
    product.save!
    plan_action(::Actions::Candlepin::Product::Create,
                :owner => product.organization.label,
                :name => product.name,
                :id => product.cp_id,
                :multiplier => 1,
                :attributes => [{:name => "arch", :value => "ALL"}])

    plan_action(::Actions::Candlepin::Product::CreateUnlimitedSubscription,
                :owner_key => organization.label,
                :product_id => product.cp_id,
                :start_time => subscription_start)

    action_subject product, :cp_id => product.cp_id

    plan_self
    plan_action Katello::Product::ReindexSubscriptions, product
  end
end

#runObject



31
32
33
34
# File 'app/lib/actions/katello/product/create.rb', line 31

def run
  product = ::Katello::Product.find(input[:product][:id])
  product.update!(:cp_id => input[:cp_id])
end