Class: Actions::Katello::Product::Update

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

Instance Method Summary collapse

Instance Method Details

#plan(product, product_params) ⇒ Object



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

def plan(product, product_params)
  action_subject product
  product.update!(product_params)
  if product.previous_changes.key?('gpg_key_id')
    plan_action(::Actions::Katello::Product::RepositoriesGpgReset, product)
  end
  if (product.previous_changes.key?('ssl_ca_cert_id') ||
      product.previous_changes.key?('ssl_client_cert_id') ||
      product.previous_changes.key?('ssl_client_key_id'))
    plan_action(::Actions::Katello::Product::RepositoriesCertsReset, product)
  end

  if product.previous_changes.key?('name')
    plan_action(::Actions::Candlepin::Product::Update, owner: product.organization.label, name: product.name, id: product.cp_id)
    product.subscriptions.each do |subscription|
      plan_action(::Actions::Katello::Subscription::Update, subscription, name: product.name)
    end
  end

  product.reload
end