jedcunningham commented on code in PR #67988:
URL: https://github.com/apache/airflow/pull/67988#discussion_r3359218253


##########
dev/README_RELEASE_HELM_CHART.md:
##########
@@ -986,14 +986,45 @@ The `index.yaml` file on the Airflow website allows users 
to easily add the Apac
 helm repo add apache-airflow https://airflow.apache.org
 ```
 
+The index points **every** version -- including the one just released -- at
+`archive.apache.org`, never `downloads.apache.org`. `downloads.apache.org` 
keeps only the
+latest release and is fronted by a CDN (Fastly) whose cache can serve a stale 
`200` that turns
+into a real `404` once a version is removed -- exactly the failure that 
strands users on
+removed-version URLs. `archive.apache.org` is append-only: once a version 
lands there it is
+never removed, so those URLs resolve forever, no matter how stale a cached 
copy of `index.yaml`
+is.
+
+This matters because `index.yaml` is itself served from `airflow.apache.org`, 
which is *also*
+behind Fastly, so a freshly published index can be served stale for the cache 
TTL. That is
+harmless **as long as every URL the index has ever contained stays 
resolvable** -- which the
+archive-only policy guarantees for every superseded version. The one case it 
does not cover
+automatically is the **just-released** version: `archive.apache.org` lags 
`downloads.apache.org`
+(the archive sync is 
[documented](https://infra.apache.org/release-distribution.html) as
+happening "about a day" after a release first appears on downloads -- but that 
is the worst
+case; in practice the sync is usually within minutes, at most a few hours), so 
its archive URL
+can 404 during that window.
+**Do not publish the index entry for the new version until that version is 
live on archive** --
+the steps below block until it is. (Removing superseded versions from 
`dist/release`, by
+contrast, needs no waiting -- they have been on archive since their own 
release.)
+
 To update `index.yaml` for the newly released chart version, follow these 
steps:
 
 ```shell
 git clone https://github.com/apache/airflow-site.git airflow-site
 cd airflow-site
+
+# archive.apache.org lags the release (worst case ~1 day; usually minutes, at 
most hours). Block until the
+# new version is actually downloadable from archive before referencing it in 
the index --
+# otherwise the index could advertise an archive URL that 404s until the sync 
catches up.
+until curl -fsI 
"https://archive.apache.org/dist/airflow/helm-chart/${VERSION}/airflow-${VERSION}.tgz";
 >/dev/null; do
+  echo "airflow-${VERSION}.tgz not on archive.apache.org yet; waiting 10 
min..."
+  sleep 600
+done

Review Comment:
   It might be nice to have a positive message when it does succeed, otherwise 
you come back and see it exited, and if you are lucky you show the exit code in 
your prompt to know it succeeded vs failed somehow.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to