
                         >   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 ej                   ej                  ej                  j                  ej                  j                   ej                  j"                         G d d	ej$                                      Zy
)z)Command for updating Workstation configs.    )absolute_import)division)unicode_literals)configs)base)flagsc                   ,    e Zd ZdZed        Zd Zd Zy)Updatea  Updates a workstation configuration.

  Updates a workstation configuration.

  ## EXAMPLES

    To update a configuration with the 'e2-standard-8' machine type and a
    IntelliJ image, run:

      $ {command} CONFIG --machine-type=e2-standard-8
        --container-predefined-image=intellij

    To update a configuration to disable Secure Boot, virtual trusted platform
    module (vTPM) and integrity monitoring, run:

      $ {command} CONFIG --no-shielded-secure-boot --no-shielded-vtpm
      --no-shielded-integrity-monitoring
  c                    t        j                  |       t        j                  |       t        j                  |d       t        j                  |d       t        j
                  |d       t        j                  |       t        j                  |       t        j                  |d       t        j                  |d       t        j                  |       t        j                  |       t        j                  |d       t        j                  |d       t        j                  |d       t        j                  |d       t        j                   |d       t        j"                  |d       t        j$                  |d       t        j&                  |       t        j(                  |d       t        j*                  |d       t        j,                  |       t        j.                  |       t        j0                  |       t        j2                  |       t        j4                  |       t        j6                  |d       t        j8                  |       t        j:                  |       t        j<                  |       t        j>                  |       t        j@                  |       | jC                         tD        jB                  jF                  k7  rUt        jH                  |       t        jJ                  |       t        jL                  |       t        jN                  |       y y )NF)use_default)(workstations_flagsAddAsyncFlagAddConfigResourceArgAddIdleTimeoutFlagAddRunningTimeoutFlagAddMachineTypeFlagAddServiceAccountFlagAddNetworkTagsAddPoolSizeAddDisablePublicIpAddressesAddEnableTcpConnectionsAddServiceAccountScopesAddShieldedSecureBootAddShieldedVtpmAddShieldedIntegrityMonitoringAddEnableAuditAgentAddEnableConfidentialComputeAddEnableNestedVirtualization$AddGrantWorkstationAdminRoleOnCreateAddDisableSSHToVMAddBootDiskSizeAddContainerImageFieldAddContainerCommandFieldAddContainerArgsFieldAddContainerEnvFieldAddContainerWorkingDirFieldAddContainerRunAsUserFieldAddPersistentDirectoriesAddLabelsFieldAddAcceleratorFields	AddVmTagsAddAllowedPortsFlagAddMaxUsableWorkstationsCountReleaseTrackr   GA9AddDisallowUnauthenticatedCorsPreflightRequestsToggleFlagAddBoostConfigs(AddDisableLocalhostReplacementToggleFlagAddReservationAffinity)clsparsers     *lib/surface/workstations/configs/update.pyArgszUpdate.Args2   sD   ##F+++F3))&eD,,VG))&eD,,V4%%f-""6u=226uM..v6..v6,,VG&&v5A55f%P**6uE33FN44VO;;E ((0&&v5A--f%H//7,,V4++F3226:11&9//EJ%%f-++F3  (**6244V<
T..111RR
 ((0AA&I//7 2    c                      	 y)NzFworkstations.projects.locations.workstationClusters.workstationConfigs )selfs    r6   
CollectionzUpdate.Collection^   s
    Pr8   c                 n    t        j                  | j                               }|j                  |      }|S )N)r   Configsr.   r
   )r;   argsclientresponses       r6   Runz
Update.Runc   s,    __T..01F}}T"HOr8   N)__name__
__module____qualname____doc__classmethodr7   r<   rB   r:   r8   r6   r
   r
      s&    
& )8 )8V
r8   r
   N)rF   
__future__r   r   r   #googlecloudsdk.api_lib.workstationsr   googlecloudsdk.callioper   'googlecloudsdk.command_lib.workstationsr   r   DefaultUniverseOnlyReleaseTracksr.   r/   BETAALPHAUpdateCommandr
   r:   r8   r6   <module>rQ      s    0 &  ' 7 ( O $++00$2C2C2I2IHT H Hr8   