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 2ae1c10bfa add support for Yandex Dataproc cluster labels (#29811)
2ae1c10bfa is described below

commit 2ae1c10bfa59d1b2b5d8d453cd64d9858cb18c0b
Author: Maksim Zinal <[email protected]>
AuthorDate: Wed Aug 23 15:45:26 2023 +0300

    add support for Yandex Dataproc cluster labels (#29811)
    
    Co-authored-by: Maksim Zinal <[email protected]>
---
 airflow/providers/yandex/operators/yandexcloud_dataproc.py    | 5 +++++
 tests/providers/yandex/operators/test_yandexcloud_dataproc.py | 1 +
 2 files changed, 6 insertions(+)

diff --git a/airflow/providers/yandex/operators/yandexcloud_dataproc.py 
b/airflow/providers/yandex/operators/yandexcloud_dataproc.py
index 625827d109..dfd3a07fe4 100644
--- a/airflow/providers/yandex/operators/yandexcloud_dataproc.py
+++ b/airflow/providers/yandex/operators/yandexcloud_dataproc.py
@@ -95,6 +95,8 @@ class DataprocCreateClusterOperator(BaseOperator):
                     Docs: https://cloud.yandex.com/docs/data-proc/concepts/logs
     :param initialization_actions: Set of init-actions to run when cluster 
starts.
                         Docs: 
https://cloud.yandex.com/docs/data-proc/concepts/init-action
+    :param labels: Cluster labels as key:value pairs. No more than 64 per 
resource.
+                        Docs: 
https://cloud.yandex.ru/docs/resource-manager/concepts/labels
     """
 
     def __init__(
@@ -135,6 +137,7 @@ class DataprocCreateClusterOperator(BaseOperator):
         security_group_ids: Iterable[str] | None = None,
         log_group_id: str | None = None,
         initialization_actions: Iterable[InitializationAction] | None = None,
+        labels: dict[str, str] | None = None,
         **kwargs,
     ) -> None:
         super().__init__(**kwargs)
@@ -173,6 +176,7 @@ class DataprocCreateClusterOperator(BaseOperator):
         self.security_group_ids = security_group_ids
         self.log_group_id = log_group_id
         self.initialization_actions = initialization_actions
+        self.labels = labels
 
         self.hook: DataprocHook | None = None
 
@@ -214,6 +218,7 @@ class DataprocCreateClusterOperator(BaseOperator):
             host_group_ids=self.host_group_ids,
             security_group_ids=self.security_group_ids,
             log_group_id=self.log_group_id,
+            labels=self.labels,
             initialization_actions=self.initialization_actions
             and [
                 self.hook.sdk.wrappers.InitializationAction(
diff --git a/tests/providers/yandex/operators/test_yandexcloud_dataproc.py 
b/tests/providers/yandex/operators/test_yandexcloud_dataproc.py
index 8ffe2050a0..879645daf6 100644
--- a/tests/providers/yandex/operators/test_yandexcloud_dataproc.py
+++ b/tests/providers/yandex/operators/test_yandexcloud_dataproc.py
@@ -130,6 +130,7 @@ class TestDataprocClusterCreateOperator:
             enable_ui_proxy=False,
             host_group_ids=None,
             security_group_ids=None,
+            labels=None,
             initialization_actions=None,
         )
         context["task_instance"].xcom_push.assert_has_calls(

Reply via email to