Good Morning Everyone,
We have been informed thst week at the upstream devs working on the
product-definition-center (PDC) are moving away from the project and are going
to leave it without a maintainer. Since we adopted PDC for a variety of data
flows, this puts us in an awkward position. :(
Ralph and I met up on Tuesday to brainstorm the list of things we actively use
PDC for today and to come up with a contingency plan for how to handle them. One
overarching option is for us (fedora-infra) to take ownership of the PDC
codebase as a whole. We didn't fully explore this option, figuring that the
codebase is large and contains lots of tables, endpoints, and codepaths that we
didn't use nor which we plan to use.
Instead, below we've got the four things we use PDC for and some options for
what to do with each.
With the exception of /modules/, one common pattern that we like is to
investigate splitting out the "django apps" that make up PDC into their own
projects. We're calling these "pdc-lite", for fun. See more below.
The data in the /modules/ PDC endpoint is *also* in the MBS db. Ralph's
team is going to just use that and stop using pdc anything for modules.
We're going to need to patch pungi, mbs for local builds, and a few other
places. This should be a relatively low-pain transition.
* Stream branches, branch ownership, retirement dates?
- SLA/EOL are currently stored in PDC.
- Queried by releng scripts for retirement, fedrepo-req for new branches,
git repo full of yaml file similar to the override repo
compiled into a single JSON blob
Single place for all retired packages
This feels like the lowest tech option.
git gives us change control for free... but people easily get lost in the
"UX" of navigating a gigantic git repo full of plaintext files.
pagure knows nothing about branches currently, so that would be bigger
PDC internally is composed of ~20 "django apps"
definition-center/product- definition-center/tree/master/ pdc/apps
We could pick the 2 or 3 that comprise the branches feature, copy them
out, and turn them into their own service: the "branch definition center":
That would be the "pdc-lite" approach mentionned above, ie: PDC with only
the "app" of interest
* release/life-circle tracking?
PDC lite with just that app of interest
JSON/yaml file on the proxies
PDC-lite with just that app of interest
Drop this entirely?
Adam probably really wants to keep the record of composes.
The "pdc-lite" options are attractive, across the board. One thing we get from
this is greater clarity when discussing things formerly in PDC. If something is
in the branch-definition-center, the compose-definition-center, or the
release-definition-center.. you know what you're talking about. Today, when
talking about whether or not something should be or is in "PDC", it is easy to
I propose we start the discussion on the list and plan for a meeting sometime
late next week to discuss it further with the interested parties (please signal
What do you think?
Pierre and Ralph
infrastructure mailing list -- infrastructure@lists.
To unsubscribe send an email to infrastructure-leave@lists.