Sync gh-pages docs version on canonical release + fix stale/missing OCI version refs#273
Merged
Merged
Conversation
8247d8a to
feb5cb1
Compare
… refs
Adds a sync-gh-pages-version job to operator-release.yml that, on every
canonical dated release tag, checks out gh-pages (unprotected branch, no
PR needed) and bumps config/_default/config.toml's version/latest_version
fields, pushing with secrets.PAT rather than GITHUB_TOKEN - pushes
authored by GITHUB_TOKEN don't trigger other workflows, which would
silently skip gh-pages' own publish-docs.yaml deploy. gh-pages' docs
version had drifted ~10 releases stale with nothing keeping it in sync.
That same push now also drives CRD reference doc regeneration: gh-pages'
own .github/workflows/regenerate-crd-docs.yaml (companion change, already
pushed directly to that branch) triggers on push to config.toml and
regenerates content/docs/configurations/crd/*.md from the release's
actual config/base/crds/*.yaml via github.com/giantswarm/crd-docs-generator
- identified as the tool that originally generated those pages via
structural fingerprinting (aliases path convention, additionalProperties
not being recursed, etc. all matching its template/algorithm exactly).
Keeping all generation logic on gh-pages instead of inlining it here
avoids a real GitHub platform requirement: workflow_dispatch-by-name only
works for workflows registered on the repo's default branch, confirmed
by testing - piggybacking on this existing push sidesteps that need
entirely, the same way publish-docs.yaml/ci-docs.yaml already do.
Also:
- Fixes install/upgrade examples across README.md and the chart's README
that omitted --version for oci://ghcr.io/adobe/helm-charts/kafka-operator
- OCI registries have no floating "latest" tag, so these failed as
written.
- Bumps the stale ZooKeeper operator/image tag reference from
0.28.0-adobe-20250923 to 0.2.15-adobe-20260423 (verified against
GitHub Packages for adobe/zookeeper-operator).
- Has Renovate also track the gh-pages branch (baseBranchPatterns) for
its own package.json/Action pins, scoped so the existing gomod-disable
rule (handled by a separate workflow on master) doesn't also swallow
gh-pages' Hugo Modules go.mod, and adds a custom-manager entry so
Renovate tracks crd-docs-generator's pinned release version too.
feb5cb1 to
88e8430
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
sync-gh-pages-versionjob tooperator-release.yml: for canonical dated release tags, pushes the bumpedversion/latest_versionfields directly togh-pages'sconfig/_default/config.toml(unprotected branch, no PR needed), usingsecrets.PATso the push isn't suppressed and correctly triggers the existingpublish-docs.yamlsite rebuild. The gh-pages docs version was previously ~10 releases / several months stale with no automation keeping it in sync.README.mdandcharts/kafka-operator/README.md(.gotmpl) that omitted--versionforoci://ghcr.io/adobe/helm-charts/kafka-operator— OCI registries have no floating "latest" tag, so these examples failed as written.README.mdfrom0.2.15-adobe-20250923to0.2.15-adobe-20260423(verified against GitHub Packages foradobe/zookeeper-operator:zookeeper-operator,zookeeper-operator/zookeeper,helm-charts/zookeeper-operator).Companion fixes were already pushed directly to
gh-pages(same--versiongap, de-hardcoded remaining Koperator version refs to use thelatest_versionHugo param, and the same ZooKeeper version bump).Test plan
actionlinton the modified workflow — no new findings (all existing findings are pre-existing, in untouched lines)python3 -c "import yaml; yaml.safe_load(...)")config.tomlsed substitutions against the real file fetched fromgh-pages— only the two intended fields change, comment preservedcharts/kafka-operator/README.mdviahelm-docsto confirm the template renders correctly, then hand-applied only the intended lines (avoided bundling unrelated values-table drift from stalevalues.yaml/README sync)🤖 Generated with Claude Code