Brian,
Thanks for sharing and starting a follow-up.
I have a couple questions targeted at experience.
First, there is the notion of a starting point from an existing project. You noted the practice of forking, using your own, and then using that. From here you have to sync with the upstream to pull in changes to your repo as needed. And, any changes you want you can make in your own setup.
This makes sense for you given the vendor everything strategy Google has.
But, is it the kind of simple a new developer wants? Does it make things easy for the long tail of dev? Does this fit the dependency handling strategies of most companies?
I ask this because the config handling is pushing k8s itself more and more into a competitive space with PaaS systems. That means competing on the experience.
I'm going to posit that many want something simple. For example, specifying the parent (say mysql), fill in their overrides, and then deploy that. Instead of doing any forking.
How does one do that reproducibly? I think that's a how question and reproducibility doing builds with distributed assets is something folks do today.
I'd argue we need something that has that simple experience with distributed assets and you can use it in a vendoring workflow.
Also, what can't be done with Helm today? What would need to change and why? What could be done with supporting tools? For example, you brought up the forking workflow and large repo of charts. What could make "forking" that possible and syncing updates? Are there git tools for that? I'm just thinking out loud.
Thanks for your thoughts on this.
- Matt