
    :
                         d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlm	Z	 ddlm
Z
 ddlmZ dd	lmZ  G d
 de
j                        Zy)z3Set cluster selector for workflow-template command.    )absolute_import)division)unicode_literals)dataproc)arg_parsers)base)flags)labels_utilc                   .    e Zd ZdZddiZed        Zd Zy)SetClusterSelectorz/Set cluster selector for the workflow template.EXAMPLESz
To set placement cluster selector labels on a workflow template, run:

  $ {command} my_template --region=us-central1 --cluster-labels=environment=production
c           	      8   t        j                  | j                               }|j                  ddt	        j
                  t        j                  t        j                  d      t        j                  d       t        j                  |d|j                         y )Nz--cluster-labelsz	KEY=VALUE   )key_type
value_type
min_lengthz'A list of label KEY=VALUE pairs to add.)metavartypeactionhelpzset cluster selector)dpDataprocReleaseTrackadd_argumentr   ArgDictr
   KEY_FORMAT_VALIDATORVALUE_FORMAT_VALIDATORUpdateActionr	   AddTemplateResourceArgapi_version)clsparserr   s      ?lib/surface/dataproc/workflow_templates/set_cluster_selector.pyArgszSetClusterSelector.Args'   s    {{3++-.H
   55"99 ''6  8 
  )?!)!5!57    c                 F   t        j                  | j                               }|j                  j                  j                         }|j                  ||j                        }t        j                  |j                        j                  |j                  j                  j                        j                         }|j                  j                  |      }|j                  j!                  |      |_        |j$                  j&                  j)                  |      }|S )N)	additions)clusterLabels)clusterSelector)r   r   r   CONCEPTStemplateParseGetRegionsWorkflowTemplateversionr
   Diffcluster_labelsApplymessagesClusterSelectorClusterLabelsValue	GetOrNoneWorkflowTemplatePlacement	placementclient"projects_regions_workflowTemplatesUpdate)selfargsr   template_refworkflow_templatelabelscluster_selectorresponses           r#   RunzSetClusterSelector.Run6   s    {{4,,./H==))//1L ;;dll$ (;(;<BB))<<>>Gik   ((88v8N"*"3"3"M"M( #N #* AAHHHOr%   N)__name__
__module____qualname____doc__detailed_helpclassmethodr$   rB    r%   r#   r   r      s/    7  - 7 7r%   r   N)rF   
__future__r   r   r   googlecloudsdk.api_lib.dataprocr   r   googlecloudsdk.callioper   r   #googlecloudsdk.command_lib.dataprocr	   $googlecloudsdk.command_lib.util.argsr
   UpdateCommandr   rI   r%   r#   <module>rP      s4    : &  ' : / ( 5 <,++ ,r%   