AWS Proton

2023/04/06 - AWS Proton - 8 new 11 updated api methods

Changes  This release adds support for the AWS Proton service sync feature. Service sync enables managing an AWS Proton service (creating and updating instances) and all of it's corresponding service instances from a Git repository.

UpdateServiceSyncConfig (new) Link ¶

Update the Proton Ops config file.

See also: AWS API Documentation

Request Syntax

client.update_service_sync_config(
    branch='string',
    filePath='string',
    repositoryName='string',
    repositoryProvider='GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
    serviceName='string'
)
type branch

string

param branch

[REQUIRED]

The name of the code repository branch where the Proton Ops file is found.

type filePath

string

param filePath

[REQUIRED]

The path to the Proton Ops file.

type repositoryName

string

param repositoryName

[REQUIRED]

The name of the repository where the Proton Ops file is found.

type repositoryProvider

string

param repositoryProvider

[REQUIRED]

The name of the repository provider where the Proton Ops file is found.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service the Proton Ops file is for.

rtype

dict

returns

Response Syntax

{
    'serviceSyncConfig': {
        'branch': 'string',
        'filePath': 'string',
        'repositoryName': 'string',
        'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
        'serviceName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceSyncConfig (dict) --

      The detailed data of the Proton Ops file.

      • branch (string) --

        The name of the code repository branch that holds the service code Proton will sync with.

      • filePath (string) --

        The file path to the service sync configuration file.

      • repositoryName (string) --

        The name of the code repository that holds the service code Proton will sync with.

      • repositoryProvider (string) --

        The name of the repository provider that holds the repository Proton will sync with.

      • serviceName (string) --

        The name of the service that the service instance is added to.

DeleteServiceSyncConfig (new) Link ¶

Delete the Proton Ops file.

See also: AWS API Documentation

Request Syntax

client.delete_service_sync_config(
    serviceName='string'
)
type serviceName

string

param serviceName

[REQUIRED]

The name of the service that you want to delete the service sync configuration for.

rtype

dict

returns

Response Syntax

{
    'serviceSyncConfig': {
        'branch': 'string',
        'filePath': 'string',
        'repositoryName': 'string',
        'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
        'serviceName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceSyncConfig (dict) --

      The detailed data for the service sync config.

      • branch (string) --

        The name of the code repository branch that holds the service code Proton will sync with.

      • filePath (string) --

        The file path to the service sync configuration file.

      • repositoryName (string) --

        The name of the code repository that holds the service code Proton will sync with.

      • repositoryProvider (string) --

        The name of the repository provider that holds the repository Proton will sync with.

      • serviceName (string) --

        The name of the service that the service instance is added to.

CreateServiceInstance (new) Link ¶

Create a service instance.

See also: AWS API Documentation

Request Syntax

client.create_service_instance(
    clientToken='string',
    name='string',
    serviceName='string',
    spec='string',
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    templateMajorVersion='string',
    templateMinorVersion='string'
)
type clientToken

string

param clientToken

The client token of the service instance to create.

This field is autopopulated if not provided.

type name

string

param name

[REQUIRED]

The name of the service instance to create.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service the service instance is added to.

type spec

string

param spec

[REQUIRED]

The spec for the service instance you want to create.

type tags

list

param tags

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

For more information, see Proton resources and tagging 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 templateMajorVersion

string

param templateMajorVersion

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

type templateMinorVersion

string

param templateMinorVersion

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

rtype

dict

returns

Response Syntax

{
    'serviceInstance': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceName': 'string',
        'spec': 'string',
        'templateMajorVersion': 'string',
        'templateMinorVersion': 'string',
        'templateName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceInstance (dict) --

      The detailed data of the service instance being created.

      • arn (string) --

        The Amazon Resource Name (ARN) of the service instance.

      • createdAt (datetime) --

        The time when the service instance was created.

      • deploymentStatus (string) --

        The service instance deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the service instance deployment status.

      • environmentName (string) --

        The name of the environment that the service instance was deployed into.

      • lastClientRequestToken (string) --

        The last client request token received.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the service instance was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the service instance was last deployed successfully.

      • name (string) --

        The name of the service instance.

      • serviceName (string) --

        The name of the service that the service instance belongs to.

      • spec (string) --

        The service spec that was used to create the service instance.

      • templateMajorVersion (string) --

        The major version of the service template that was used to create the service instance.

      • templateMinorVersion (string) --

        The minor version of the service template that was used to create the service instance.

      • templateName (string) --

        The name of the service template that was used to create the service instance.

GetServiceSyncBlockerSummary (new) Link ¶

Get detailed data for the service sync blocker summary.

See also: AWS API Documentation

Request Syntax

client.get_service_sync_blocker_summary(
    serviceInstanceName='string',
    serviceName='string'
)
type serviceInstanceName

string

param serviceInstanceName

The name of the service instance that you want to get the service sync blocker summary for. If given bothe the instance name and the service name, only the instance is blocked.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service that you want to get the service sync blocker summary for. If given only the service name, all instances are blocked.

rtype

dict

returns

Response Syntax

{
    'serviceSyncBlockerSummary': {
        'latestBlockers': [
            {
                'contexts': [
                    {
                        'key': 'string',
                        'value': 'string'
                    },
                ],
                'createdAt': datetime(2015, 1, 1),
                'createdReason': 'string',
                'id': 'string',
                'resolvedAt': datetime(2015, 1, 1),
                'resolvedReason': 'string',
                'status': 'ACTIVE'|'RESOLVED',
                'type': 'AUTOMATED'
            },
        ],
        'serviceInstanceName': 'string',
        'serviceName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceSyncBlockerSummary (dict) --

      The detailed data of the requested service sync blocker summary.

      • latestBlockers (list) --

        The latest active blockers for the synced service.

        • (dict) --

          Detailed data of the sync blocker.

          • contexts (list) --

            The contexts for the sync blocker.

            • (dict) --

              Detailed data of the context of the sync blocker.

              • key (string) --

                The key for the sync blocker context.

              • value (string) --

                The value of the sync blocker context.

          • createdAt (datetime) --

            The time when the sync blocker was created.

          • createdReason (string) --

            The reason why the sync blocker was created.

          • id (string) --

            The ID of the sync blocker.

          • resolvedAt (datetime) --

            The time the sync blocker was resolved.

          • resolvedReason (string) --

            The reason the sync blocker was resolved.

          • status (string) --

            The status of the sync blocker.

          • type (string) --

            The type of the sync blocker.

      • serviceInstanceName (string) --

        The name of the service instance that you want sync your service configuration with.

      • serviceName (string) --

        The name of the service that you want to get the sync blocker summary for. If given a service instance name and a service name, it will return the blockers only applying to the instance that is blocked.

        If given only a service name, it will return the blockers that apply to all of the instances. In order to get the blockers for a single instance, you will need to make two distinct calls, one to get the sync blocker summary for the service and the other to get the sync blocker for the service instance.

GetServiceInstanceSyncStatus (new) Link ¶

Get the status of the synced service instance.

See also: AWS API Documentation

Request Syntax

client.get_service_instance_sync_status(
    serviceInstanceName='string',
    serviceName='string'
)
type serviceInstanceName

string

param serviceInstanceName

[REQUIRED]

The name of the service instance that you want the sync status input for.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service that the service instance belongs to.

rtype

dict

returns

Response Syntax

{
    'desiredState': {
        'branch': 'string',
        'directory': 'string',
        'repositoryName': 'string',
        'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
        'sha': 'string'
    },
    'latestSuccessfulSync': {
        'events': [
            {
                'event': 'string',
                'externalId': 'string',
                'time': datetime(2015, 1, 1),
                'type': 'string'
            },
        ],
        'initialRevision': {
            'branch': 'string',
            'directory': 'string',
            'repositoryName': 'string',
            'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
            'sha': 'string'
        },
        'startedAt': datetime(2015, 1, 1),
        'status': 'INITIATED'|'IN_PROGRESS'|'SUCCEEDED'|'FAILED',
        'target': 'string',
        'targetRevision': {
            'branch': 'string',
            'directory': 'string',
            'repositoryName': 'string',
            'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
            'sha': 'string'
        }
    },
    'latestSync': {
        'events': [
            {
                'event': 'string',
                'externalId': 'string',
                'time': datetime(2015, 1, 1),
                'type': 'string'
            },
        ],
        'initialRevision': {
            'branch': 'string',
            'directory': 'string',
            'repositoryName': 'string',
            'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
            'sha': 'string'
        },
        'startedAt': datetime(2015, 1, 1),
        'status': 'INITIATED'|'IN_PROGRESS'|'SUCCEEDED'|'FAILED',
        'target': 'string',
        'targetRevision': {
            'branch': 'string',
            'directory': 'string',
            'repositoryName': 'string',
            'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
            'sha': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • desiredState (dict) --

      The service instance sync desired state that's returned by Proton

      • branch (string) --

        The repository branch.

      • directory (string) --

        The repository directory changed by a commit and push that activated the sync attempt.

      • repositoryName (string) --

        The repository name.

      • repositoryProvider (string) --

        The repository provider.

      • sha (string) --

        The secure hash algorithm (SHA) hash for the revision.

    • latestSuccessfulSync (dict) --

      The detailed data of the latest successful sync with the service instance.

      • events (list) --

        An array of events with detail data.

        • (dict) --

          Detail data for a resource sync event.

          • event (string) --

            A resource sync event.

          • externalId (string) --

            The external ID for the event.

          • time (datetime) --

            The time when the event occurred.

          • type (string) --

            The type of event.

      • initialRevision (dict) --

        Detail data for the initial repository commit, path and push.

        • branch (string) --

          The repository branch.

        • directory (string) --

          The repository directory changed by a commit and push that activated the sync attempt.

        • repositoryName (string) --

          The repository name.

        • repositoryProvider (string) --

          The repository provider.

        • sha (string) --

          The secure hash algorithm (SHA) hash for the revision.

      • startedAt (datetime) --

        The time when the sync attempt started.

      • status (string) --

        The status of the sync attempt.

      • target (string) --

        The resource that is synced to.

      • targetRevision (dict) --

        Detail data for the target revision.

        • branch (string) --

          The repository branch.

        • directory (string) --

          The repository directory changed by a commit and push that activated the sync attempt.

        • repositoryName (string) --

          The repository name.

        • repositoryProvider (string) --

          The repository provider.

        • sha (string) --

          The secure hash algorithm (SHA) hash for the revision.

    • latestSync (dict) --

      The detailed data of the latest sync with the service instance.

      • events (list) --

        An array of events with detail data.

        • (dict) --

          Detail data for a resource sync event.

          • event (string) --

            A resource sync event.

          • externalId (string) --

            The external ID for the event.

          • time (datetime) --

            The time when the event occurred.

          • type (string) --

            The type of event.

      • initialRevision (dict) --

        Detail data for the initial repository commit, path and push.

        • branch (string) --

          The repository branch.

        • directory (string) --

          The repository directory changed by a commit and push that activated the sync attempt.

        • repositoryName (string) --

          The repository name.

        • repositoryProvider (string) --

          The repository provider.

        • sha (string) --

          The secure hash algorithm (SHA) hash for the revision.

      • startedAt (datetime) --

        The time when the sync attempt started.

      • status (string) --

        The status of the sync attempt.

      • target (string) --

        The resource that is synced to.

      • targetRevision (dict) --

        Detail data for the target revision.

        • branch (string) --

          The repository branch.

        • directory (string) --

          The repository directory changed by a commit and push that activated the sync attempt.

        • repositoryName (string) --

          The repository name.

        • repositoryProvider (string) --

          The repository provider.

        • sha (string) --

          The secure hash algorithm (SHA) hash for the revision.

GetServiceSyncConfig (new) Link ¶

Get detailed information for the service sync configuration.

See also: AWS API Documentation

Request Syntax

client.get_service_sync_config(
    serviceName='string'
)
type serviceName

string

param serviceName

[REQUIRED]

The name of the service that you want to get the service sync configuration for.

rtype

dict

returns

Response Syntax

{
    'serviceSyncConfig': {
        'branch': 'string',
        'filePath': 'string',
        'repositoryName': 'string',
        'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
        'serviceName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceSyncConfig (dict) --

      The detailed data of the requested service sync configuration.

      • branch (string) --

        The name of the code repository branch that holds the service code Proton will sync with.

      • filePath (string) --

        The file path to the service sync configuration file.

      • repositoryName (string) --

        The name of the code repository that holds the service code Proton will sync with.

      • repositoryProvider (string) --

        The name of the repository provider that holds the repository Proton will sync with.

      • serviceName (string) --

        The name of the service that the service instance is added to.

CreateServiceSyncConfig (new) Link ¶

Create the Proton Ops configuration file.

See also: AWS API Documentation

Request Syntax

client.create_service_sync_config(
    branch='string',
    filePath='string',
    repositoryName='string',
    repositoryProvider='GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
    serviceName='string'
)
type branch

string

param branch

[REQUIRED]

The repository branch for your Proton Ops file.

type filePath

string

param filePath

[REQUIRED]

The path to the Proton Ops file.

type repositoryName

string

param repositoryName

[REQUIRED]

The repository name.

type repositoryProvider

string

param repositoryProvider

[REQUIRED]

The provider type for your repository.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service the Proton Ops file is for.

rtype

dict

returns

Response Syntax

{
    'serviceSyncConfig': {
        'branch': 'string',
        'filePath': 'string',
        'repositoryName': 'string',
        'repositoryProvider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
        'serviceName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceSyncConfig (dict) --

      The detailed data of the Proton Ops file.

      • branch (string) --

        The name of the code repository branch that holds the service code Proton will sync with.

      • filePath (string) --

        The file path to the service sync configuration file.

      • repositoryName (string) --

        The name of the code repository that holds the service code Proton will sync with.

      • repositoryProvider (string) --

        The name of the repository provider that holds the repository Proton will sync with.

      • serviceName (string) --

        The name of the service that the service instance is added to.

UpdateServiceSyncBlocker (new) Link ¶

Update the service sync blocker by resolving it.

See also: AWS API Documentation

Request Syntax

client.update_service_sync_blocker(
    id='string',
    resolvedReason='string'
)
type id

string

param id

[REQUIRED]

The ID of the service sync blocker.

type resolvedReason

string

param resolvedReason

[REQUIRED]

The reason the service sync blocker was resolved.

rtype

dict

returns

Response Syntax

{
    'serviceInstanceName': 'string',
    'serviceName': 'string',
    'serviceSyncBlocker': {
        'contexts': [
            {
                'key': 'string',
                'value': 'string'
            },
        ],
        'createdAt': datetime(2015, 1, 1),
        'createdReason': 'string',
        'id': 'string',
        'resolvedAt': datetime(2015, 1, 1),
        'resolvedReason': 'string',
        'status': 'ACTIVE'|'RESOLVED',
        'type': 'AUTOMATED'
    }
}

Response Structure

  • (dict) --

    • serviceInstanceName (string) --

      The name of the service instance that you want to update the service sync blocker for.

    • serviceName (string) --

      The name of the service that you want to update the service sync blocker for.

    • serviceSyncBlocker (dict) --

      The detailed data on the service sync blocker that was updated.

      • contexts (list) --

        The contexts for the sync blocker.

        • (dict) --

          Detailed data of the context of the sync blocker.

          • key (string) --

            The key for the sync blocker context.

          • value (string) --

            The value of the sync blocker context.

      • createdAt (datetime) --

        The time when the sync blocker was created.

      • createdReason (string) --

        The reason why the sync blocker was created.

      • id (string) --

        The ID of the sync blocker.

      • resolvedAt (datetime) --

        The time the sync blocker was resolved.

      • resolvedReason (string) --

        The reason the sync blocker was resolved.

      • status (string) --

        The status of the sync blocker.

      • type (string) --

        The type of the sync blocker.

CancelComponentDeployment (updated) Link ¶
Changes (response)
{'component': {'lastClientRequestToken': 'string'}}

Attempts to cancel a component deployment (for a component that is in the IN_PROGRESS deployment status).

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.cancel_component_deployment(
    componentName='string'
)
type componentName

string

param componentName

[REQUIRED]

The name of the component with the deployment to cancel.

rtype

dict

returns

Response Syntax

{
    'component': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'description': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'lastModifiedAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceInstanceName': 'string',
        'serviceName': 'string',
        'serviceSpec': 'string'
    }
}

Response Structure

  • (dict) --

    • component (dict) --

      The detailed data of the component with the deployment that is being canceled.

      • arn (string) --

        The Amazon Resource Name (ARN) of the component.

      • createdAt (datetime) --

        The time when the component was created.

      • deploymentStatus (string) --

        The component deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the component deployment status.

      • description (string) --

        A description of the component.

      • environmentName (string) --

        The name of the Proton environment that this component is associated with.

      • lastClientRequestToken (string) --

        The last token the client requested.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the component was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the component was last deployed successfully.

      • lastModifiedAt (datetime) --

        The time when the component was last modified.

      • name (string) --

        The name of the component.

      • serviceInstanceName (string) --

        The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.

      • serviceName (string) --

        The name of the service that serviceInstanceName is associated with. Provided when a component is attached to a service instance.

      • serviceSpec (string) --

        The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.

CancelServiceInstanceDeployment (updated) Link ¶
Changes (response)
{'serviceInstance': {'lastClientRequestToken': 'string'}}

Attempts to cancel a service instance deployment on an UpdateServiceInstance action, if the deployment is IN_PROGRESS . For more information, see Update a service instance in the Proton User guide .

The following list includes potential cancellation scenarios.

  • If the cancellation attempt succeeds, the resulting deployment state is CANCELLED .

  • If the cancellation attempt fails, the resulting deployment state is FAILED .

  • If the current UpdateServiceInstance action succeeds before the cancellation attempt starts, the resulting deployment state is SUCCEEDED and the cancellation attempt has no effect.

See also: AWS API Documentation

Request Syntax

client.cancel_service_instance_deployment(
    serviceInstanceName='string',
    serviceName='string'
)
type serviceInstanceName

string

param serviceInstanceName

[REQUIRED]

The name of the service instance with the deployment to cancel.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service with the service instance deployment to cancel.

rtype

dict

returns

Response Syntax

{
    'serviceInstance': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceName': 'string',
        'spec': 'string',
        'templateMajorVersion': 'string',
        'templateMinorVersion': 'string',
        'templateName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceInstance (dict) --

      The service instance summary data that's returned by Proton.

      • arn (string) --

        The Amazon Resource Name (ARN) of the service instance.

      • createdAt (datetime) --

        The time when the service instance was created.

      • deploymentStatus (string) --

        The service instance deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the service instance deployment status.

      • environmentName (string) --

        The name of the environment that the service instance was deployed into.

      • lastClientRequestToken (string) --

        The last client request token received.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the service instance was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the service instance was last deployed successfully.

      • name (string) --

        The name of the service instance.

      • serviceName (string) --

        The name of the service that the service instance belongs to.

      • spec (string) --

        The service spec that was used to create the service instance.

      • templateMajorVersion (string) --

        The major version of the service template that was used to create the service instance.

      • templateMinorVersion (string) --

        The minor version of the service template that was used to create the service instance.

      • templateName (string) --

        The name of the service template that was used to create the service instance.

CreateComponent (updated) Link ¶
Changes (request, response)
Request
{'clientToken': 'string'}
Response
{'component': {'lastClientRequestToken': 'string'}}

Create an Proton component. A component is an infrastructure extension for a service instance.

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.create_component(
    clientToken='string',
    description='string',
    environmentName='string',
    manifest='string',
    name='string',
    serviceInstanceName='string',
    serviceName='string',
    serviceSpec='string',
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    templateFile='string'
)
type clientToken

string

param clientToken

The client token for the created component.

This field is autopopulated if not provided.

type description

string

param description

An optional customer-provided description of the component.

type environmentName

string

param environmentName

The name of the Proton environment that you want to associate this component with. You must specify this when you don't specify serviceInstanceName and serviceName .

type manifest

string

param manifest

[REQUIRED]

A path to a manifest file that lists the Infrastructure as Code (IaC) file, template language, and rendering engine for infrastructure that a custom component provisions.

type name

string

param name

[REQUIRED]

The customer-provided name of the component.

type serviceInstanceName

string

param serviceInstanceName

The name of the service instance that you want to attach this component to. If you don't specify this, the component isn't attached to any service instance. Specify both serviceInstanceName and serviceName or neither of them.

type serviceName

string

param serviceName

The name of the service that serviceInstanceName is associated with. If you don't specify this, the component isn't attached to any service instance. Specify both serviceInstanceName and serviceName or neither of them.

type serviceSpec

string

param serviceSpec

The service spec that you want the component to use to access service inputs. Set this only when you attach the component to a service instance.

type tags

list

param tags

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

For more information, see Proton resources and tagging 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 templateFile

string

param templateFile

[REQUIRED]

A path to the Infrastructure as Code (IaC) file describing infrastructure that a custom component provisions.

Note

Components support a single IaC file, even if you use Terraform as your template language.

rtype

dict

returns

Response Syntax

{
    'component': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'description': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'lastModifiedAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceInstanceName': 'string',
        'serviceName': 'string',
        'serviceSpec': 'string'
    }
}

Response Structure

  • (dict) --

    • component (dict) --

      The detailed data of the created component.

      • arn (string) --

        The Amazon Resource Name (ARN) of the component.

      • createdAt (datetime) --

        The time when the component was created.

      • deploymentStatus (string) --

        The component deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the component deployment status.

      • description (string) --

        A description of the component.

      • environmentName (string) --

        The name of the Proton environment that this component is associated with.

      • lastClientRequestToken (string) --

        The last token the client requested.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the component was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the component was last deployed successfully.

      • lastModifiedAt (datetime) --

        The time when the component was last modified.

      • name (string) --

        The name of the component.

      • serviceInstanceName (string) --

        The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.

      • serviceName (string) --

        The name of the service that serviceInstanceName is associated with. Provided when a component is attached to a service instance.

      • serviceSpec (string) --

        The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.

DeleteComponent (updated) Link ¶
Changes (response)
{'component': {'lastClientRequestToken': 'string'}}

Delete an Proton component resource.

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.delete_component(
    name='string'
)
type name

string

param name

[REQUIRED]

The name of the component to delete.

rtype

dict

returns

Response Syntax

{
    'component': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'description': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'lastModifiedAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceInstanceName': 'string',
        'serviceName': 'string',
        'serviceSpec': 'string'
    }
}

Response Structure

  • (dict) --

    • component (dict) --

      The detailed data of the component being deleted.

      • arn (string) --

        The Amazon Resource Name (ARN) of the component.

      • createdAt (datetime) --

        The time when the component was created.

      • deploymentStatus (string) --

        The component deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the component deployment status.

      • description (string) --

        A description of the component.

      • environmentName (string) --

        The name of the Proton environment that this component is associated with.

      • lastClientRequestToken (string) --

        The last token the client requested.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the component was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the component was last deployed successfully.

      • lastModifiedAt (datetime) --

        The time when the component was last modified.

      • name (string) --

        The name of the component.

      • serviceInstanceName (string) --

        The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.

      • serviceName (string) --

        The name of the service that serviceInstanceName is associated with. Provided when a component is attached to a service instance.

      • serviceSpec (string) --

        The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.

GetComponent (updated) Link ¶
Changes (response)
{'component': {'lastClientRequestToken': 'string'}}

Get detailed data for a component.

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.get_component(
    name='string'
)
type name

string

param name

[REQUIRED]

The name of the component that you want to get the detailed data for.

rtype

dict

returns

Response Syntax

{
    'component': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'description': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'lastModifiedAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceInstanceName': 'string',
        'serviceName': 'string',
        'serviceSpec': 'string'
    }
}

Response Structure

  • (dict) --

    • component (dict) --

      The detailed data of the requested component.

      • arn (string) --

        The Amazon Resource Name (ARN) of the component.

      • createdAt (datetime) --

        The time when the component was created.

      • deploymentStatus (string) --

        The component deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the component deployment status.

      • description (string) --

        A description of the component.

      • environmentName (string) --

        The name of the Proton environment that this component is associated with.

      • lastClientRequestToken (string) --

        The last token the client requested.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the component was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the component was last deployed successfully.

      • lastModifiedAt (datetime) --

        The time when the component was last modified.

      • name (string) --

        The name of the component.

      • serviceInstanceName (string) --

        The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.

      • serviceName (string) --

        The name of the service that serviceInstanceName is associated with. Provided when a component is attached to a service instance.

      • serviceSpec (string) --

        The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.

GetRepositorySyncStatus (updated) Link ¶
Changes (request)
{'syncType': {'SERVICE_SYNC'}}

Get the sync status of a repository used for Proton template sync. For more information about template sync, see .

Note

A repository sync status isn't tied to the Proton Repository resource (or any other Proton resource). Therefore, tags on an Proton Repository resource have no effect on this action. Specifically, you can't use these tags to control access to this action using Attribute-based access control (ABAC).

For more information about ABAC, see ABAC in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.get_repository_sync_status(
    branch='string',
    repositoryName='string',
    repositoryProvider='GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
    syncType='TEMPLATE_SYNC'|'SERVICE_SYNC'
)
type branch

string

param branch

[REQUIRED]

The repository branch.

type repositoryName

string

param repositoryName

[REQUIRED]

The repository name.

type repositoryProvider

string

param repositoryProvider

[REQUIRED]

The repository provider.

type syncType

string

param syncType

[REQUIRED]

The repository sync type.

rtype

dict

returns

Response Syntax

{
    'latestSync': {
        'events': [
            {
                'event': 'string',
                'externalId': 'string',
                'time': datetime(2015, 1, 1),
                'type': 'string'
            },
        ],
        'startedAt': datetime(2015, 1, 1),
        'status': 'INITIATED'|'IN_PROGRESS'|'SUCCEEDED'|'FAILED'|'QUEUED'
    }
}

Response Structure

  • (dict) --

    • latestSync (dict) --

      The repository sync status detail data that's returned by Proton.

      • events (list) --

        Detail data for sync attempt events.

        • (dict) --

          Repository sync event detail data for a sync attempt.

          • event (string) --

            Event detail for a repository sync attempt.

          • externalId (string) --

            The external ID of the sync event.

          • time (datetime) --

            The time that the sync event occurred.

          • type (string) --

            The type of event.

      • startedAt (datetime) --

        The time when the sync attempt started.

      • status (string) --

        The sync attempt status.

GetServiceInstance (updated) Link ¶
Changes (response)
{'serviceInstance': {'lastClientRequestToken': 'string'}}

Get detailed data for a service instance. A service instance is an instantiation of service template and it runs in a specific environment.

See also: AWS API Documentation

Request Syntax

client.get_service_instance(
    name='string',
    serviceName='string'
)
type name

string

param name

[REQUIRED]

The name of a service instance that you want to get the detailed data for.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service that you want the service instance input for.

rtype

dict

returns

Response Syntax

{
    'serviceInstance': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceName': 'string',
        'spec': 'string',
        'templateMajorVersion': 'string',
        'templateMinorVersion': 'string',
        'templateName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceInstance (dict) --

      The detailed data of the requested service instance.

      • arn (string) --

        The Amazon Resource Name (ARN) of the service instance.

      • createdAt (datetime) --

        The time when the service instance was created.

      • deploymentStatus (string) --

        The service instance deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the service instance deployment status.

      • environmentName (string) --

        The name of the environment that the service instance was deployed into.

      • lastClientRequestToken (string) --

        The last client request token received.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the service instance was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the service instance was last deployed successfully.

      • name (string) --

        The name of the service instance.

      • serviceName (string) --

        The name of the service that the service instance belongs to.

      • spec (string) --

        The service spec that was used to create the service instance.

      • templateMajorVersion (string) --

        The major version of the service template that was used to create the service instance.

      • templateMinorVersion (string) --

        The minor version of the service template that was used to create the service instance.

      • templateName (string) --

        The name of the service template that was used to create the service instance.

ListRepositories (updated) Link ¶
Changes (response)
{'repositories': {'connectionArn': 'string'}}

List linked repositories with detail data.

See also: AWS API Documentation

Request Syntax

client.list_repositories(
    maxResults=123,
    nextToken='string'
)
type maxResults

integer

param maxResults

The maximum number of repositories to list.

type nextToken

string

param nextToken

A token that indicates the location of the next repository in the array of repositories, after the list of repositories previously requested.

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'repositories': [
        {
            'arn': 'string',
            'connectionArn': 'string',
            'name': 'string',
            'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      A token that indicates the location of the next repository in the array of repositories, after the current requested list of repositories.

    • repositories (list) --

      An array of repository links.

      • (dict) --

        Summary data of a linked repository—a repository that has been registered with Proton.

        • arn (string) --

          The Amazon Resource Name (ARN) of the linked repository.

        • connectionArn (string) --

          The Amazon Resource Name (ARN) of the of your connection that connects Proton to your repository.

        • name (string) --

          The repository name.

        • provider (string) --

          The repository provider.

ListRepositorySyncDefinitions (updated) Link ¶
Changes (request)
{'syncType': {'SERVICE_SYNC'}}

List repository sync definitions with detail data.

See also: AWS API Documentation

Request Syntax

client.list_repository_sync_definitions(
    nextToken='string',
    repositoryName='string',
    repositoryProvider='GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET',
    syncType='TEMPLATE_SYNC'|'SERVICE_SYNC'
)
type nextToken

string

param nextToken

A token that indicates the location of the next repository sync definition in the array of repository sync definitions, after the list of repository sync definitions previously requested.

type repositoryName

string

param repositoryName

[REQUIRED]

The repository name.

type repositoryProvider

string

param repositoryProvider

[REQUIRED]

The repository provider.

type syncType

string

param syncType

[REQUIRED]

The sync type. The only supported value is TEMPLATE_SYNC .

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'syncDefinitions': [
        {
            'branch': 'string',
            'directory': 'string',
            'parent': 'string',
            'target': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      A token that indicates the location of the next repository sync definition in the array of repository sync definitions, after the current requested list of repository sync definitions.

    • syncDefinitions (list) --

      An array of repository sync definitions.

      • (dict) --

        A repository sync definition.

        • branch (string) --

          The repository branch.

        • directory (string) --

          The directory in the repository.

        • parent (string) --

          The resource that is synced from.

        • target (string) --

          The resource that is synced to.

UpdateComponent (updated) Link ¶
Changes (request, response)
Request
{'clientToken': 'string'}
Response
{'component': {'lastClientRequestToken': 'string'}}

Update a component.

There are a few modes for updating a component. The deploymentType field defines the mode.

Note

You can't update a component while its deployment status, or the deployment status of a service instance attached to it, is IN_PROGRESS .

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.update_component(
    clientToken='string',
    deploymentType='NONE'|'CURRENT_VERSION',
    description='string',
    name='string',
    serviceInstanceName='string',
    serviceName='string',
    serviceSpec='string',
    templateFile='string'
)
type clientToken

string

param clientToken

The client token for the updated component.

This field is autopopulated if not provided.

type deploymentType

string

param deploymentType

[REQUIRED]

The deployment type. It defines the mode for updating a component, as follows:

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated. You can only specify description in this mode.

CURRENT_VERSION

In this mode, the component is deployed and updated with the new serviceSpec , templateSource , and/or type that you provide. Only requested parameters are updated.

type description

string

param description

An optional customer-provided description of the component.

type name

string

param name

[REQUIRED]

The name of the component to update.

type serviceInstanceName

string

param serviceInstanceName

The name of the service instance that you want to attach this component to. Don't specify to keep the component's current service instance attachment. Specify an empty string to detach the component from the service instance it's attached to. Specify non-empty values for both serviceInstanceName and serviceName or for neither of them.

type serviceName

string

param serviceName

The name of the service that serviceInstanceName is associated with. Don't specify to keep the component's current service instance attachment. Specify an empty string to detach the component from the service instance it's attached to. Specify non-empty values for both serviceInstanceName and serviceName or for neither of them.

type serviceSpec

string

param serviceSpec

The service spec that you want the component to use to access service inputs. Set this only when the component is attached to a service instance.

type templateFile

string

param templateFile

A path to the Infrastructure as Code (IaC) file describing infrastructure that a custom component provisions.

Note

Components support a single IaC file, even if you use Terraform as your template language.

rtype

dict

returns

Response Syntax

{
    'component': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'description': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'lastModifiedAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceInstanceName': 'string',
        'serviceName': 'string',
        'serviceSpec': 'string'
    }
}

Response Structure

  • (dict) --

    • component (dict) --

      The detailed data of the updated component.

      • arn (string) --

        The Amazon Resource Name (ARN) of the component.

      • createdAt (datetime) --

        The time when the component was created.

      • deploymentStatus (string) --

        The component deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the component deployment status.

      • description (string) --

        A description of the component.

      • environmentName (string) --

        The name of the Proton environment that this component is associated with.

      • lastClientRequestToken (string) --

        The last token the client requested.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the component was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the component was last deployed successfully.

      • lastModifiedAt (datetime) --

        The time when the component was last modified.

      • name (string) --

        The name of the component.

      • serviceInstanceName (string) --

        The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.

      • serviceName (string) --

        The name of the service that serviceInstanceName is associated with. Provided when a component is attached to a service instance.

      • serviceSpec (string) --

        The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.

UpdateServiceInstance (updated) Link ¶
Changes (request, response)
Request
{'clientToken': 'string'}
Response
{'serviceInstance': {'lastClientRequestToken': 'string'}}

Update a service instance.

There are a few modes for updating a service instance. The deploymentType field defines the mode.

Note

You can't update a service instance while its deployment status, or the deployment status of a component attached to it, is IN_PROGRESS .

For more information about components, see Proton components in the Proton User Guide .

See also: AWS API Documentation

Request Syntax

client.update_service_instance(
    clientToken='string',
    deploymentType='NONE'|'CURRENT_VERSION'|'MINOR_VERSION'|'MAJOR_VERSION',
    name='string',
    serviceName='string',
    spec='string',
    templateMajorVersion='string',
    templateMinorVersion='string'
)
type clientToken

string

param clientToken

The client token of the service instance to update.

This field is autopopulated if not provided.

type deploymentType

string

param deploymentType

[REQUIRED]

The deployment type. It defines the mode for updating a service instance, as follows:

NONE

In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.

CURRENT_VERSION

In this mode, the service instance is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include major or minor version parameters when you use this deployment type.

MINOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.

MAJOR_VERSION

In this mode, the service instance is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can specify a different major version that's higher than the major version in use and a minor version.

type name

string

param name

[REQUIRED]

The name of the service instance to update.

type serviceName

string

param serviceName

[REQUIRED]

The name of the service that the service instance belongs to.

type spec

string

param spec

The formatted specification that defines the service instance update.

type templateMajorVersion

string

param templateMajorVersion

The major version of the service template to update.

type templateMinorVersion

string

param templateMinorVersion

The minor version of the service template to update.

rtype

dict

returns

Response Syntax

{
    'serviceInstance': {
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED',
        'deploymentStatusMessage': 'string',
        'environmentName': 'string',
        'lastClientRequestToken': 'string',
        'lastDeploymentAttemptedAt': datetime(2015, 1, 1),
        'lastDeploymentSucceededAt': datetime(2015, 1, 1),
        'name': 'string',
        'serviceName': 'string',
        'spec': 'string',
        'templateMajorVersion': 'string',
        'templateMinorVersion': 'string',
        'templateName': 'string'
    }
}

Response Structure

  • (dict) --

    • serviceInstance (dict) --

      The service instance summary data that's returned by Proton.

      • arn (string) --

        The Amazon Resource Name (ARN) of the service instance.

      • createdAt (datetime) --

        The time when the service instance was created.

      • deploymentStatus (string) --

        The service instance deployment status.

      • deploymentStatusMessage (string) --

        The message associated with the service instance deployment status.

      • environmentName (string) --

        The name of the environment that the service instance was deployed into.

      • lastClientRequestToken (string) --

        The last client request token received.

      • lastDeploymentAttemptedAt (datetime) --

        The time when a deployment of the service instance was last attempted.

      • lastDeploymentSucceededAt (datetime) --

        The time when the service instance was last deployed successfully.

      • name (string) --

        The name of the service instance.

      • serviceName (string) --

        The name of the service that the service instance belongs to.

      • spec (string) --

        The service spec that was used to create the service instance.

      • templateMajorVersion (string) --

        The major version of the service template that was used to create the service instance.

      • templateMinorVersion (string) --

        The minor version of the service template that was used to create the service instance.

      • templateName (string) --

        The name of the service template that was used to create the service instance.