
    `                     *   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Ze	j*                   e	j,                  e	j.                  j0                         G d de	j2                                      Zy)z"Command to create a fleet rollout.    )absolute_import)division)unicode_literals)client)util)base)parser_arguments)parser_extensions)flags)log)gkehub_v1alpha_messagesz0
To create a rollout, run:

$ {command} ROLLOUT
c                   z    e Zd ZdZdeiZedej                  fd       Z	de
j                  dej                  fdZy)	CreatezCreate a rollout resource.EXAMPLESparserc                    t        j                  |       }|j                          |j                          |j	                          |j                          |j                          |j                          |j                          y)z!Registers flags for this command.N)	rollout_flagsRolloutFlagsAddRolloutResourceArgAddDisplayName	AddLabelsAddManagedRolloutConfigAddAsyncAddRolloutTypeConfigAddScheduledStartTime)r   r   s     .lib/surface/container/fleet/rollouts/create.pyArgszCreate.Args,   sd     &&v.E	!		OO	!!#	NN	 	!    argsreturnc                    t        j                  |t        j                  j                        }t        j                  t        j                  |      |j                         t        j                  |            }t        j                  | j                               }|j                  |      }t        j                  |      }|j                         r(t!        j"                  |d|j                                |S t        j$                  t        j                  j                        }|j'                  t        j(                  |            }t!        j"                  |d       |S )zRuns the describe command.)release_track)parentrollout	rolloutIdzFleet rollout)kindis_async)r&   )r   RolloutFlagParserr   ReleaseTrackALPHAalpha_messages,GkehubProjectsLocationsRolloutsCreateRequestr   RolloutParentNameRollout	RolloutIdr   FleetClientCreateRollout
RolloutRefAsyncr   CreatedResourceOperationClientWaitOperationRef)	selfr   flag_parserreqfleet_client	operationrollout_refoperation_clientcompleted_operations	            r   Runz
Create.Run8   s   11D--33K 
E
E%%d+##%..&C
 %%D4E4E4GHL**3/I//$'K	
Ok6G6G6I --''-- +//0A0A)0LM/:r   N)__name__
__module____qualname____doc__	_EXAMPLESdetailed_helpstaticmethodr	   ArgumentInterceptorr   r
   	Namespacer+   	Operationr@    r   r   r   r   %   sQ     #y)-	"#77 	" 	"'11 n6N6N r   r   N)rD   
__future__r   r   r   &googlecloudsdk.api_lib.container.fleetr   r   googlecloudsdk.callioper   r	   r
   3googlecloudsdk.command_lib.container.fleet.rolloutsr   r   googlecloudsdk.corer   4googlecloudsdk.generated_clients.apis.gkehub.v1alphar   r+   rE   DefaultUniverseOnlyReleaseTracksr)   r*   CreateCommandr   rK   r   r   <module>rU      sz    ) &  ' 9 7 ( 4 5 V # j	 D%%++,+T + - +r   