Project

Profile

Help

« Previous | Next » 

Revision 7705651b

Added by semyers over 4 years ago

Errata collection names are unique per-repo

This ended up being a pain because of how much filtering work we were doing in the updateinfo XML context. I was able to make it work as-is, and just about had a PR up, but then Tanya posted this PR:

https://github.com/pulp/pulp_rpm/pull/1024

That PR opened up a possibility that I hasn't seriously considered, which was to move the unit/repo filtering logic out of the XML generation context. Now, the UpdatinfoXMLFileContext writes whatever you tell it to write in the add_unit_metadata step, and the filtering takes place in calling Publish steps. Since the PublishErrataStep knows what repo it's publishing (er, "distributing"), all of the business of trying to pull a repo_id off the conduit can go away.

Buried deep in all of this is the single line that actually fixes the bug, which is to set errata pkglist names to repo_id when publishing, as well as related tests to make sure that happens.

If desired, I can break out refactor from the collection name bugfix, and even open up a refactor issue in redmine going into more detail about why just making the change right in UpdateinfoXMLFileContext was not the right solution.

tl;dr we painted ourselves into a corner, Tanya gave us a way out, and I took it. :)

closes #2560 https://pulp.plan.io/issues/2560