Description
Currently, the scripts support only two types of packages:
- local charts: charts that exist directly in the Source branch
- forked charts: charts that only exist as a set of patch / overlay / exclude files applied on top of a base
This proposal targets a new type of chart that is a hybrid between local charts and forked charts: branched charts.
What is a branched chart?
A branched chart is a forked chart whose workingDir
is directly maintained in another repository / branch.
On merging a change to the target repository / branch, a Github Workflow will automatically pull the target in the workingDir
of the target package (instead of running Chart.Prepare()
), run make patch
to create or update the generated-changes/
directory, and commit it to the Source branch.
Why is this useful?
Branched charts can directly point to an upstream chart, so you can use existing git rebase tools in order to pull in the latest upstream and resolve patch conflicts to cut a new release.
Pushing in a change to these charts also does not require developers to have to view "diff on diff" PRs since you are directly merging the new workingDir
into the branch, but you can still call out the difference between your repository and an upstream by viewing the Source branch and do stuff like CRD charts directly on the Source branch instead.