
                         z   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 dd
lmZ ddlmZ ddlmZ ddlmZ ej(                   ej*                  ej,                  j.                  ej,                  j0                        ej2                   G d dej4                                             Zy)Create a PipelineRun/TaskRun.    )absolute_import)division)unicode_literals)cloudbuild_exceptions)client_util)
input_util)pipeline_input_util)waiter)base)	run_flags)log)	resourcesc                   &    e Zd ZdZed        Zd Zy)Creater   c                 .    t        j                  |       } y)zRegister flags for this command.

    Args:
      parser: An argparse.ArgumentParser-like object. It is mocked out in order
        to capture some information, but behaves like an ArgumentParser.
    N)r   AddsCreateFlags)parsers     lib/surface/builds/runs/apply.pyArgszCreate.Args&   s     &&v.F    c                 R   t        j                         }t        j                         }t        j                  |j
                        }|j                  dd      }|st        j                  d      |j                  di       j                  dd      }|st        j                  d      |j                  j                  j                         j                         }|dk(  rt        j                  |      }|j                  j!                  |j#                  |||            }	t$        j&                  j)                  |	j*                  d	
      }
t-        j.                  t-        j0                  |j                  |j2                        |
d      }t$        j&                  j                  |j*                  dt         j4                  | j7                                  }t9        j:                  |       |S |dk(  rt        j<                  |      }|j>                  j!                  |jA                  |||            }	t$        j&                  j)                  |	j*                  d	
      }
t-        j.                  t-        j0                  |j>                  |j2                        |
d      }t$        j&                  j                  |j*                  dt         j4                  | j7                                  }t9        j:                  |       |S t        j                  djC                  |            )z9This is what gets called when the user runs this command.kind zkind is requiredmetadatanamezmetadata.name is requiredPipelineRun)parentpipelineRunpipelineRunIdz(cloudbuild.projects.locations.operations)
collectionzCreating PipelineRunz*cloudbuild.projects.locations.pipelineRuns)r!   api_versionTaskRun)r   taskRun	taskRunIdzCreating TaskRunz&cloudbuild.projects.locations.taskRunsz)Requested resource type {r} not supported)r)"r   GetClientInstanceGetMessagesModuler	   LoadYamlFromPathfilegetr   InvalidYamlErrorCONCEPTSregionParseRelativeNamer
   TektonYamlDataToPipelineRunprojects_locations_pipelineRunsr   4CloudbuildProjectsLocationsPipelineRunsCreateRequestr   REGISTRYParseRelativeNamer   r   WaitForCloudOperationPollerprojects_locations_operationsRELEASE_TRACK_TO_API_VERSIONReleaseTrackr   CreatedResourceTektonYamlDataToTaskRunprojects_locations_taskRuns0CloudbuildProjectsLocationsTaskRunsCreateRequestformat)selfargsclientmessages	yaml_datarun_typerun_idr   pipeline_run	operationoperation_refcreated_pipeline_runpipeline_run_reftask_runcreated_task_runtask_run_refs                   r   Runz
Create.Run0   s   **,F,,.H++DII6I}}VR(H!223EFF]]:r*..vr:F!223NOO]]!!'')668F= (DD
l88??

G
G&" H i  ((::
..%O ; Qm $^^

%
%f&L&L&,&J&JL
/1
 #++11

#
#A!>>!# 2  
*+!!	Y	$<<
h44;;

C
C D i  ((::
..%O ; Qm  

%
%f&H&H&,&J&JL
+-
 ''--


=!>>!# . l 
,'!22
5
<
<x
<
HJ Jr   N)__name__
__module____qualname____doc__staticmethodr   rO    r   r   r   r       s      &/ /GJr   r   N)rS   
__future__r   r   r   !googlecloudsdk.api_lib.cloudbuildr   $googlecloudsdk.api_lib.cloudbuild.v2r   r	   r
   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper   %googlecloudsdk.command_lib.cloudbuildr   googlecloudsdk.corer   r   HiddenReleaseTracksr:   ALPHABETAUniverseCompatibleCreateCommandr   rU   r   r   <module>rc      s    $ &  ' C < ; D . ( ; # ) D%%++T->->-C-CDTJT TJ  E TJr   