Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -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: Rename `EXPERIMENTAL_FILE_HEADER` and `EXPERIMENTAL_FILE_FOOTER` in `webserver_config.py` for arbitrary python code to `FILE_HEADER` and `FILE_FOOTER` ([#777]).
Comment thread
xeniape marked this conversation as resolved.
Outdated

### Fixed

Expand All @@ -23,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

Expand Down
6 changes: 3 additions & 3 deletions docs/modules/airflow/pages/usage-guide/overrides.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -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.

Expand All @@ -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

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
8 changes: 4 additions & 4 deletions tests/templates/kuttl/smoke/41-assert.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
apiVersion: kuttl.dev/v1beta1
kind: TestAssert
timeout: 600
timeout: 300
commands:
#
# Test envOverrides
Expand All @@ -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"'
Loading