Skip to content

Helm release docs: keep only latest in dist/release (ASF policy)#67988

Open
potiuk wants to merge 1 commit into
apache:mainfrom
potiuk:helm-release-readme-remove-old-releases
Open

Helm release docs: keep only latest in dist/release (ASF policy)#67988
potiuk wants to merge 1 commit into
apache:mainfrom
potiuk:helm-release-readme-remove-old-releases

Conversation

@potiuk
Copy link
Copy Markdown
Member

@potiuk potiuk commented Jun 4, 2026

The Helm chart release README had two issues, both stemming from ASF's policy that dist/release and downloads.apache.org only keep the latest release, while archive.apache.org permanently retains every released version.

1. "Remove old releases" step
It kept the last 2 chart versions and shipped a broken command: cd cd, a working-copy path that does not match where asf-dist is actually checked out, and a single hardcoded PREVIOUS_VERSION. This updates the step to:

  • remove every version except the one just released,
  • fix the working-copy path to reuse ${AIRFLOW_SVN_RELEASE_HELM} (set in the publish step) and drop the cd cd typo,
  • explain why removal must wait until the new index.yaml is published (so users who have not run helm repo update are not left with 404ing URLs).

2. "Update index.yaml in airflow-site" step
The newly released version was merged into index.yaml with a downloads.apache.org URL. Because downloads only serves the latest release, those URLs 404 as soon as the next version ships. This points the merged URL at archive.apache.org/dist instead, matching the rewrite already applied to existing entries earlier in the doc.

Docs-only change to dev/README_RELEASE_HELM_CHART.md.


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 4.8)

Generated-by: Claude Code (Opus 4.8) following the guidelines

@boring-cyborg boring-cyborg Bot added area:dev-tools backport-to-v3-2-test Mark PR with this label to backport to v3-2-test branch labels Jun 4, 2026
@gschuurman
Copy link
Copy Markdown
Contributor

@potiuk I think this may have removed all the previous versions of the helm charts from the chart repository. https://downloads.apache.org/airflow/helm-chart/ The chart index needs to be updated to point to the archive when a new version is released so that users are not directly forced to get a new chart version.

@potiuk
Copy link
Copy Markdown
Member Author

potiuk commented Jun 4, 2026

@potiuk I think this may have removed all the previous versions of the helm charts from the chart repository. https://downloads.apache.org/airflow/helm-chart/ The chart index needs to be updated to point to the archive when a new version is released so that users are not directly forced to get a new chart version.

Yes. That's what we usually do. It turned out to be a Fastly Cache purge issue. But I am also changing it now to always use archive links not download. Download should only ever contain latest release (so removal was good) it was really the index problem that should always point to archive and it should make it resilient to those kind of issues.

…e.org

Two fixes to dev/README_RELEASE_HELM_CHART.md, both stemming from ASF's policy
that dist/release and downloads.apache.org only keep the latest release while
archive.apache.org permanently retains every released version.

1. 'Remove old releases' step: it kept the last 2 chart versions and shipped a
   broken command ('cd cd', a path that does not match where asf-dist is
   checked out, and a single hardcoded PREVIOUS_VERSION). Update it to remove
   every version except the one just released, fix the working-copy path to
   reuse ${AIRFLOW_SVN_RELEASE_HELM}, and explain why removal must wait until
   the new index.yaml is published.

2. 'Update index.yaml in airflow-site' step: the newly released version was
   merged into index.yaml with a downloads.apache.org URL. Because downloads
   only serves the latest release, those URLs 404 as soon as the next version
   ships. Point the merged URL at archive.apache.org/dist instead, matching the
   rewrite already applied to existing entries earlier in the doc.
for old_version in $(svn ls | sed 's:/$::' | grep -vx "${VERSION}"); do
svn rm "${old_version}"
done
svn commit -m "Remove superseded Helm Chart releases, keeping only ${VERSION} in dist/release per ASF release policy (older releases remain available from https://archive.apache.org/dist/airflow/helm-chart/)"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need this detail in every commit message.

Suggested change
svn commit -m "Remove superseded Helm Chart releases, keeping only ${VERSION} in dist/release per ASF release policy (older releases remain available from https://archive.apache.org/dist/airflow/helm-chart/)"
svn commit -m "Remove superseded Helm Chart releases"

Comment on lines +1181 to +1185
Do this only *after* the updated ``index.yaml`` has been published (see the step above), so
that users who have not yet run ``helm repo update`` are not left pointing at ``dist/release``
URLs that now 404 -- it is the published ``index.yaml`` that rewrites old-version URLs to the
archive.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Do this only *after* the updated ``index.yaml`` has been published (see the step above), so
that users who have not yet run ``helm repo update`` are not left pointing at ``dist/release``
URLs that now 404 -- it is the published ``index.yaml`` that rewrites old-version URLs to the
archive.

Everyone uses archive now, we don't need to worry about timing of index.yaml at all.

# Use archive.apache.org (not downloads.apache.org): downloads only keeps the latest
# releases, while archive permanently retains every released version even after it is
# removed from downloads.
helm repo index --merge ./index.yaml . --url "https://archive.apache.org/dist/airflow/helm-chart/${VERSION}"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a delay for the release to be active on archive? For some reason I have a trace of a memory there was and I tried this exact change long ago...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:dev-tools backport-to-v3-2-test Mark PR with this label to backport to v3-2-test branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants