DrFaust92 opened a new pull request, #73016:
URL: https://github.com/apache/airflow/pull/73016

   The `checksum/*` pod annotations hash the entire rendered ConfigMap or 
Secret, and the manifest's `metadata.labels` include `helm.sh/chart`. That 
value changes on every chart version bump, so every Airflow component is 
restarted on `helm upgrade` even when no configuration has changed.
   
   This adds an `airflow.configMapOrSecretContentHash` helper that hashes only 
the `data`/`stringData` sections, and uses it for all 37 `checksum/*` 
annotations across the api-server, scheduler, dag-processor, triggerer, worker, 
flower, statsd, otel-collector and pgbouncer templates.
   
   Rendering the chart at 2.0.0 against a bumped version with identical values 
is now byte-identical, while changing `config.core.parallelism` still moves 
`checksum/airflow-config`. The full helm test suite passes (2155 tests).
   
   The same fix was recently made in the argo-cd chart 
(argoproj/argo-helm#4044); the loki chart uses the same data-only hashing.
   
   Unrelated, but found while testing: `checksum/jwt-secret` is unstable on 
every render, and even differs between two pods in the same render, because 
`chart/templates/secrets/jwt-secret.yaml` defaults to `randAlphaNum 128` and 
each `include` re-evaluates it. With `jwtSecret` unset those pods restart on 
every upgrade regardless of this change. Happy to open a separate issue or PR 
for that.
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [X] Yes — Claude Opus 5 (Claude Code)
   
   Generated-by: Claude Opus 5 (Claude Code) following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)


-- 
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