-
Task
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
sat-artemis
-
False
-
None
After switching to an SCA-only world, the only Candlepin events consumed by Katello are pool.created and pool.deleted. This happens only during manifest import, since subscriptions are attached only to manifests and no longer attached to hosts or activation keys.
With upcoming SCA-aware manifests, you won't need to attach any subscriptions to your manifest either. So depending on the architecture choices, Katello may not need to consume any events after that work.
However, on https://github.com/candlepin/candlepin/pull/5307#discussion_r2605133424, there's some discussion about how Katello can remove event handling (and dependencies on Artemis) even independently of SCA-aware manifests. The proposed refactoring will look like this:
Before:
1. Katello starts a Candlepin manifest import task, and starts polling the task using a Foreman task
2. Katello consumes pool.created and pool.deleted events, and updates the Katello DB based on those events
3. Katello tracks when the Candlepin task completes, and the Foreman task completes
After:
1. Katello queries Candlepin via API for a list of existing pools
2. Katello starts a Candlepin manifest import task, and starts polling the task using a Foreman task
3. Katello tracks when the Candlepin task completes
4. Katello queries Candlepin via API for the new, resulting list of pools
5. Katello compares the two lists of Candlepin pools and uses the diff to update the Katello DB
6. The Foreman task completes.