
    Z
                     h    S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  S rS	 rS
 rS rg)z%Utils for Robin CNS related commands.    )absolute_import)division)unicode_literals)util)flags)
console_ioc                  4    Sn [         R                  " U SSS9  g)z3Displays warning and prompts user for confirmation.zWARNING:
Enabling Robin CNS is irreversible. Once enabled, it cannot be disabled.
Enabling Robin CNS will take over all unused local Persistent Volumes (PVs)
in the cluster. Any data on these PVs will be permanently lost.FT)messagedefaultcancel_on_noN)r   PromptContinue)r
   s    <lib/googlecloudsdk/command_lib/edge_cloud/container/robin.py"PromptToEnableRobinCNSConfirmationr      s    C'
 GUN    c                    UR                   R                  5       n[        R                  " U5      nU R                  c  UR                  5       U l        U R                  R                  c  UR                  5       U R                  l        U R                  R                  R                  c)  UR                  5       U R                  R                  l        SU R                  R                  R                  l
        g)z4Set Robin CNS config in the cluster request message.NT)calliope_commandReleaseTrackr   GetMessagesModuleclusterClustersystemAddonsConfigSystemAddonsConfigrobinCloudNativeStorageRobinCloudNativeStorageenable)reqargsrelease_trackmessagess       r   EnableRobinCNSInRequestr    $   s    ''446-##M2([[""$CK[[##+%-%@%@%BCKK"[[##;;C((* KK"": CG#++  88?r   c                     A [         R                  " US5      (       d  U$ [        5         [        X!5        [	        SU5        U$ )z8Handles the --enable-robin-cns flag for UPDATE requests.enable_robin_cnsz6system_addons_config.robin_cloud_native_storage.enable)r   FlagIsExplicitlySetr   r    _AddFieldToUpdateMask)refr   requests      r   HandleEnableRobinCNSUpdater'   4   sB     
		"	"4);	<	<N$&'(> 
.r   c                     UR                   (       d  Xl         U$ XR                   ;  a  UR                   S-   U -   Ul         U$ )N,)
updateMask)fieldr&   s     r   r$   r$   E   s?    			N
$$$ ++c1E9G	.r   N)__doc__
__future__r   r   r   +googlecloudsdk.api_lib.edge_cloud.containerr   googlecloudsdk.command_lib.runr   googlecloudsdk.core.consoler   r   r    r'   r$    r   r   <module>r2      s2    , &  ' < 0 2OG "r   