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

potiuk 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 d6cb70331f Add workeer log-groomer-sidecar enable option in helm chart 
(#27178)
d6cb70331f is described below

commit d6cb70331f6272789ce5c23b36bd5a5386f46c7e
Author: Bob Du <i...@bobdu.cc>
AuthorDate: Sun Nov 13 19:36:06 2022 +0800

    Add workeer log-groomer-sidecar enable option in helm chart (#27178)
---
 chart/templates/workers/worker-deployment.yaml |  2 +-
 chart/values.schema.json                       |  5 +++++
 chart/values.yaml                              |  2 ++
 tests/charts/test_worker.py                    | 17 +++++++++++++++++
 4 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/chart/templates/workers/worker-deployment.yaml 
b/chart/templates/workers/worker-deployment.yaml
index ccd7abd50a..e3fa252090 100644
--- a/chart/templates/workers/worker-deployment.yaml
+++ b/chart/templates/workers/worker-deployment.yaml
@@ -243,7 +243,7 @@ spec:
         {{- if and (.Values.dags.gitSync.enabled) (not 
.Values.dags.persistence.enabled) }}
         {{- include "git_sync_container" . | indent 8 }}
         {{- end }}
-{{- if $persistence }}
+{{- if and $persistence .Values.workers.logGroomerSidecar.enabled }}
         - name: worker-log-groomer
           image: {{ template "airflow_image" . }}
           imagePullPolicy: {{ .Values.images.airflow.pullPolicy }}
diff --git a/chart/values.schema.json b/chart/values.schema.json
index 234ad58900..7e1148a704 100644
--- a/chart/values.schema.json
+++ b/chart/values.schema.json
@@ -1561,6 +1561,11 @@
                     "type": "object",
                     "additionalProperties": false,
                     "properties": {
+                        "enabled": {
+                            "description": "Whether to deploy the Airflow 
worker log groomer sidecar.",
+                            "type": "boolean",
+                            "default": true
+                        },
                         "command": {
                             "description": "Command to use when running the 
Airflow workers log groomer sidecar (templated).",
                             "type": [
diff --git a/chart/values.yaml b/chart/values.yaml
index bda009b09b..81bf964663 100644
--- a/chart/values.yaml
+++ b/chart/values.yaml
@@ -600,6 +600,8 @@ workers:
   labels: {}
 
   logGroomerSidecar:
+    # Whether to deploy the Airflow worker log groomer sidecar.
+    enabled: true
     # Command to use when running the Airflow worker log groomer sidecar 
(templated).
     command: ~
     # Args to use when running the Airflow worker log groomer sidecar 
(templated).
diff --git a/tests/charts/test_worker.py b/tests/charts/test_worker.py
index 1c495e4f31..c7c9acc3fc 100644
--- a/tests/charts/test_worker.py
+++ b/tests/charts/test_worker.py
@@ -523,6 +523,23 @@ class TestWorker:
         assert ["release-name"] == 
jmespath.search("spec.template.spec.containers[0].command", docs[0])
         assert ["Helm"] == 
jmespath.search("spec.template.spec.containers[0].args", docs[0])
 
+    def test_log_groomer_collector_default_enabled(self):
+        docs = 
render_chart(show_only=["templates/workers/worker-deployment.yaml"])
+        assert 2 == len(jmespath.search("spec.template.spec.containers", 
docs[0]))
+        assert "worker-log-groomer" in [
+            c["name"] for c in 
jmespath.search("spec.template.spec.containers", docs[0])
+        ]
+
+    def test_log_groomer_collector_can_be_disabled(self):
+        docs = render_chart(
+            values={"workers": {"logGroomerSidecar": {"enabled": False}}},
+            show_only=["templates/workers/worker-deployment.yaml"],
+        )
+        assert 1 == len(jmespath.search("spec.template.spec.containers", 
docs[0]))
+        assert "worker-log-groomer" not in [
+            c["name"] for c in 
jmespath.search("spec.template.spec.containers", docs[0])
+        ]
+
     def test_log_groomer_default_command_and_args(self):
         docs = 
render_chart(show_only=["templates/workers/worker-deployment.yaml"])
 

Reply via email to