:doc:`CodeArtifact <../../codeartifact>` / Client / update_package_group

********************
update_package_group
********************



.. py:method:: CodeArtifact.Client.update_package_group(**kwargs)

  

  Updates a package group. This API cannot be used to update a package group's origin configuration or pattern. To update a package group's origin configuration, use `UpdatePackageGroupOriginConfiguration <https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_UpdatePackageGroupOriginConfiguration.html>`__.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/codeartifact-2018-09-22/UpdatePackageGroup>`_  


  **Request Syntax**
  ::

    response = client.update_package_group(
        domain='string',
        domainOwner='string',
        packageGroup='string',
        contactInfo='string',
        description='string'
    )
    
  :type domain: string
  :param domain: **[REQUIRED]** 

    The name of the domain which contains the package group to be updated.

    

  
  :type domainOwner: string
  :param domainOwner: 

    The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.

    

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

    The pattern of the package group to be updated.

    

  
  :type contactInfo: string
  :param contactInfo: 

    Contact information which you want to update the requested package group with.

    

  
  :type description: string
  :param description: 

    The description you want to update the requested package group with.

    

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

    
    ::

      {
          'packageGroup': {
              'arn': 'string',
              'pattern': 'string',
              'domainName': 'string',
              'domainOwner': 'string',
              'createdTime': datetime(2015, 1, 1),
              'contactInfo': 'string',
              'description': 'string',
              'originConfiguration': {
                  'restrictions': {
                      'string': {
                          'mode': 'ALLOW'|'ALLOW_SPECIFIC_REPOSITORIES'|'BLOCK'|'INHERIT',
                          'effectiveMode': 'ALLOW'|'ALLOW_SPECIFIC_REPOSITORIES'|'BLOCK'|'INHERIT',
                          'inheritedFrom': {
                              'arn': 'string',
                              'pattern': 'string'
                          },
                          'repositoriesCount': 123
                      }
                  }
              },
              'parent': {
                  'arn': 'string',
                  'pattern': 'string'
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **packageGroup** *(dict) --* 

        The package group and information about it after the request has been processed.

        
        

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

          The ARN of the package group.

          
        

        - **pattern** *(string) --* 

          The pattern of the package group. The pattern determines which packages are associated with the package group.

          
        

        - **domainName** *(string) --* 

          The name of the domain that contains the package group.

          
        

        - **domainOwner** *(string) --* 

          The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.

          
        

        - **createdTime** *(datetime) --* 

          A timestamp that represents the date and time the package group was created.

          
        

        - **contactInfo** *(string) --* 

          The contact information of the package group.

          
        

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

          The description of the package group.

          
        

        - **originConfiguration** *(dict) --* 

          The package group origin configuration that determines how package versions can enter repositories.

          
          

          - **restrictions** *(dict) --* 

            The origin configuration settings that determine how package versions can enter repositories.

            
            

            - *(string) --* 
              

              - *(dict) --* 

                Contains information about the configured restrictions of the origin controls of a package group.

                
                

                - **mode** *(string) --* 

                  The package group origin restriction setting. If the value of ``mode`` is ``ALLOW``, ``ALLOW_SPECIFIC_REPOSITORIES``, or ``BLOCK``, then the value of ``effectiveMode`` is the same. Otherwise, when the value is ``INHERIT``, then the value of ``effectiveMode`` is the value of ``mode`` of the first parent group which does not have a value of ``INHERIT``.

                  
                

                - **effectiveMode** *(string) --* 

                  The effective package group origin restriction setting. If the value of ``mode`` is ``ALLOW``, ``ALLOW_SPECIFIC_REPOSITORIES``, or ``BLOCK``, then the value of ``effectiveMode`` is the same. Otherwise, when the value of ``mode`` is ``INHERIT``, then the value of ``effectiveMode`` is the value of ``mode`` of the first parent group which does not have a value of ``INHERIT``.

                  
                

                - **inheritedFrom** *(dict) --* 

                  The parent package group that the package group origin restrictions are inherited from.

                  
                  

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

                    The ARN of the package group.

                    
                  

                  - **pattern** *(string) --* 

                    The pattern of the package group. The pattern determines which packages are associated with the package group, and is also the identifier of the package group.

                    
              
                

                - **repositoriesCount** *(integer) --* 

                  The number of repositories in the allowed repository list.

                  
            
        
      
      
        

        - **parent** *(dict) --* 

          The direct parent package group of the package group.

          
          

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

            The ARN of the package group.

            
          

          - **pattern** *(string) --* 

            The pattern of the package group. The pattern determines which packages are associated with the package group, and is also the identifier of the package group.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`CodeArtifact.Client.exceptions.AccessDeniedException`

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

  
  *   :py:class:`CodeArtifact.Client.exceptions.ServiceQuotaExceededException`

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

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

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

  