Skip to content

Commit 2d3960d

Browse files
committed
better chart versioning wording
Signed-off-by: jkalinic <jkalinic@redhat.com>
1 parent 26eb423 commit 2d3960d

7 files changed

Lines changed: 61 additions & 3 deletions

File tree

.idea/.gitignore

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/checkstyle-idea.xml

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

003-streamshub-console-helm.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,13 @@ Chart versioning will be **independent from the operator version**.
4949

5050
Chart and operator versions will naturally diverge over time - for example, when a chart only fix is needed without an operator release.
5151
Starting from an independent versioning scheme avoids confusion from the outset.
52+
Chart versioning will follow the format <CONSOLE_VERSION>-<CHART_PATCH> (e.g. 1.0.0 for the initial release, 1.0.0-1 if a chart-only fix follows).
53+
This keeps the chart version anchored to the specific operator release it targets, while still allowing chart only patch releases without requiring an operator release.
5254
A clear mapping between chart versions and compatible operator versions will be maintained on the release page and in the documentation.
5355

5456
## CRD management
5557

5658
CRD lifecycle management in Helm has known limitations that need to be addressed explicitly.
57-
Understanding these is important both for the standalone chart and for potential future use as a subchart.
5859

5960
### The core CRDs problem
6061

@@ -63,9 +64,9 @@ Helm's built-in CRD support - placing CRDs in the `crds/` directory - has two si
6364
1. **CRDs in `crds/` are not upgraded during `helm upgrade`**. This creates version drift risk: a new operator release may depend on an updated CRD schema or a new stored version that is not present in the cluster after a routine upgrade.
6465
2. **CRDs in subcharts are silently skipped**. If this chart is later used as a subchart in an umbrella chart, Helm only processes CRDs from the top-level chart's `crds/` directory. Any CRDs in subchart `crds/` directories are silently ignored on install, meaning the Console CRDs would not be present when the operator tries to reconcile.
6566

66-
### Recommended approach
67+
### Solution
6768

68-
The recommended approach is the **`crds/` directory pattern**, consistent with how Strimzi manages its CRDs.
69+
CRDs will be managed using the **`crds/` directory pattern**, consistent with how Strimzi manages its CRDs.
6970

7071
CRDs are installed automatically on `helm install`. The CRD upgrade limitation must be explicitly documented: users must manually apply updated CRDs before upgrading the operator chart (e.g. `kubectl apply -f crds/`).
7172
This is the exactly same pattern Strimzi uses and is an understood trade-off in the Helm ecosystem.

streamshub-proposals.iml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module type="JAVA_MODULE" version="4">
3+
<component name="NewModuleRootManager" inherit-compiler-output="true">
4+
<exclude-output />
5+
<content url="file://$MODULE_DIR$">
6+
<sourceFolder url="file://$MODULE_DIR$/.github/scripts" isTestSource="false" />
7+
</content>
8+
<orderEntry type="inheritedJdk" />
9+
<orderEntry type="sourceFolder" forTests="false" />
10+
</component>
11+
</module>

0 commit comments

Comments
 (0)