
                             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SK
Jr  SS	KJr   " S
 S\	R                  5      rg)z2Surface for creating an App Engine domain mapping.    )absolute_import)division)unicode_literals)appengine_domains_api_client)base)domains_util)flags)logc                   >    \ rS rSrSrSSS.r\S 5       rS rS r	S	r
g
)Create   zCreates a domain mapping.z{description}a            To create a new App Engine domain mapping with an automatically
          managed certificate, run:

              $ {command} 'example.com'

          Note: managed certificates do not support wildcard domain mappings.

          To create a domain with a manual certificate, run:

              $ {command} '*.example.com' --certificate-management=manual --certificate-id=1234

          To create a domain with no associated certificate, run:

              $ {command} '*.example.com' --certificate-management=manual
          )DESCRIPTIONEXAMPLESc                     [         R                  R                  U 5        [         R                  " U SS9  U R                  R                  S5        [         R                  " U 5        g )NF)include_no_certzdefault(id, resourceRecords))r	   DOMAIN_FLAGAddToParserAddCertificateIdFlagdisplay_info	AddFormatAddCertificateManagementFlag)parsers    )lib/surface/app/domain_mappings/create.pyArgsCreate.Args5   sI    	!!&)	vu=
!!"@A	&&v.    c                 $    U R                  U5      $ )N)r   )selfargss     r   Run
Create.Run<   s    ;;tr   c                 (   [         R                  " U R                  5       5      n[        R                  " UR
                  UR                  5        UR                  (       d   UR
                  (       d  SUl        OSUl        [        R                  " UR                  UR                  5      nUR                  UR                  UR
                  U5      n[        R                  " UR                  5        [        R                  R                  S5        U$ )N	automaticmanualzqPlease add the following entries to your domain registrar. DNS changes can require up to 24 hours to take effect.)
api_clientGetApiClientForTrackReleaseTrackr   ValidateCertificateArgscertificate_idcertificate_managementParseCertificateManagementmessagesCreateDomainMappingdomainr
   CreatedResourcestatusPrint)r   r   clientmanagement_typemappings        r   r   Create.Create?   s    ,,T->->-@AF(()<)<)-)D)DF &&  &1#&.#"==446O ((d6I6I)8:G $JJ	BC Nr    N)__name__
__module____qualname____firstlineno____doc__detailed_helpstaticmethodr   r    r   __static_attributes__r6   r   r   r   r      s4    ! 	-, / /r   r   N)r;   
__future__r   r   r   googlecloudsdk.api_lib.app.apir   r%   googlecloudsdk.callioper   googlecloudsdk.command_lib.appr   r	   googlecloudsdk.corer
   CreateCommandr   r6   r   r   <module>rE      s4    9 &  ' U ( 7 0 #:T :r   