2022/11/14 - AWS Proton - 13 updated api methods
Changes Add support for CodeBuild Provisioning
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
In a management account, an environment account connection request is accepted. When the environment account connection request is accepted, Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.
For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.accept_environment_account_connection( id='string' )
string
[REQUIRED]
The ID of the environment account connection.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The environment account connection data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.
{'environment': {'codebuildRoleArn': 'string'}}
Attempts to cancel an environment deployment on an UpdateEnvironment action, if the deployment is IN_PROGRESS . For more information, see Update an environment 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 UpdateEnvironment 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_environment_deployment( environmentName='string' )
string
[REQUIRED]
The name of the environment with the deployment to cancel.
dict
Response Syntax
{ 'environment': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'createdAt': datetime(2015, 1, 1), 'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED', 'deploymentStatusMessage': 'string', 'description': 'string', 'environmentAccountConnectionId': 'string', 'environmentAccountId': 'string', 'lastDeploymentAttemptedAt': datetime(2015, 1, 1), 'lastDeploymentSucceededAt': datetime(2015, 1, 1), 'name': 'string', 'protonServiceRoleArn': 'string', 'provisioning': 'CUSTOMER_MANAGED', 'provisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'spec': 'string', 'templateMajorVersion': 'string', 'templateMinorVersion': 'string', 'templateName': 'string' } }
Response Structure
(dict) --
environment (dict) --
The environment summary data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
createdAt (datetime) --
The time when the environment was created.
deploymentStatus (string) --
The environment deployment status.
deploymentStatusMessage (string) --
An environment deployment status message.
description (string) --
The description of the environment.
environmentAccountConnectionId (string) --
The ID of the environment account connection that Proton uses to provision infrastructure resources in an environment account.
environmentAccountId (string) --
The ID of the environment account that the environment infrastructure resources are provisioned in.
lastDeploymentAttemptedAt (datetime) --
The time when a deployment of the environment was last attempted.
lastDeploymentSucceededAt (datetime) --
The time when the environment was last deployed successfully.
name (string) --
The name of the environment.
protonServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
provisioning (string) --
When included, indicates that the environment template is for customer provisioned and managed infrastructure.
provisioningRepository (dict) --
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
spec (string) --
The environment spec.
templateMajorVersion (string) --
The major version of the environment template.
templateMinorVersion (string) --
The minor version of the environment template.
templateName (string) --
The Amazon Resource Name (ARN) of the environment template.
{'codebuildRoleArn': 'string'}Response
{'environment': {'codebuildRoleArn': 'string'}}
Deploy a new environment. An Proton environment is created from an environment template that defines infrastructure and resources that can be shared across services.
You can provision environments using the following methods:
Amazon Web Services-managed provisioning – Proton makes direct calls to provision your resources.
Self-managed provisioning – Proton makes pull requests on your repository to provide compiled infrastructure as code (IaC) files that your IaC engine uses to provision resources.
CodeBuild-based provisioning – Proton uses CodeBuild to run shell commands that you provide. Your commands can read inputs that Proton provides, and are responsible for provisioning or deprovisioning infrastructure and generating output values.
For more information, see Environments and Provisioning methods in the Proton User Guide .
See also: AWS API Documentation
Request Syntax
client.create_environment( codebuildRoleArn='string', componentRoleArn='string', description='string', environmentAccountConnectionId='string', name='string', protonServiceRoleArn='string', provisioningRepository={ 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, spec='string', tags=[ { 'key': 'string', 'value': 'string' }, ], templateMajorVersion='string', templateMinorVersion='string', templateName='string' )
string
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
To use CodeBuild-based provisioning for the environment or for any service instance running in the environment, specify either the environmentAccountConnectionId or codebuildRoleArn parameter.
string
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
You must specify componentRoleArn to allow directly defined components to be associated with this environment.
For more information about components, see Proton components in the Proton User Guide .
string
A description of the environment that's being created and deployed.
string
The ID of the environment account connection that you provide if you want Proton to provision infrastructure resources for your environment or for any of the service instances running in it in an environment account. For more information, see Environment account connections in the Proton User guide .
If you specify the environmentAccountConnectionId parameter, don't specify protonServiceRoleArn , codebuildRoleArn , or provisioningRepository .
string
[REQUIRED]
The name of the environment.
string
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
To use Amazon Web Services-managed provisioning for the environment or for any service instance running in the environment, specify either the environmentAccountConnectionId or protonServiceRoleArn parameter.
dict
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
To use self-managed provisioning for the environment or for any service instance running in the environment, specify this parameter.
branch (string) -- [REQUIRED]
The repository branch.
name (string) -- [REQUIRED]
The repository name.
provider (string) -- [REQUIRED]
The repository provider.
string
[REQUIRED]
A YAML formatted string that provides inputs as defined in the environment template bundle schema file. For more information, see Environments in the Proton User Guide .
list
An optional list of metadata items that you can associate with the Proton environment. 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.
string
[REQUIRED]
The major version of the environment template.
string
The minor version of the environment template.
string
[REQUIRED]
The name of the environment template. For more information, see Environment Templates in the Proton User Guide .
dict
Response Syntax
{ 'environment': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'createdAt': datetime(2015, 1, 1), 'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED', 'deploymentStatusMessage': 'string', 'description': 'string', 'environmentAccountConnectionId': 'string', 'environmentAccountId': 'string', 'lastDeploymentAttemptedAt': datetime(2015, 1, 1), 'lastDeploymentSucceededAt': datetime(2015, 1, 1), 'name': 'string', 'protonServiceRoleArn': 'string', 'provisioning': 'CUSTOMER_MANAGED', 'provisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'spec': 'string', 'templateMajorVersion': 'string', 'templateMinorVersion': 'string', 'templateName': 'string' } }
Response Structure
(dict) --
environment (dict) --
The environment detail data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
createdAt (datetime) --
The time when the environment was created.
deploymentStatus (string) --
The environment deployment status.
deploymentStatusMessage (string) --
An environment deployment status message.
description (string) --
The description of the environment.
environmentAccountConnectionId (string) --
The ID of the environment account connection that Proton uses to provision infrastructure resources in an environment account.
environmentAccountId (string) --
The ID of the environment account that the environment infrastructure resources are provisioned in.
lastDeploymentAttemptedAt (datetime) --
The time when a deployment of the environment was last attempted.
lastDeploymentSucceededAt (datetime) --
The time when the environment was last deployed successfully.
name (string) --
The name of the environment.
protonServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
provisioning (string) --
When included, indicates that the environment template is for customer provisioned and managed infrastructure.
provisioningRepository (dict) --
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
spec (string) --
The environment spec.
templateMajorVersion (string) --
The major version of the environment template.
templateMinorVersion (string) --
The minor version of the environment template.
templateName (string) --
The Amazon Resource Name (ARN) of the environment template.
{'codebuildRoleArn': 'string'}Response
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
Create an environment account connection in an environment account so that environment infrastructure resources can be provisioned in the environment account from a management account.
An environment account connection is a secure bi-directional connection between a management account and an environment account that maintains authorization and permissions. For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.create_environment_account_connection( clientToken='string', codebuildRoleArn='string', componentRoleArn='string', environmentName='string', managementAccountId='string', roleArn='string', tags=[ { 'key': 'string', 'value': 'string' }, ] )
string
When included, if two identical requests are made with the same client token, Proton returns the environment account connection that the first request created.
This field is autopopulated if not provided.
string
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
string
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
You must specify componentRoleArn to allow directly defined components to be associated with any environments running in this account.
For more information about components, see Proton components in the Proton User Guide .
string
[REQUIRED]
The name of the Proton environment that's created in the associated management account.
string
[REQUIRED]
The ID of the management account that accepts or rejects the environment account connection. You create and manage the Proton environment in this account. If the management account accepts the environment account connection, Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.
string
[REQUIRED]
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
list
An optional list of metadata items that you can associate with the Proton environment account connection. 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.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The environment account connection detail data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.
{'environment': {'codebuildRoleArn': 'string'}}
Delete an environment.
See also: AWS API Documentation
Request Syntax
client.delete_environment( name='string' )
string
[REQUIRED]
The name of the environment to delete.
dict
Response Syntax
{ 'environment': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'createdAt': datetime(2015, 1, 1), 'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED', 'deploymentStatusMessage': 'string', 'description': 'string', 'environmentAccountConnectionId': 'string', 'environmentAccountId': 'string', 'lastDeploymentAttemptedAt': datetime(2015, 1, 1), 'lastDeploymentSucceededAt': datetime(2015, 1, 1), 'name': 'string', 'protonServiceRoleArn': 'string', 'provisioning': 'CUSTOMER_MANAGED', 'provisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'spec': 'string', 'templateMajorVersion': 'string', 'templateMinorVersion': 'string', 'templateName': 'string' } }
Response Structure
(dict) --
environment (dict) --
The detailed data of the environment being deleted.
arn (string) --
The Amazon Resource Name (ARN) of the environment.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
createdAt (datetime) --
The time when the environment was created.
deploymentStatus (string) --
The environment deployment status.
deploymentStatusMessage (string) --
An environment deployment status message.
description (string) --
The description of the environment.
environmentAccountConnectionId (string) --
The ID of the environment account connection that Proton uses to provision infrastructure resources in an environment account.
environmentAccountId (string) --
The ID of the environment account that the environment infrastructure resources are provisioned in.
lastDeploymentAttemptedAt (datetime) --
The time when a deployment of the environment was last attempted.
lastDeploymentSucceededAt (datetime) --
The time when the environment was last deployed successfully.
name (string) --
The name of the environment.
protonServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
provisioning (string) --
When included, indicates that the environment template is for customer provisioned and managed infrastructure.
provisioningRepository (dict) --
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
spec (string) --
The environment spec.
templateMajorVersion (string) --
The major version of the environment template.
templateMinorVersion (string) --
The minor version of the environment template.
templateName (string) --
The Amazon Resource Name (ARN) of the environment template.
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
In an environment account, delete an environment account connection.
After you delete an environment account connection that’s in use by an Proton environment, Proton can’t manage the environment infrastructure resources until a new environment account connection is accepted for the environment account and associated environment. You're responsible for cleaning up provisioned resources that remain without an environment connection.
For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.delete_environment_account_connection( id='string' )
string
[REQUIRED]
The ID of the environment account connection to delete.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The detailed data of the environment account connection being deleted.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.
{'accountSettings': {'pipelineCodebuildRoleArn': 'string'}}
Get detail data for Proton account-wide settings.
See also: AWS API Documentation
Request Syntax
client.get_account_settings()
dict
Response Syntax
{ 'accountSettings': { 'pipelineCodebuildRoleArn': 'string', 'pipelineProvisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'pipelineServiceRoleArn': 'string' } }
Response Structure
(dict) --
accountSettings (dict) --
The Proton pipeline service role detail data that's returned by Proton.
pipelineCodebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the service role that Proton uses for provisioning pipelines. Proton assumes this role for CodeBuild-based provisioning.
pipelineProvisioningRepository (dict) --
The linked repository for pipeline provisioning. Required if you have environments configured for self-managed provisioning with services that include pipelines. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
pipelineServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the service role that Proton uses for provisioning pipelines. Proton assumes this role for Amazon Web Services-managed provisioning.
{'environment': {'codebuildRoleArn': 'string'}}
Get detailed data for an environment.
See also: AWS API Documentation
Request Syntax
client.get_environment( name='string' )
string
[REQUIRED]
The name of the environment that you want to get the detailed data for.
dict
Response Syntax
{ 'environment': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'createdAt': datetime(2015, 1, 1), 'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED', 'deploymentStatusMessage': 'string', 'description': 'string', 'environmentAccountConnectionId': 'string', 'environmentAccountId': 'string', 'lastDeploymentAttemptedAt': datetime(2015, 1, 1), 'lastDeploymentSucceededAt': datetime(2015, 1, 1), 'name': 'string', 'protonServiceRoleArn': 'string', 'provisioning': 'CUSTOMER_MANAGED', 'provisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'spec': 'string', 'templateMajorVersion': 'string', 'templateMinorVersion': 'string', 'templateName': 'string' } }
Response Structure
(dict) --
environment (dict) --
The detailed data of the requested environment.
arn (string) --
The Amazon Resource Name (ARN) of the environment.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
createdAt (datetime) --
The time when the environment was created.
deploymentStatus (string) --
The environment deployment status.
deploymentStatusMessage (string) --
An environment deployment status message.
description (string) --
The description of the environment.
environmentAccountConnectionId (string) --
The ID of the environment account connection that Proton uses to provision infrastructure resources in an environment account.
environmentAccountId (string) --
The ID of the environment account that the environment infrastructure resources are provisioned in.
lastDeploymentAttemptedAt (datetime) --
The time when a deployment of the environment was last attempted.
lastDeploymentSucceededAt (datetime) --
The time when the environment was last deployed successfully.
name (string) --
The name of the environment.
protonServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
provisioning (string) --
When included, indicates that the environment template is for customer provisioned and managed infrastructure.
provisioningRepository (dict) --
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
spec (string) --
The environment spec.
templateMajorVersion (string) --
The major version of the environment template.
templateMinorVersion (string) --
The minor version of the environment template.
templateName (string) --
The Amazon Resource Name (ARN) of the environment template.
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
In an environment account, get the detailed data for an environment account connection.
For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.get_environment_account_connection( id='string' )
string
[REQUIRED]
The ID of the environment account connection that you want to get the detailed data for.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The detailed data of the requested environment account connection.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
In a management account, reject an environment account connection from another environment account.
After you reject an environment account connection request, you can't accept or use the rejected environment account connection.
You can’t reject an environment account connection that's connected to an environment.
For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.reject_environment_account_connection( id='string' )
string
[REQUIRED]
The ID of the environment account connection to reject.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The environment connection account detail data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.
{'pipelineCodebuildRoleArn': 'string'}Response
{'accountSettings': {'pipelineCodebuildRoleArn': 'string'}}
Update Proton settings that are used for multiple services in the Amazon Web Services account.
See also: AWS API Documentation
Request Syntax
client.update_account_settings( deletePipelineProvisioningRepository=True|False, pipelineCodebuildRoleArn='string', pipelineProvisioningRepository={ 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, pipelineServiceRoleArn='string' )
boolean
Set to true to remove a configured pipeline repository from the account settings. Don't set this field if you are updating the configured pipeline repository.
string
The Amazon Resource Name (ARN) of the service role you want to use for provisioning pipelines. Proton assumes this role for CodeBuild-based provisioning.
dict
A linked repository for pipeline provisioning. Specify it if you have environments configured for self-managed provisioning with services that include pipelines. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
To remove a previously configured repository, set deletePipelineProvisioningRepository to true , and don't set pipelineProvisioningRepository .
branch (string) -- [REQUIRED]
The repository branch.
name (string) -- [REQUIRED]
The repository name.
provider (string) -- [REQUIRED]
The repository provider.
string
The Amazon Resource Name (ARN) of the service role you want to use for provisioning pipelines. Assumed by Proton for Amazon Web Services-managed provisioning, and by customer-owned automation for self-managed provisioning.
To remove a previously configured ARN, specify an empty string.
dict
Response Syntax
{ 'accountSettings': { 'pipelineCodebuildRoleArn': 'string', 'pipelineProvisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'pipelineServiceRoleArn': 'string' } }
Response Structure
(dict) --
accountSettings (dict) --
The Proton pipeline service role and repository data shared across the Amazon Web Services account.
pipelineCodebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the service role that Proton uses for provisioning pipelines. Proton assumes this role for CodeBuild-based provisioning.
pipelineProvisioningRepository (dict) --
The linked repository for pipeline provisioning. Required if you have environments configured for self-managed provisioning with services that include pipelines. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
pipelineServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the service role that Proton uses for provisioning pipelines. Proton assumes this role for Amazon Web Services-managed provisioning.
{'codebuildRoleArn': 'string'}Response
{'environment': {'codebuildRoleArn': 'string'}}
Update an environment.
If the environment is associated with an environment account connection, don't update or include the protonServiceRoleArn , codebuildRoleArn , and provisioningRepository parameters.
You can only update to a new environment account connection if that connection was created in the same environment account that the current environment account connection was created in. The account connection must also be associated with the current environment.
If the environment isn't associated with an environment account connection, don't update or include the environmentAccountConnectionId parameter. You can't update or connect the environment to an environment account connection if it isn't already associated with an environment connection.
You can update either environmentAccountConnectionId or one or more of protonServiceRoleArn , codebuildRoleArn , and provisioningRepository .
If the environment was configured for Amazon Web Services-managed or CodeBuild-based provisioning, omit the provisioningRepository parameter.
If the environment was configured for self-managed provisioning, specify the provisioningRepository parameter and omit the protonServiceRoleArn , codebuildRoleArn , and provisioningRepository parameters.
For more information, see Environments and Provisioning methods in the Proton User Guide .
There are four modes for updating an environment. The deploymentType field defines the mode.
NONE
In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.
CURRENT_VERSION
In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. Don’t include minor or major version parameters when you use this deployment-type .
MINOR_VERSION
In this mode, the environment 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 environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that's higher than the major version in use and a minor version.
See also: AWS API Documentation
Request Syntax
client.update_environment( codebuildRoleArn='string', componentRoleArn='string', deploymentType='NONE'|'CURRENT_VERSION'|'MINOR_VERSION'|'MAJOR_VERSION', description='string', environmentAccountConnectionId='string', name='string', protonServiceRoleArn='string', provisioningRepository={ 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, spec='string', templateMajorVersion='string', templateMinorVersion='string' )
string
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
string
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
string
[REQUIRED]
There are four modes for updating an environment. The deploymentType field defines the mode.
NONE
In this mode, a deployment doesn't occur. Only the requested metadata parameters are updated.
CURRENT_VERSION
In this mode, the environment 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 environment 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 environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).
string
A description of the environment update.
string
The ID of the environment account connection that you provide if you want Proton to provision infrastructure resources for your environment or for any of the service instances running in it in an environment account. For more information, see Environment account connections in the Proton User guide .
You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.
string
[REQUIRED]
The name of the environment to update.
string
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
dict
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
branch (string) -- [REQUIRED]
The repository branch.
name (string) -- [REQUIRED]
The repository name.
provider (string) -- [REQUIRED]
The repository provider.
string
The formatted specification that defines the update.
string
The major version of the environment to update.
string
The minor version of the environment to update.
dict
Response Syntax
{ 'environment': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'createdAt': datetime(2015, 1, 1), 'deploymentStatus': 'IN_PROGRESS'|'FAILED'|'SUCCEEDED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'CANCELLING'|'CANCELLED', 'deploymentStatusMessage': 'string', 'description': 'string', 'environmentAccountConnectionId': 'string', 'environmentAccountId': 'string', 'lastDeploymentAttemptedAt': datetime(2015, 1, 1), 'lastDeploymentSucceededAt': datetime(2015, 1, 1), 'name': 'string', 'protonServiceRoleArn': 'string', 'provisioning': 'CUSTOMER_MANAGED', 'provisioningRepository': { 'arn': 'string', 'branch': 'string', 'name': 'string', 'provider': 'GITHUB'|'GITHUB_ENTERPRISE'|'BITBUCKET' }, 'spec': 'string', 'templateMajorVersion': 'string', 'templateMinorVersion': 'string', 'templateName': 'string' } }
Response Structure
(dict) --
environment (dict) --
The environment detail data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.
The environment must have a componentRoleArn to allow directly defined components to be associated with the environment.
For more information about components, see Proton components in the Proton User Guide .
createdAt (datetime) --
The time when the environment was created.
deploymentStatus (string) --
The environment deployment status.
deploymentStatusMessage (string) --
An environment deployment status message.
description (string) --
The description of the environment.
environmentAccountConnectionId (string) --
The ID of the environment account connection that Proton uses to provision infrastructure resources in an environment account.
environmentAccountId (string) --
The ID of the environment account that the environment infrastructure resources are provisioned in.
lastDeploymentAttemptedAt (datetime) --
The time when a deployment of the environment was last attempted.
lastDeploymentSucceededAt (datetime) --
The time when the environment was last deployed successfully.
name (string) --
The name of the environment.
protonServiceRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using Amazon Web Services-managed provisioning and CloudFormation on your behalf.
provisioning (string) --
When included, indicates that the environment template is for customer provisioned and managed infrastructure.
provisioningRepository (dict) --
The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository .
arn (string) --
The Amazon Resource Name (ARN) of the linked repository.
branch (string) --
The repository branch.
name (string) --
The repository name.
provider (string) --
The repository provider.
spec (string) --
The environment spec.
templateMajorVersion (string) --
The major version of the environment template.
templateMinorVersion (string) --
The minor version of the environment template.
templateName (string) --
The Amazon Resource Name (ARN) of the environment template.
{'codebuildRoleArn': 'string'}Response
{'environmentAccountConnection': {'codebuildRoleArn': 'string'}}
In an environment account, update an environment account connection to use a new IAM role.
For more information, see Environment account connections in the Proton User guide .
See also: AWS API Documentation
Request Syntax
client.update_environment_account_connection( codebuildRoleArn='string', componentRoleArn='string', id='string', roleArn='string' )
string
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
string
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
string
[REQUIRED]
The ID of the environment account connection to update.
string
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
dict
Response Syntax
{ 'environmentAccountConnection': { 'arn': 'string', 'codebuildRoleArn': 'string', 'componentRoleArn': 'string', 'environmentAccountId': 'string', 'environmentName': 'string', 'id': 'string', 'lastModifiedAt': datetime(2015, 1, 1), 'managementAccountId': 'string', 'requestedAt': datetime(2015, 1, 1), 'roleArn': 'string', 'status': 'PENDING'|'CONNECTED'|'REJECTED' } }
Response Structure
(dict) --
environmentAccountConnection (dict) --
The environment account connection detail data that's returned by Proton.
arn (string) --
The Amazon Resource Name (ARN) of the environment account connection.
codebuildRoleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
componentRoleArn (string) --
The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
The environment account connection must have a componentRoleArn to allow directly defined components to be associated with any environments running in the account.
For more information about components, see Proton components in the Proton User Guide .
environmentAccountId (string) --
The environment account that's connected to the environment account connection.
environmentName (string) --
The name of the environment that's associated with the environment account connection.
id (string) --
The ID of the environment account connection.
lastModifiedAt (datetime) --
The time when the environment account connection was last modified.
managementAccountId (string) --
The ID of the management account that's connected to the environment account connection.
requestedAt (datetime) --
The time when the environment account connection request was made.
roleArn (string) --
The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using Amazon Web Services-managed provisioning and CloudFormation in the associated environment account.
status (string) --
The status of the environment account connection.