From 03698c60e1bc9e0c332cd015be6f70e236033c6f Mon Sep 17 00:00:00 2001 From: jx2lee Date: Mon, 16 Dec 2024 23:55:49 +0900 Subject: [PATCH 1/4] add envSourceContainerName in ScaledObject --- chart/templates/triggerer/triggerer-kedaautoscaler.yaml | 1 + chart/templates/workers/worker-kedaautoscaler.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/chart/templates/triggerer/triggerer-kedaautoscaler.yaml b/chart/templates/triggerer/triggerer-kedaautoscaler.yaml index f719281c30b46..d4254d01fe00a 100644 --- a/chart/templates/triggerer/triggerer-kedaautoscaler.yaml +++ b/chart/templates/triggerer/triggerer-kedaautoscaler.yaml @@ -40,6 +40,7 @@ spec: scaleTargetRef: kind: {{ ternary "StatefulSet" "Deployment" .Values.triggerer.persistence.enabled }} name: {{ .Release.Name }}-triggerer + envSourceContainerName: {{ include "airflow.fullname" . }}-worker pollingInterval: {{ .Values.triggerer.keda.pollingInterval }} cooldownPeriod: {{ .Values.triggerer.keda.cooldownPeriod }} minReplicaCount: {{ .Values.triggerer.keda.minReplicaCount }} diff --git a/chart/templates/workers/worker-kedaautoscaler.yaml b/chart/templates/workers/worker-kedaautoscaler.yaml index 0f1ca7a1cbada..ddf1e33b4262a 100644 --- a/chart/templates/workers/worker-kedaautoscaler.yaml +++ b/chart/templates/workers/worker-kedaautoscaler.yaml @@ -39,6 +39,7 @@ spec: scaleTargetRef: kind: {{ ternary "StatefulSet" "Deployment" .Values.workers.persistence.enabled }} name: {{ include "airflow.fullname" . }}-worker + envSourceContainerName: {{ include "airflow.fullname" . }}-worker pollingInterval: {{ .Values.workers.keda.pollingInterval }} cooldownPeriod: {{ .Values.workers.keda.cooldownPeriod }} minReplicaCount: {{ .Values.workers.keda.minReplicaCount }} From 062bb4b83f0cde23429e2a4a6351e51748d23fd4 Mon Sep 17 00:00:00 2001 From: jx2lee Date: Tue, 17 Dec 2024 00:02:34 +0900 Subject: [PATCH 2/4] test --- helm_tests/other/test_keda.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/helm_tests/other/test_keda.py b/helm_tests/other/test_keda.py index 22513ee82e5cf..6fa129596da5f 100644 --- a/helm_tests/other/test_keda.py +++ b/helm_tests/other/test_keda.py @@ -55,6 +55,19 @@ def test_keda_enabled(self, executor, is_created): else: assert docs == [] + @pytest.mark.parametrize( + "executor", ["CeleryExecutor", "CeleryKubernetesExecutor", "CeleryExecutor,KubernetesExecutor"] + ) + def test_include_event_source_container_name_in_scaled_object(self, executor): + docs = render_chart( + values={ + "workers": {"keda": {"enabled": True}, "persistence": {"enabled": False}}, + "executor": executor, + }, + show_only=["templates/workers/worker-kedaautoscaler.yaml"], + ) + assert jmespath.search("spec.scaleTargetRef.envSourceContainerName", docs[0]) == "release-name-worker" + @pytest.mark.parametrize( "executor", ["CeleryExecutor", "CeleryKubernetesExecutor", "CeleryExecutor,KubernetesExecutor"] ) From b2279b36ecda0f8c64f44b4d8f66d0f1d41a4137 Mon Sep 17 00:00:00 2001 From: jx2lee Date: Thu, 19 Dec 2024 07:35:24 +0900 Subject: [PATCH 3/4] rename container name --- chart/templates/triggerer/triggerer-kedaautoscaler.yaml | 2 +- chart/templates/workers/worker-kedaautoscaler.yaml | 2 +- helm_tests/other/test_keda.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/chart/templates/triggerer/triggerer-kedaautoscaler.yaml b/chart/templates/triggerer/triggerer-kedaautoscaler.yaml index d4254d01fe00a..4eda2858f0272 100644 --- a/chart/templates/triggerer/triggerer-kedaautoscaler.yaml +++ b/chart/templates/triggerer/triggerer-kedaautoscaler.yaml @@ -40,7 +40,7 @@ spec: scaleTargetRef: kind: {{ ternary "StatefulSet" "Deployment" .Values.triggerer.persistence.enabled }} name: {{ .Release.Name }}-triggerer - envSourceContainerName: {{ include "airflow.fullname" . }}-worker + envSourceContainerName: triggerer pollingInterval: {{ .Values.triggerer.keda.pollingInterval }} cooldownPeriod: {{ .Values.triggerer.keda.cooldownPeriod }} minReplicaCount: {{ .Values.triggerer.keda.minReplicaCount }} diff --git a/chart/templates/workers/worker-kedaautoscaler.yaml b/chart/templates/workers/worker-kedaautoscaler.yaml index ddf1e33b4262a..ab794c899636b 100644 --- a/chart/templates/workers/worker-kedaautoscaler.yaml +++ b/chart/templates/workers/worker-kedaautoscaler.yaml @@ -39,7 +39,7 @@ spec: scaleTargetRef: kind: {{ ternary "StatefulSet" "Deployment" .Values.workers.persistence.enabled }} name: {{ include "airflow.fullname" . }}-worker - envSourceContainerName: {{ include "airflow.fullname" . }}-worker + envSourceContainerName: worker pollingInterval: {{ .Values.workers.keda.pollingInterval }} cooldownPeriod: {{ .Values.workers.keda.cooldownPeriod }} minReplicaCount: {{ .Values.workers.keda.minReplicaCount }} diff --git a/helm_tests/other/test_keda.py b/helm_tests/other/test_keda.py index 6fa129596da5f..113a14f3abfde 100644 --- a/helm_tests/other/test_keda.py +++ b/helm_tests/other/test_keda.py @@ -66,7 +66,7 @@ def test_include_event_source_container_name_in_scaled_object(self, executor): }, show_only=["templates/workers/worker-kedaautoscaler.yaml"], ) - assert jmespath.search("spec.scaleTargetRef.envSourceContainerName", docs[0]) == "release-name-worker" + assert jmespath.search("spec.scaleTargetRef.envSourceContainerName", docs[0]) == "worker" @pytest.mark.parametrize( "executor", ["CeleryExecutor", "CeleryKubernetesExecutor", "CeleryExecutor,KubernetesExecutor"] From 4924dc8f58142ac90a2c80a8193f24542f8a3ad7 Mon Sep 17 00:00:00 2001 From: jx2lee Date: Wed, 22 Jan 2025 20:51:06 +0900 Subject: [PATCH 4/4] tests for triggerer --- helm_tests/airflow_core/test_triggerer.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/helm_tests/airflow_core/test_triggerer.py b/helm_tests/airflow_core/test_triggerer.py index 54ff4d266a182..cfeed91ed7541 100644 --- a/helm_tests/airflow_core/test_triggerer.py +++ b/helm_tests/airflow_core/test_triggerer.py @@ -782,6 +782,21 @@ def test_should_remove_replicas_field(self): assert "replicas" not in jmespath.search("spec", docs[0]) + @pytest.mark.parametrize( + "executor", ["CeleryExecutor", "CeleryKubernetesExecutor", "CeleryExecutor,KubernetesExecutor"] + ) + def test_include_event_source_container_name_in_scaled_object_for_triggerer(self, executor): + docs = render_chart( + values={ + "triggerer": { + "keda": {"enabled": True}, + }, + }, + show_only=["templates/triggerer/triggerer-kedaautoscaler.yaml"], + ) + + assert jmespath.search("spec.scaleTargetRef.envSourceContainerName", docs[0]) == "triggerer" + @pytest.mark.parametrize( "query, expected_query", [