AWS Marketplace Catalog Service

2024/02/13 - AWS Marketplace Catalog Service - 2 updated api methods

Changes  AWS Marketplace Catalog API now supports setting intent on requests

DescribeChangeSet (updated) Link ¶
Changes (response)
{'Intent': 'VALIDATE | APPLY'}

Provides information about a given change set.

See also: AWS API Documentation

Request Syntax

client.describe_change_set(
    Catalog='string',
    ChangeSetId='string'
)
type Catalog

string

param Catalog

[REQUIRED]

Required. The catalog related to the request. Fixed value: AWSMarketplace

type ChangeSetId

string

param ChangeSetId

[REQUIRED]

Required. The unique identifier for the StartChangeSet request that you want to describe the details for.

rtype

dict

returns

Response Syntax

{
    'ChangeSetId': 'string',
    'ChangeSetArn': 'string',
    'ChangeSetName': 'string',
    'Intent': 'VALIDATE'|'APPLY',
    'StartTime': 'string',
    'EndTime': 'string',
    'Status': 'PREPARING'|'APPLYING'|'SUCCEEDED'|'CANCELLED'|'FAILED',
    'FailureCode': 'CLIENT_ERROR'|'SERVER_FAULT',
    'FailureDescription': 'string',
    'ChangeSet': [
        {
            'ChangeType': 'string',
            'Entity': {
                'Type': 'string',
                'Identifier': 'string'
            },
            'Details': 'string',
            'DetailsDocument': {},
            'ErrorDetailList': [
                {
                    'ErrorCode': 'string',
                    'ErrorMessage': 'string'
                },
            ],
            'ChangeName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • ChangeSetId (string) --

      Required. The unique identifier for the change set referenced in this request.

    • ChangeSetArn (string) --

      The ARN associated with the unique identifier for the change set referenced in this request.

    • ChangeSetName (string) --

      The optional name provided in the StartChangeSet request. If you do not provide a name, one is set by default.

    • Intent (string) --

      The optional intent provided in the StartChangeSet request. If you do not provide an intent, APPLY is set by default.

    • StartTime (string) --

      The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request started.

    • EndTime (string) --

      The date and time, in ISO 8601 format (2018-02-27T13:45:22Z), the request transitioned to a terminal state. The change cannot transition to a different state. Null if the request is not in a terminal state.

    • Status (string) --

      The status of the change request.

    • FailureCode (string) --

      Returned if the change set is in FAILED status. Can be either CLIENT_ERROR , which means that there are issues with the request (see the ErrorDetailList ), or SERVER_FAULT , which means that there is a problem in the system, and you should retry your request.

    • FailureDescription (string) --

      Returned if there is a failure on the change set, but that failure is not related to any of the changes in the request.

    • ChangeSet (list) --

      An array of ChangeSummary objects.

      • (dict) --

        This object is a container for common summary information about the change. The summary doesn't contain the whole change structure.

        • ChangeType (string) --

          The type of the change.

        • Entity (dict) --

          The entity to be changed.

          • Type (string) --

            The type of entity.

          • Identifier (string) --

            The identifier for the entity.

        • Details (string) --

          This object contains details specific to the change type of the requested change.

        • DetailsDocument (dict) --

          The JSON value of the details specific to the change type of the requested change.

        • ErrorDetailList (list) --

          An array of ErrorDetail objects associated with the change.

          • (dict) --

            Details about the error.

            • ErrorCode (string) --

              The error code that identifies the type of error.

            • ErrorMessage (string) --

              The message for the error.

        • ChangeName (string) --

          Optional name for the change.

StartChangeSet (updated) Link ¶
Changes (request)
{'Intent': 'VALIDATE | APPLY'}

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

client.start_change_set(
    Catalog='string',
    ChangeSet=[
        {
            'ChangeType': 'string',
            'Entity': {
                'Type': 'string',
                'Identifier': 'string'
            },
            'EntityTags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Details': 'string',
            'DetailsDocument': {}
            ,
            'ChangeName': 'string'
        },
    ],
    ChangeSetName='string',
    ClientRequestToken='string',
    ChangeSetTags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    Intent='VALIDATE'|'APPLY'
)
type Catalog

string

param Catalog

[REQUIRED]

The catalog related to the request. Fixed value: AWSMarketplace

type ChangeSet

list

param ChangeSet

[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 (dict) --

      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.

type ChangeSetName

string

param ChangeSetName

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

type ClientRequestToken

string

param ClientRequestToken

A unique token to identify the request to ensure idempotency.

This field is autopopulated if not provided.

type ChangeSetTags

list

param ChangeSetTags

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.

type Intent

string

param Intent

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 .

rtype

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.