Motivations
When will we know the time is right? What will push us over the edge?
- We are building up technical debt (concerns or issues or solutions are put off because it would be a breaking change requiring a Pulp 4)
- Self fulfilling prophecy (making migration/upgrade more painful)
What are the list of features that would require a new X Release? (just pick 1)
Thought experiment
- if we did a release a new X release, what are the things that would need to change to make this happen?
- Note: we aren't suggesting time based features, just force us to think about what things need to change in order to start putting out a roadmap where 1 thing can be picked as the Pulp 4 release
Will we ship a v3 and v4 API at the same time?
Pulp 2 issues
- Lots of variation within the systems in the wild
Ideas for future discussions
- Whatever goes into Pulp4 how will it be painful for our integrators/stakeholders/developers?
- Let's gather the superset of ideas for breaking changes and then select what we can afford to deliver in Pulp4.
Problems with 2-to-3 migration (What are we not going to do in Pulp 4)
-
Took a long time to deliver
-
Integrators had to put in huge effort to switch
-
Developers having to split brian between the old and new version.
-
The way you stood up the "old" version and the "new" version were totally different. Hard to maintain two environments.
-
Too many changes (tech stack, dev environment)
-
get management buy in first
-
We had to adapt downstream user (Katello) workflows to a completely new workflow (multiple repositories -> one repository many repository versions, specifically). Doing so was a massive bear and made the migration so much worse.
- A more straightforwards tech stack transition for Pulp 3 without as radical architectural changes (repo versions) would maybe have been preferable - delivered faster and migrated to more quickly
What are the challenges for a pulp 4
How can we address those challenges?
- don't release so often
- don't have Pulp 4 be a separate application that has to stand up separately
- parallel APIs within the same application
- or at least shared workers / content app?
- do as much as we can in Pulp 3 to get close to the ideal, so that Pulp 3 is as small of a change as possible
- e.g. introducing new APIs
Ideas
- We perhaps made some things a bit too flexible in Pulp 3 - e.g. syncing arbitrary remotes against arbitrary repos.
- Keep
Questions
Does Pulp4 mean package that are 4.y or is it a /v4/ REST API shipped in Pulp 3.y