From 7b151914607df10e727e56ecee70afcf73d18506 Mon Sep 17 00:00:00 2001 From: xeniape Date: Mon, 20 Apr 2026 10:55:54 +0200 Subject: [PATCH 1/3] chore: Rename / in --- CHANGELOG.md | 1 + docs/modules/airflow/pages/usage-guide/overrides.adoc | 6 +++--- .../kuttl/smoke/40-install-airflow-cluster.yaml.j2 | 6 +++--- tests/templates/kuttl/smoke/41-assert.yaml | 8 ++++---- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4020252f..b7d859ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ - Document Helm deployed RBAC permissions and remove unnecessary permissions ([#767], [#774]). - BREAKING: `configOverrides` now only accepts the known config file `webserver_config.py`. Previously, arbitrary file names were silently accepted and ignored ([#775]). - Bump `stackable-operator` to 0.110.1, kube to 3.1.0, and snafu to 0.9 ([#775]). +- BREAKING: Renaming `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([]). ### Fixed diff --git a/docs/modules/airflow/pages/usage-guide/overrides.adoc b/docs/modules/airflow/pages/usage-guide/overrides.adoc index 3ed11cd5..f0a00b1c 100644 --- a/docs/modules/airflow/pages/usage-guide/overrides.adoc +++ b/docs/modules/airflow/pages/usage-guide/overrides.adoc @@ -14,7 +14,7 @@ Not all roles use each setting, but some things -- such as external endpoints -- Airflow exposes an environment variable for every Airflow configuration setting, a list of which can be found in the {airflow-config-docs}[Configuration Reference]. As Airflow can be configured with python code too, arbitrary code can be added to the `webserver_config.py`. -You can use either `EXPERIMENTAL_FILE_HEADER` to add code to the top or `EXPERIMENTAL_FILE_FOOTER` to add to the bottom. +You can use either `FILE_HEADER` to add code to the top or `FILE_FOOTER` to add to the bottom. IMPORTANT: This is an experimental feature. @@ -24,9 +24,9 @@ webservers: configOverrides: webserver_config.py: CSV_EXPORT: "{'encoding': 'utf-8'}" - EXPERIMENTAL_FILE_HEADER: | + FILE_HEADER: | from modules.my_module import my_class - EXPERIMENTAL_FILE_FOOTER: | + FILE_FOOTER: | import logging from airflow.security import AirflowSecurityManager diff --git a/tests/templates/kuttl/smoke/40-install-airflow-cluster.yaml.j2 b/tests/templates/kuttl/smoke/40-install-airflow-cluster.yaml.j2 index 5227979c..7513506c 100644 --- a/tests/templates/kuttl/smoke/40-install-airflow-cluster.yaml.j2 +++ b/tests/templates/kuttl/smoke/40-install-airflow-cluster.yaml.j2 @@ -48,17 +48,17 @@ spec: enableVectorAgent: {{ lookup('env', 'VECTOR_AGGREGATOR') | length > 0 }} configOverrides: webserver_config.py: - EXPERIMENTAL_FILE_HEADER: | + FILE_HEADER: | COMMON_HEADER_VAR = "role-value" ROLE_HEADER_VAR = "role-value" - EXPERIMENTAL_FILE_FOOTER: | + FILE_FOOTER: | ROLE_FOOTER_VAR = "role-value" roleGroups: default: replicas: 1 configOverrides: webserver_config.py: - EXPERIMENTAL_FILE_HEADER: | + FILE_HEADER: | COMMON_HEADER_VAR = "group-value" {% if test_scenario['values']['executor'] == 'celery' %} celeryExecutors: diff --git a/tests/templates/kuttl/smoke/41-assert.yaml b/tests/templates/kuttl/smoke/41-assert.yaml index 6169fd93..bd4d4815 100644 --- a/tests/templates/kuttl/smoke/41-assert.yaml +++ b/tests/templates/kuttl/smoke/41-assert.yaml @@ -1,7 +1,7 @@ --- apiVersion: kuttl.dev/v1beta1 kind: TestAssert -timeout: 600 +timeout: 300 commands: # # Test envOverrides @@ -16,6 +16,6 @@ commands: ) # Config Test Assertions - echo "$AIRFLOW_CONFIG" | grep 'COMMON_HEADER_VAR = "group-value"' - echo "$AIRFLOW_CONFIG" | grep 'ROLE_FOOTER_VAR = "role-value"' - echo "$AIRFLOW_CONFIG" | grep -v 'ROLE_HEADER_VAR = "role-value"' + echo "$AIRFLOW_CONFIG" | grep '^COMMON_HEADER_VAR = "group-value"' + echo "$AIRFLOW_CONFIG" | grep '^ROLE_FOOTER_VAR = "role-value"' + echo "$AIRFLOW_CONFIG" | grep -v '^ROLE_HEADER_VAR = "role-value"' From 7bede40671dcd25397187ba9b030882a7e1fbebb Mon Sep 17 00:00:00 2001 From: xeniape Date: Mon, 20 Apr 2026 11:12:30 +0200 Subject: [PATCH 2/3] adjust changelog entry --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b7d859ec..dce5bb7a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ - Document Helm deployed RBAC permissions and remove unnecessary permissions ([#767], [#774]). - BREAKING: `configOverrides` now only accepts the known config file `webserver_config.py`. Previously, arbitrary file names were silently accepted and ignored ([#775]). - Bump `stackable-operator` to 0.110.1, kube to 3.1.0, and snafu to 0.9 ([#775]). -- BREAKING: Renaming `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([]). +- BREAKING: Rename `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([#777]). ### Fixed @@ -24,6 +24,7 @@ [#770]: https://github.com/stackabletech/airflow-operator/pull/770 [#774]: https://github.com/stackabletech/airflow-operator/pull/774 [#775]: https://github.com/stackabletech/airflow-operator/pull/775 +[#777]: https://github.com/stackabletech/airflow-operator/pull/777 ## [26.3.0] - 2026-03-16 From 47abaae36706997b7af5b2122722bff934be8333 Mon Sep 17 00:00:00 2001 From: Xenia Date: Mon, 20 Apr 2026 13:48:07 +0200 Subject: [PATCH 3/3] Update CHANGELOG.md Co-authored-by: Sebastian Bernauer --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dce5bb7a..a588f688 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ - Document Helm deployed RBAC permissions and remove unnecessary permissions ([#767], [#774]). - BREAKING: `configOverrides` now only accepts the known config file `webserver_config.py`. Previously, arbitrary file names were silently accepted and ignored ([#775]). - Bump `stackable-operator` to 0.110.1, kube to 3.1.0, and snafu to 0.9 ([#775]). -- BREAKING: Rename `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([#777]). +- BREAKING: Rename `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([#775], [#777]). ### Fixed