This is an automated email from the ASF dual-hosted git repository.

dstandish pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 71e0e6e76b Helm chart should set AIRFLOW_HOME from airflowHome (#34839)
71e0e6e76b is described below

commit 71e0e6e76bcdc36f5a242c5d6412af6677f99d53
Author: Daniel Standish <15932138+dstand...@users.noreply.github.com>
AuthorDate: Tue Nov 7 13:07:54 2023 -0800

    Helm chart should set AIRFLOW_HOME from airflowHome (#34839)
---
 chart/templates/_helpers.yaml                 |  2 ++
 helm_tests/airflow_aux/test_airflow_common.py |  2 ++
 helm_tests/airflow_core/test_env.py           | 42 +++++++++++++++++++++++++++
 3 files changed, 46 insertions(+)

diff --git a/chart/templates/_helpers.yaml b/chart/templates/_helpers.yaml
index c8b41d8c29..d7b3c43079 100644
--- a/chart/templates/_helpers.yaml
+++ b/chart/templates/_helpers.yaml
@@ -60,6 +60,8 @@ If release name contains chart name it will be used as a full 
name.
         name: {{ template "fernet_key_secret" . }}
         key: fernet-key
   {{- end }}
+  - name: AIRFLOW_HOME
+    value: {{ .Values.airflowHome }}
   # For Airflow <2.3, backward compatibility; moved to [database] in 2.3
   {{- if .Values.enableBuiltInSecretEnvVars.AIRFLOW__CORE__SQL_ALCHEMY_CONN }}
   - name: AIRFLOW__CORE__SQL_ALCHEMY_CONN
diff --git a/helm_tests/airflow_aux/test_airflow_common.py 
b/helm_tests/airflow_aux/test_airflow_common.py
index e25b96e5a1..5257b490d2 100644
--- a/helm_tests/airflow_aux/test_airflow_common.py
+++ b/helm_tests/airflow_aux/test_airflow_common.py
@@ -331,6 +331,7 @@ class TestAirflowCommon:
         )
         expected_vars = [
             "AIRFLOW__CORE__FERNET_KEY",
+            "AIRFLOW_HOME",
             "AIRFLOW_CONN_AIRFLOW_DB",
             "AIRFLOW__CELERY__BROKER_URL",
         ]
@@ -355,6 +356,7 @@ class TestAirflowCommon:
         )
         expected_vars = [
             "AIRFLOW__CORE__FERNET_KEY",
+            "AIRFLOW_HOME",
             "AIRFLOW__CORE__SQL_ALCHEMY_CONN",
             "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN",
             "AIRFLOW_CONN_AIRFLOW_DB",
diff --git a/helm_tests/airflow_core/test_env.py 
b/helm_tests/airflow_core/test_env.py
new file mode 100644
index 0000000000..5a5ee6580a
--- /dev/null
+++ b/helm_tests/airflow_core/test_env.py
@@ -0,0 +1,42 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+from __future__ import annotations
+
+import jmespath
+
+from tests.charts.helm_template_generator import render_chart
+
+
+def test_should_add_airflow_home():
+    exp_path = "/not/even/a/real/path"
+    docs = render_chart(
+        values={"airflowHome": exp_path},
+        show_only=["templates/webserver/webserver-deployment.yaml"],
+    )
+    assert {"name": "AIRFLOW_HOME", "value": exp_path} in jmespath.search(
+        "spec.template.spec.containers[0].env", docs[0]
+    )
+
+
+def test_should_add_airflow_home_notset():
+    docs = render_chart(
+        values={},
+        show_only=["templates/webserver/webserver-deployment.yaml"],
+    )
+    assert {"name": "AIRFLOW_HOME", "value": "/opt/airflow"} in 
jmespath.search(
+        "spec.template.spec.containers[0].env", docs[0]
+    )

Reply via email to