Story #3202: As a user, I can sync RPM/SRPM/Erratum from a remote Yum/DNF repository
Save UpdateCollection and UpdateCollectionPackage in bulk
Create a ErrataRelatedModelSaver stage that will:
1. Read in a batch of DeclarativeContent objects
2. Filter out the UpdateRecord objects, and send the other content unit types down the pipeline
3. Bulk-save the UpdateCollection objects.
4. Bulk-save the UpdateCollectionPackage objects.
5. Send the handled UpdateRecord objects down the pipeline
This stage needs to be run just after the ContentUnitAssociation stage. That means it needs a custom pipeline, which RPM can instantiate easily. That work should be done as part of this ticket.
Added by bmbouter over 5 years ago
Get Sync Working with Erratum!
- Adds a new custom stage that saves UpdateCollection and UpdateCollectionPackage objects in bulk
- Uses a new custom pipeline instead of DeclarativeVersion. This is temporary until a new feature is added to DeclarativeVersion to allow for stage injection.
- Adds a viewset and serializer for Erratum. It required one or it would raise an exception that it couldn't serialize the output.
- updates the smash count since 4 Erratum units are now being correctly included
- refactors closure style coroutines in favor of classmethods