Class: Actions::Katello::UpstreamSubscriptions::RemoveEntitlements

Inherits:
Base
  • Object
show all
Defined in:
app/lib/actions/katello/upstream_subscriptions/remove_entitlements.rb

Instance Method Summary collapse

Instance Method Details

#humanized_nameObject



26
27
28
# File 'app/lib/actions/katello/upstream_subscriptions/remove_entitlements.rb', line 26

def humanized_name
  N_("Delete Upstream Subscription")
end

#plan(pool_ids = []) ⇒ Object



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

def plan(pool_ids = [])
  ::Katello::Resources::Candlepin::UpstreamConsumer.get(:include_only => [:uuid])
  ids = pool_ids.uniq.compact
  fail _("No pool IDs were provided.") if ids.blank?
  fail _("Current organization is not set.") unless ::Organization.current

  sequence do
    ids.each do |pid|
      pool = ::Katello::Pool.find(pid)

      fail _("Provided pool with id %s has no upstream entitlement" % pid) if pool.upstream_entitlement_id.nil?

      sub_name = pool.subscription.name

      plan_action(::Actions::Katello::UpstreamSubscriptions::RemoveEntitlement, entitlement_id: pool.upstream_entitlement_id, sub_name: sub_name)
    end

    plan_action(::Actions::Katello::Organization::ManifestRefresh, ::Organization.current)
  end
end

#rescue_strategyObject



30
31
32
# File 'app/lib/actions/katello/upstream_subscriptions/remove_entitlements.rb', line 30

def rescue_strategy
  Dynflow::Action::Rescue::Skip
end