MarketplaceCatalog / Client / start_change_set

start_change_set#

MarketplaceCatalog.Client.start_change_set(**kwargs)#

Allows you to request changes for your entities. Within a single ChangeSet, you can’t start the same change type against the same entity multiple times. Additionally, when a ChangeSet is running, all the entities targeted by the different changes are locked until the change set has completed (either succeeded, cancelled, or failed). If you try to start a change set containing a change against an entity that is already locked, you will receive a ResourceInUseException error.

For example, you can’t start the ChangeSet described in the example later in this topic because it contains two changes to run the same change type ( AddRevisions) against the same entity ( entity-id@1).

For more information about working with change sets, see Working with change sets. For information about change types for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

See also: AWS API Documentation

Request Syntax

response = client.start_change_set(
    Catalog='string',
    ChangeSet=[
        {
            'ChangeType': 'string',
            'Entity': {
                'Type': 'string',
                'Identifier': 'string'
            },
            'EntityTags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Details': 'string',
            'DetailsDocument': {...}|[...]|123|123.4|'string'|True|None,
            'ChangeName': 'string'
        },
    ],
    ChangeSetName='string',
    ClientRequestToken='string',
    ChangeSetTags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    Intent='VALIDATE'|'APPLY'
)
Parameters:
  • Catalog (string) –

    [REQUIRED]

    The catalog related to the request. Fixed value: AWSMarketplace

  • ChangeSet (list) –

    [REQUIRED]

    Array of change object.

    • (dict) –

      An object that contains the ChangeType, Details, and Entity.

      • ChangeType (string) – [REQUIRED]

        Change types are single string values that describe your intention for the change. Each change type is unique for each EntityType provided in the change’s scope. For more information about change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

      • Entity (dict) – [REQUIRED]

        The entity to be changed.

        • Type (string) – [REQUIRED]

          The type of entity.

        • Identifier (string) –

          The identifier for the entity.

      • EntityTags (list) –

        The tags associated with the change.

        • (dict) –

          A list of objects specifying each key name and value.

          • Key (string) – [REQUIRED]

            The key associated with the tag.

          • Value (string) – [REQUIRED]

            The value associated with the tag.

      • Details (string) –

        This object contains details specific to the change type of the requested change. For more information about change types available for single-AMI products, see Working with single-AMI products. Also, for more information about change types available for container-based products, see Working with container products.

      • DetailsDocument (document) –

        Alternative field that accepts a JSON value instead of a string for ChangeType details. You can use either Details or DetailsDocument, but not both.

      • ChangeName (string) –

        Optional name for the change.

  • ChangeSetName (string) – Optional case sensitive string of up to 100 ASCII characters. The change set name can be used to filter the list of change sets.

  • ClientRequestToken (string) –

    A unique token to identify the request to ensure idempotency.

    This field is autopopulated if not provided.

  • ChangeSetTags (list) –

    A list of objects specifying each key name and value for the ChangeSetTags property.

    • (dict) –

      A list of objects specifying each key name and value.

      • Key (string) – [REQUIRED]

        The key associated with the tag.

      • Value (string) – [REQUIRED]

        The value associated with the tag.

  • Intent (string) – The intent related to the request. The default is APPLY. To test your request before applying changes to your entities, use VALIDATE. This feature is currently available for adding versions to single-AMI products. For more information, see Add a new version.

Return type:

dict

Returns:

Response Syntax

{
    'ChangeSetId': 'string',
    'ChangeSetArn': 'string'
}

Response Structure

  • (dict) –

    • ChangeSetId (string) –

      Unique identifier generated for the request.

    • ChangeSetArn (string) –

      The ARN associated to the unique identifier generated for the request.

Exceptions

  • MarketplaceCatalog.Client.exceptions.InternalServiceException

  • MarketplaceCatalog.Client.exceptions.AccessDeniedException

  • MarketplaceCatalog.Client.exceptions.ValidationException

  • MarketplaceCatalog.Client.exceptions.ResourceNotFoundException

  • MarketplaceCatalog.Client.exceptions.ResourceInUseException

  • MarketplaceCatalog.Client.exceptions.ThrottlingException

  • MarketplaceCatalog.Client.exceptions.ServiceQuotaExceededException