:doc:`Proton <../../proton>` / Client / create_environment_template_version

***********************************
create_environment_template_version
***********************************



.. py:method:: Proton.Client.create_environment_template_version(**kwargs)

  

  Create a new major or minor version of an environment template. A major version of an environment template is a version that *isn't* backwards compatible. A minor version of an environment template is a version that's backwards compatible within its major version.

  

  .. danger::

        This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.


  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/proton-2020-07-20/CreateEnvironmentTemplateVersion>`_  


  **Request Syntax**
  ::

    response = client.create_environment_template_version(
        clientToken='string',
        description='string',
        majorVersion='string',
        source={
            's3': {
                'bucket': 'string',
                'key': 'string'
            }
        },
        tags=[
            {
                'key': 'string',
                'value': 'string'
            },
        ],
        templateName='string'
    )
    
  :type clientToken: string
  :param clientToken: 

    When included, if two identical requests are made with the same client token, Proton returns the environment template version that the first request created.

    This field is autopopulated if not provided.

  
  :type description: string
  :param description: 

    A description of the new version of an environment template.

    

  
  :type majorVersion: string
  :param majorVersion: 

    To create a new minor version of the environment template, include ``major Version``.

     

    To create a new major and minor version of the environment template, exclude ``major Version``.

    

  
  :type source: dict
  :param source: **[REQUIRED]** 

    An object that includes the template bundle S3 bucket path and name for the new version of an template.

    .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``s3``. 

  
    - **s3** *(dict) --* 

      An S3 source object that includes the template bundle S3 path and name for a template minor version.

      

    
      - **bucket** *(string) --* **[REQUIRED]** 

        The name of the S3 bucket that contains a template bundle.

        

      
      - **key** *(string) --* **[REQUIRED]** 

        The path to the S3 bucket that contains a template bundle.

        

      
    
  
  :type tags: list
  :param tags: 

    An optional list of metadata items that you can associate with the Proton environment template version. A tag is a key-value pair.

     

    For more information, see `Proton resources and tagging <https://docs.aws.amazon.com/proton/latest/userguide/resources.html>`__ in the *Proton User Guide*.

    

  
    - *(dict) --* 

      A description of a resource tag.

      

    
      - **key** *(string) --* **[REQUIRED]** 

        The key of the resource tag.

        

      
      - **value** *(string) --* **[REQUIRED]** 

        The value of the resource tag.

        

      
    

  :type templateName: string
  :param templateName: **[REQUIRED]** 

    The name of the environment template.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'environmentTemplateVersion': {
              'arn': 'string',
              'createdAt': datetime(2015, 1, 1),
              'description': 'string',
              'lastModifiedAt': datetime(2015, 1, 1),
              'majorVersion': 'string',
              'minorVersion': 'string',
              'recommendedMinorVersion': 'string',
              'schema': 'string',
              'status': 'REGISTRATION_IN_PROGRESS'|'REGISTRATION_FAILED'|'DRAFT'|'PUBLISHED',
              'statusMessage': 'string',
              'templateName': 'string'
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **environmentTemplateVersion** *(dict) --* 

        The environment template detail data that's returned by Proton.

        
        

        - **arn** *(string) --* 

          The Amazon Resource Name (ARN) of the version of an environment template.

          
        

        - **createdAt** *(datetime) --* 

          The time when the version of an environment template was created.

          
        

        - **description** *(string) --* 

          A description of the minor version of an environment template.

          
        

        - **lastModifiedAt** *(datetime) --* 

          The time when the version of an environment template was last modified.

          
        

        - **majorVersion** *(string) --* 

          The latest major version that's associated with the version of an environment template.

          
        

        - **minorVersion** *(string) --* 

          The minor version of an environment template.

          
        

        - **recommendedMinorVersion** *(string) --* 

          The recommended minor version of the environment template.

          
        

        - **schema** *(string) --* 

          The schema of the version of an environment template.

          
        

        - **status** *(string) --* 

          The status of the version of an environment template.

          
        

        - **statusMessage** *(string) --* 

          The status message of the version of an environment template.

          
        

        - **templateName** *(string) --* 

          The name of the version of an environment template.

          
    
  
  **Exceptions**
  
  *   :py:class:`Proton.Client.exceptions.ServiceQuotaExceededException`

  
  *   :py:class:`Proton.Client.exceptions.ValidationException`

  
  *   :py:class:`Proton.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`Proton.Client.exceptions.ThrottlingException`

  
  *   :py:class:`Proton.Client.exceptions.ConflictException`

  
  *   :py:class:`Proton.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`Proton.Client.exceptions.InternalServerException`

  