
    Z                     J   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 ej                   ej                  ej                  j                   ej                  j"                  ej                  j$                         G d	 d
ej&                                      Zy)z/Command to list suggested environment upgrades.    )absolute_import)division)unicode_literals)base)image_versions_util)resource_args)logc                   &    e Zd ZdZed        Zd Zy)ListUpgradesa  List the Cloud Composer image version upgrades for a specific environment.

  {command} prints a table listing the suggested image-version upgrades with the
  following columns:
  * Image Version ID
  * Composer 'default' flag
  * List of supported python versions
  c                     t        j                  | d       t        j                  j	                  |        | j
                  j                  d       y )Nzto list upgradesztable[box,title="SUGGESTED UPGRADES"](imageVersionId:label="IMAGE VERSION",isDefault:label="COMPOSER DEFAULT",supportedPythonVersions.list():label="SUPPORTED PYTHON VERSIONS"))r   AddEnvironmentResourceArgr   URI_FLAGRemoveFromParserdisplay_info	AddFormat)parsers    2lib/surface/composer/environments/list_upgrades.pyArgszListUpgrades.Args(   s@    ++F4FGMM""6*
!!	LM    c                     |j                   j                  j                         }t        j                  j                  d       t        j                  || j                               S )Nz&Fetching list of suggested upgrades...)release_track)	CONCEPTSenvironmentParser	   statusPrintimage_versions_command_utilListImageVersionUpgradesReleaseTrack)selfargsenv_refs      r   RunzListUpgrades.Run2   sN    mm''--/GJJ=>&??t0024 4r   N)__name__
__module____qualname____doc__staticmethodr   r#    r   r   r   r      s"     M M4r   r   N)r'   
__future__r   r   r   googlecloudsdk.callioper   #googlecloudsdk.command_lib.composerr   r   r   googlecloudsdk.corer	   DefaultUniverseOnlyReleaseTracksr   ALPHABETAGAListCommandr   r)   r   r   <module>r4      s    6 &  ' ( b = # D%%++T->->-C-C%%((*44## 4* 4r   