Class: Aws::Proton::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
lib/aws-sdk-proton/client.rb

Overview

An API client for Proton. To construct a client, you need to configure a ‘:region` and `:credentials`.

client = Aws::Proton::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).

See #initialize for a full list of supported configuration options.

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • ‘Aws::Credentials` - Used for configuring static, non-refreshing credentials.

    • ‘Aws::SharedCredentials` - Used for loading static credentials from a shared file, such as `~/.aws/config`.

    • ‘Aws::AssumeRoleCredentials` - Used when you need to assume a role.

    • ‘Aws::AssumeRoleWebIdentityCredentials` - Used when you need to assume a role after providing credentials via the web.

    • ‘Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an access token generated from `aws login`.

    • ‘Aws::ProcessCredentials` - Used for loading credentials from a process that outputs to stdout.

    • ‘Aws::InstanceProfileCredentials` - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • ‘Aws::ECSCredentials` - Used for loading credentials from instances running in ECS.

    • ‘Aws::CognitoIdentityCredentials` - Used for loading credentials from the Cognito Identity service.

    When ‘:credentials` are not configured directly, the following locations will be searched for credentials:

    • Aws.config`

    • The ‘:access_key_id`, `:secret_access_key`, and `:session_token` options.

    • ENV, ENV

    • ‘~/.aws/credentials`

    • ‘~/.aws/config`

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of ‘Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV to true.

  • :region (required, String)

    The AWS region to connect to. The configured ‘:region` is used to determine the service `:endpoint`. When not passed, a default `:region` is searched for in the following locations:

  • :access_key_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to ‘true`, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to `false`.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in ‘adaptive` retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a `RetryCapacityNotAvailableError` and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When ‘true`, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When ‘true`, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in ‘standard` and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to ‘true’ the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the ‘:endpoint` option directly. This is normally constructed from the `:region` option. Configuring `:endpoint` is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to ‘true`, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the ‘:logger` at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in ‘standard` and `adaptive` retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, ‘default’ is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the ‘legacy` retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the ‘legacy` retry mode.

    @see www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the ‘legacy` retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • ‘legacy` - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • ‘standard` - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • ‘adaptive` - An experimental retry mode that includes all the functionality of `standard` mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default ‘:sigv4a_signing_region_set` is searched for in the following locations:

  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disables response data type conversions. The request parameters hash must be formatted exactly as the API expects.This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    ** Please note ** When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses ‘NoOpTelemetryProvider` which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the

    ‘opentelemetry-sdk` gem and then, pass in an instance of a `Aws::Telemetry::OTelProvider` for telemetry provider.

  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • ‘Aws::StaticTokenProvider` - Used for configuring static, non-refreshing tokens.

    • ‘Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an access token generated from `aws login`.

    When ‘:token_provider` is not configured directly, the `Aws::TokenProviderChain` will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to ‘true`, dualstack enabled endpoints (with `.aws` TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to ‘true`, fips compatible endpoints will be used if available. When a `fips` region is used, the region is normalized and this config is set to `true`.

  • :validate_params (Boolean) — default: true

    When ‘true`, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::Proton::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Proton::EndpointParameters`

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has “Expect” header set to “100-continue”. Defaults to ‘nil` which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like ‘proxy.com:123’.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When ‘true`, HTTP debug output will be sent to the `:logger`.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a ‘content-length`).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When ‘true`, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When ‘true`, SSL peer certificates are verified when establishing a connection.



441
442
443
# File 'lib/aws-sdk-proton/client.rb', line 441

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



6294
6295
6296
# File 'lib/aws-sdk-proton/client.rb', line 6294

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



6297
6298
6299
# File 'lib/aws-sdk-proton/client.rb', line 6297

def errors_module
  Errors
end

Instance Method Details

#accept_environment_account_connection(params = {}) ⇒ Types::AcceptEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  id: "EnvironmentAccountConnectionId", # required
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the environment account connection.

Returns:

See Also:



490
491
492
493
# File 'lib/aws-sdk-proton/client.rb', line 490

def (params = {}, options = {})
  req = build_request(:accept_environment_account_connection, params)
  req.send_request(options)
end

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

  • params ({}) (defaults to: {})


6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
# File 'lib/aws-sdk-proton/client.rb', line 6136

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  tracer = config.telemetry_provider.tracer_provider.tracer(
    Aws::Telemetry.module_to_tracer_name('Aws::Proton')
  )
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config,
    tracer: tracer
  )
  context[:gem_name] = 'aws-sdk-proton'
  context[:gem_version] = '1.42.0'
  Seahorse::Client::Request.new(handlers, context)
end

#cancel_component_deployment(params = {}) ⇒ Types::CancelComponentDeploymentOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.cancel_component_deployment({
  component_name: "ResourceName", # required
})

Response structure


resp.component.arn #=> String
resp.component.created_at #=> Time
resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.component.deployment_status_message #=> String
resp.component.description #=> String
resp.component.environment_name #=> String
resp.component.last_attempted_deployment_id #=> String
resp.component.last_client_request_token #=> String
resp.component.last_deployment_attempted_at #=> Time
resp.component.last_deployment_succeeded_at #=> Time
resp.component.last_modified_at #=> Time
resp.component.last_succeeded_deployment_id #=> String
resp.component.name #=> String
resp.component.service_instance_name #=> String
resp.component.service_name #=> String
resp.component.service_spec #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_name (required, String)

    The name of the component with the deployment to cancel.

Returns:

See Also:



541
542
543
544
# File 'lib/aws-sdk-proton/client.rb', line 541

def cancel_component_deployment(params = {}, options = {})
  req = build_request(:cancel_component_deployment, params)
  req.send_request(options)
end

#cancel_environment_deployment(params = {}) ⇒ Types::CancelEnvironmentDeploymentOutput

Attempts to cancel an environment deployment on an UpdateEnvironment action, if the deployment is ‘IN_PROGRESS`. For more information, see

Update an environment][1

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.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-update.html

Examples:

Request syntax with placeholder values


resp = client.cancel_environment_deployment({
  environment_name: "ResourceName", # required
})

Response structure


resp.environment.arn #=> String
resp.environment.codebuild_role_arn #=> String
resp.environment.component_role_arn #=> String
resp.environment.created_at #=> Time
resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environment.deployment_status_message #=> String
resp.environment.description #=> String
resp.environment. #=> String
resp.environment. #=> String
resp.environment.last_attempted_deployment_id #=> String
resp.environment.last_deployment_attempted_at #=> Time
resp.environment.last_deployment_succeeded_at #=> Time
resp.environment.last_succeeded_deployment_id #=> String
resp.environment.name #=> String
resp.environment.proton_service_role_arn #=> String
resp.environment.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment.provisioning_repository.arn #=> String
resp.environment.provisioning_repository.branch #=> String
resp.environment.provisioning_repository.name #=> String
resp.environment.provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.environment.spec #=> String
resp.environment.template_major_version #=> String
resp.environment.template_minor_version #=> String
resp.environment.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :environment_name (required, String)

    The name of the environment with the deployment to cancel.

Returns:

See Also:



610
611
612
613
# File 'lib/aws-sdk-proton/client.rb', line 610

def cancel_environment_deployment(params = {}, options = {})
  req = build_request(:cancel_environment_deployment, params)
  req.send_request(options)
end

#cancel_service_instance_deployment(params = {}) ⇒ Types::CancelServiceInstanceDeploymentOutput

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.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-svc-instance-update.html

Examples:

Request syntax with placeholder values


resp = client.cancel_service_instance_deployment({
  service_instance_name: "ResourceName", # required
  service_name: "ResourceName", # required
})

Response structure


resp.service_instance.arn #=> String
resp.service_instance.created_at #=> Time
resp.service_instance.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service_instance.deployment_status_message #=> String
resp.service_instance.environment_name #=> String
resp.service_instance.last_attempted_deployment_id #=> String
resp.service_instance.last_client_request_token #=> String
resp.service_instance.last_deployment_attempted_at #=> Time
resp.service_instance.last_deployment_succeeded_at #=> Time
resp.service_instance.last_succeeded_deployment_id #=> String
resp.service_instance.name #=> String
resp.service_instance.service_name #=> String
resp.service_instance.spec #=> String
resp.service_instance.template_major_version #=> String
resp.service_instance.template_minor_version #=> String
resp.service_instance.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_instance_name (required, String)

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

  • :service_name (required, String)

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

Returns:

See Also:



677
678
679
680
# File 'lib/aws-sdk-proton/client.rb', line 677

def cancel_service_instance_deployment(params = {}, options = {})
  req = build_request(:cancel_service_instance_deployment, params)
  req.send_request(options)
end

#cancel_service_pipeline_deployment(params = {}) ⇒ Types::CancelServicePipelineDeploymentOutput

Attempts to cancel a service pipeline deployment on an UpdateServicePipeline action, if the deployment is ‘IN_PROGRESS`. For more information, see [Update a service pipeline] 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 UpdateServicePipeline action succeeds before the cancellation attempt starts, the resulting deployment state is ‘SUCCEEDED` and the cancellation attempt has no effect.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-svc-pipeline-update.html

Examples:

Request syntax with placeholder values


resp = client.cancel_service_pipeline_deployment({
  service_name: "ResourceName", # required
})

Response structure


resp.pipeline.arn #=> String
resp.pipeline.created_at #=> Time
resp.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.pipeline.deployment_status_message #=> String
resp.pipeline.last_attempted_deployment_id #=> String
resp.pipeline.last_deployment_attempted_at #=> Time
resp.pipeline.last_deployment_succeeded_at #=> Time
resp.pipeline.last_succeeded_deployment_id #=> String
resp.pipeline.spec #=> String
resp.pipeline.template_major_version #=> String
resp.pipeline.template_minor_version #=> String
resp.pipeline.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_name (required, String)

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

Returns:

See Also:



736
737
738
739
# File 'lib/aws-sdk-proton/client.rb', line 736

def cancel_service_pipeline_deployment(params = {}, options = {})
  req = build_request(:cancel_service_pipeline_deployment, params)
  req.send_request(options)
end

#create_component(params = {}) ⇒ Types::CreateComponentOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.create_component({
  client_token: "ClientToken",
  description: "Description",
  environment_name: "ResourceName",
  manifest: "TemplateManifestContents", # required
  name: "ResourceName", # required
  service_instance_name: "ResourceName",
  service_name: "ResourceName",
  service_spec: "SpecContents",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_file: "TemplateFileContents", # required
})

Response structure


resp.component.arn #=> String
resp.component.created_at #=> Time
resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.component.deployment_status_message #=> String
resp.component.description #=> String
resp.component.environment_name #=> String
resp.component.last_attempted_deployment_id #=> String
resp.component.last_client_request_token #=> String
resp.component.last_deployment_attempted_at #=> Time
resp.component.last_deployment_succeeded_at #=> Time
resp.component.last_modified_at #=> Time
resp.component.last_succeeded_deployment_id #=> String
resp.component.name #=> String
resp.component.service_instance_name #=> String
resp.component.service_name #=> String
resp.component.service_spec #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    The client token for the created component.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :description (String)

    An optional customer-provided description of the component.

  • :environment_name (String)

    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`.

  • :manifest (required, String)

    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.

  • :name (required, String)

    The customer-provided name of the component.

  • :service_instance_name (String)

    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.

  • :service_name (String)

    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.

  • :service_spec (String)

    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.

  • :tags (Array<Types::Tag>)

    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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_file (required, String)

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

    <note markdown=“1”> Components support a single IaC file, even if you use Terraform as your template language.

    </note>
    

Returns:

See Also:



857
858
859
860
# File 'lib/aws-sdk-proton/client.rb', line 857

def create_component(params = {}, options = {})
  req = build_request(:create_component, params)
  req.send_request(options)
end

#create_environment(params = {}) ⇒ Types::CreateEnvironmentOutput

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.

For more information, see [Environments] and [Provisioning methods] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-environments.html [2]: docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html

Examples:

Request syntax with placeholder values


resp = client.create_environment({
  codebuild_role_arn: "RoleArn",
  component_role_arn: "RoleArn",
  description: "Description",
  environment_account_connection_id: "EnvironmentAccountConnectionId",
  name: "ResourceName", # required
  proton_service_role_arn: "Arn",
  provisioning_repository: {
    branch: "GitBranchName", # required
    name: "RepositoryName", # required
    provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  },
  spec: "SpecContents", # required
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_major_version: "TemplateVersionPart", # required
  template_minor_version: "TemplateVersionPart",
  template_name: "ResourceName", # required
})

Response structure


resp.environment.arn #=> String
resp.environment.codebuild_role_arn #=> String
resp.environment.component_role_arn #=> String
resp.environment.created_at #=> Time
resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environment.deployment_status_message #=> String
resp.environment.description #=> String
resp.environment. #=> String
resp.environment. #=> String
resp.environment.last_attempted_deployment_id #=> String
resp.environment.last_deployment_attempted_at #=> Time
resp.environment.last_deployment_succeeded_at #=> Time
resp.environment.last_succeeded_deployment_id #=> String
resp.environment.name #=> String
resp.environment.proton_service_role_arn #=> String
resp.environment.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment.provisioning_repository.arn #=> String
resp.environment.provisioning_repository.branch #=> String
resp.environment.provisioning_repository.name #=> String
resp.environment.provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.environment.spec #=> String
resp.environment.template_major_version #=> String
resp.environment.template_minor_version #=> String
resp.environment.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :codebuild_role_arn (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.

  • :component_role_arn (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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :description (String)

    A description of the environment that’s being created and deployed.

  • :environment_account_connection_id (String)

    The ID of the environment account connection that you provide if you’re provisioning your environment infrastructure resources to an environment account. For more information, see [Environment account connections] in the *Proton User guide*.

    To use Amazon Web Services-managed provisioning for the environment, specify either the ‘environmentAccountConnectionId` or `protonServiceRoleArn` parameter and omit the `provisioningRepository` parameter.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

  • :name (required, String)

    The name of the environment.

  • :proton_service_role_arn (String)

    The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make calls to other services on your behalf.

    To use Amazon Web Services-managed provisioning for the environment, specify either the ‘environmentAccountConnectionId` or `protonServiceRoleArn` parameter and omit the `provisioningRepository` parameter.

  • :provisioning_repository (Types::RepositoryBranchInput)

    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, specify this parameter and omit the ‘environmentAccountConnectionId` and `protonServiceRoleArn` parameters.

  • :spec (required, String)

    A YAML formatted string that provides inputs as defined in the environment template bundle schema file. For more information, see

    Environments][1

    in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-environments.html

  • :tags (Array<Types::Tag>)

    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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_major_version (required, String)

    The major version of the environment template.

  • :template_minor_version (String)

    The minor version of the environment template.

  • :template_name (required, String)

    The name of the environment template. For more information, see

    Environment Templates][1

    in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-templates.html

Returns:

See Also:



1043
1044
1045
1046
# File 'lib/aws-sdk-proton/client.rb', line 1043

def create_environment(params = {}, options = {})
  req = build_request(:create_environment, params)
  req.send_request(options)
end

#create_environment_account_connection(params = {}) ⇒ Types::CreateEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  client_token: "ClientToken",
  codebuild_role_arn: "RoleArn",
  component_role_arn: "RoleArn",
  environment_name: "ResourceName", # required
  management_account_id: "AwsAccountId", # required
  role_arn: "RoleArn",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (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.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :codebuild_role_arn (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.

  • :component_role_arn (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.

    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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :environment_name (required, String)

    The name of the Proton environment that’s created in the associated management account.

  • :management_account_id (required, String)

    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.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of the IAM service role that’s created in the environment account. Proton uses this role to provision infrastructure resources in the associated environment account.

  • :tags (Array<Types::Tag>)

    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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Returns:

See Also:



1159
1160
1161
1162
# File 'lib/aws-sdk-proton/client.rb', line 1159

def (params = {}, options = {})
  req = build_request(:create_environment_account_connection, params)
  req.send_request(options)
end

#create_environment_template(params = {}) ⇒ Types::CreateEnvironmentTemplateOutput

Create an environment template for Proton. For more information, see

Environment Templates][1

in the *Proton User Guide*.

You can create an environment template in one of the two following ways:

  • Register and publish a standard environment template that instructs Proton to deploy and manage environment infrastructure.

  • Register and publish a *customer managed* environment template that connects Proton to your existing provisioned infrastructure that you manage. Proton *doesn’t* manage your existing provisioned infrastructure. To create an environment template for customer provisioned and managed infrastructure, include the ‘provisioning` parameter and set the value to `CUSTOMER_MANAGED`. For more information, see [Register and publish an environment template] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-templates.html [2]: docs.aws.amazon.com/proton/latest/userguide/template-create.html

Examples:

Request syntax with placeholder values


resp = client.create_environment_template({
  description: "Description",
  display_name: "DisplayName",
  encryption_key: "Arn",
  name: "ResourceName", # required
  provisioning: "CUSTOMER_MANAGED", # accepts CUSTOMER_MANAGED
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.environment_template.arn #=> String
resp.environment_template.created_at #=> Time
resp.environment_template.description #=> String
resp.environment_template.display_name #=> String
resp.environment_template.encryption_key #=> String
resp.environment_template.last_modified_at #=> Time
resp.environment_template.name #=> String
resp.environment_template.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    A description of the environment template.

  • :display_name (String)

    The environment template name as displayed in the developer interface.

  • :encryption_key (String)

    A customer provided encryption key that Proton uses to encrypt data.

  • :name (required, String)

    The name of the environment template.

  • :provisioning (String)

    When included, indicates that the environment template is for customer provisioned and managed infrastructure.

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Returns:

See Also:



1250
1251
1252
1253
# File 'lib/aws-sdk-proton/client.rb', line 1250

def create_environment_template(params = {}, options = {})
  req = build_request(:create_environment_template, params)
  req.send_request(options)
end

#create_environment_template_version(params = {}) ⇒ Types::CreateEnvironmentTemplateVersionOutput

Create a new major or minor version of an environment template. A major version of an environment template is a version that *isn’t* backwards compatible. A minor version of an environment template is a version that’s backwards compatible within its major version.

Examples:

Request syntax with placeholder values


resp = client.create_environment_template_version({
  client_token: "ClientToken",
  description: "Description",
  major_version: "TemplateVersionPart",
  source: { # required
    s3: {
      bucket: "S3Bucket", # required
      key: "S3Key", # required
    },
  },
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_name: "ResourceName", # required
})

Response structure


resp.environment_template_version.arn #=> String
resp.environment_template_version.created_at #=> Time
resp.environment_template_version.description #=> String
resp.environment_template_version.last_modified_at #=> Time
resp.environment_template_version.major_version #=> String
resp.environment_template_version.minor_version #=> String
resp.environment_template_version.recommended_minor_version #=> String
resp.environment_template_version.schema #=> String
resp.environment_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.environment_template_version.status_message #=> String
resp.environment_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    When included, if two identical requests are made with the same client token, Proton returns the environment template version that the first request created.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :description (String)

    A description of the new version of an environment template.

  • :major_version (String)

    To create a new minor version of the environment template, include ‘major Version`.

    To create a new major and minor version of the environment template, exclude ‘major Version`.

  • :source (required, Types::TemplateVersionSourceInput)

    An object that includes the template bundle S3 bucket path and name for the new version of an template.

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_name (required, String)

    The name of the environment template.

Returns:

See Also:



1339
1340
1341
1342
# File 'lib/aws-sdk-proton/client.rb', line 1339

def create_environment_template_version(params = {}, options = {})
  req = build_request(:create_environment_template_version, params)
  req.send_request(options)
end

#create_repository(params = {}) ⇒ Types::CreateRepositoryOutput

Create and register a link to a repository. Proton uses the link to repeatedly access the repository, to either push to it (self-managed provisioning) or pull from it (template sync). You can share a linked repository across multiple resources (like environments using self-managed provisioning, or synced templates). When you create a repository link, Proton creates a [service-linked role] for you.

For more information, see [Self-managed provisioning], [Template bundles], and [Template sync configurations] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/using-service-linked-roles.html [2]: docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html#ag-works-prov-methods-self [3]: docs.aws.amazon.com/proton/latest/userguide/ag-template-authoring.html#ag-template-bundles [4]: docs.aws.amazon.com/proton/latest/userguide/ag-template-sync-configs.html

Examples:

Request syntax with placeholder values


resp = client.create_repository({
  connection_arn: "Arn", # required
  encryption_key: "Arn",
  name: "RepositoryName", # required
  provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.repository.arn #=> String
resp.repository.connection_arn #=> String
resp.repository.encryption_key #=> String
resp.repository.name #=> String
resp.repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :connection_arn (required, String)

    The Amazon Resource Name (ARN) of your AWS CodeStar connection that connects Proton to your repository provider account. For more information, see [Setting up for Proton] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/setting-up-for-service.html

  • :encryption_key (String)

    The ARN of your customer Amazon Web Services Key Management Service (Amazon Web Services KMS) key.

  • :name (required, String)

    The repository name (for example, ‘myrepos/myrepo`).

  • :provider (required, String)

    The repository provider.

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Returns:

See Also:



1424
1425
1426
1427
# File 'lib/aws-sdk-proton/client.rb', line 1424

def create_repository(params = {}, options = {})
  req = build_request(:create_repository, params)
  req.send_request(options)
end

#create_service(params = {}) ⇒ Types::CreateServiceOutput

Create an Proton service. An Proton service is an instantiation of a service template and often includes several service instances and pipeline. For more information, see [Services] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-services.html

Examples:

Request syntax with placeholder values


resp = client.create_service({
  branch_name: "GitBranchName",
  description: "Description",
  name: "ResourceName", # required
  repository_connection_arn: "Arn",
  repository_id: "RepositoryId",
  spec: "SpecContents", # required
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_major_version: "TemplateVersionPart", # required
  template_minor_version: "TemplateVersionPart",
  template_name: "ResourceName", # required
})

Response structure


resp.service.arn #=> String
resp.service.branch_name #=> String
resp.service.created_at #=> Time
resp.service.description #=> String
resp.service.last_modified_at #=> Time
resp.service.name #=> String
resp.service.pipeline.arn #=> String
resp.service.pipeline.created_at #=> Time
resp.service.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service.pipeline.deployment_status_message #=> String
resp.service.pipeline.last_attempted_deployment_id #=> String
resp.service.pipeline.last_deployment_attempted_at #=> Time
resp.service.pipeline.last_deployment_succeeded_at #=> Time
resp.service.pipeline.last_succeeded_deployment_id #=> String
resp.service.pipeline.spec #=> String
resp.service.pipeline.template_major_version #=> String
resp.service.pipeline.template_minor_version #=> String
resp.service.pipeline.template_name #=> String
resp.service.repository_connection_arn #=> String
resp.service.repository_id #=> String
resp.service.spec #=> String
resp.service.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED_CLEANUP_IN_PROGRESS", "CREATE_FAILED_CLEANUP_COMPLETE", "CREATE_FAILED_CLEANUP_FAILED", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_COMPLETE", "UPDATE_FAILED_CLEANUP_FAILED", "UPDATE_FAILED", "UPDATE_COMPLETE_CLEANUP_FAILED"
resp.service.status_message #=> String
resp.service.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch_name (String)

    The name of the code repository branch that holds the code that’s deployed in Proton. *Don’t* include this parameter if your service template *doesn’t* include a service pipeline.

  • :description (String)

    A description of the Proton service.

  • :name (required, String)

    The service name.

  • :repository_connection_arn (String)

    The Amazon Resource Name (ARN) of the repository connection. For more information, see [Setting up an AWS CodeStar connection] in the *Proton User Guide*. *Don’t* include this parameter if your service template *doesn’t* include a service pipeline.

    [1]: docs.aws.amazon.com/proton/latest/userguide/setting-up-for-service.html#setting-up-vcontrol

  • :repository_id (String)

    The ID of the code repository. *Don’t* include this parameter if your service template *doesn’t* include a service pipeline.

  • :spec (required, String)

    A link to a spec file that provides inputs as defined in the service template bundle schema file. The spec file is in YAML format. *Don’t* include pipeline inputs in the spec if your service template *doesn’t* include a service pipeline. For more information, see [Create a service] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-create-svc.html

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_major_version (required, String)

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

  • :template_minor_version (String)

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

  • :template_name (required, String)

    The name of the service template that’s used to create the service.

Returns:

See Also:



1551
1552
1553
1554
# File 'lib/aws-sdk-proton/client.rb', line 1551

def create_service(params = {}, options = {})
  req = build_request(:create_service, params)
  req.send_request(options)
end

#create_service_instance(params = {}) ⇒ Types::CreateServiceInstanceOutput

Create a service instance.

Examples:

Request syntax with placeholder values


resp = client.create_service_instance({
  client_token: "ClientToken",
  name: "ResourceName", # required
  service_name: "ResourceName", # required
  spec: "SpecContents", # required
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_major_version: "TemplateVersionPart",
  template_minor_version: "TemplateVersionPart",
})

Response structure


resp.service_instance.arn #=> String
resp.service_instance.created_at #=> Time
resp.service_instance.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service_instance.deployment_status_message #=> String
resp.service_instance.environment_name #=> String
resp.service_instance.last_attempted_deployment_id #=> String
resp.service_instance.last_client_request_token #=> String
resp.service_instance.last_deployment_attempted_at #=> Time
resp.service_instance.last_deployment_succeeded_at #=> Time
resp.service_instance.last_succeeded_deployment_id #=> String
resp.service_instance.name #=> String
resp.service_instance.service_name #=> String
resp.service_instance.spec #=> String
resp.service_instance.template_major_version #=> String
resp.service_instance.template_minor_version #=> String
resp.service_instance.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    The client token of the service instance to create.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :name (required, String)

    The name of the service instance to create.

  • :service_name (required, String)

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

  • :spec (required, String)

    The spec for the service instance you want to create.

  • :tags (Array<Types::Tag>)

    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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_major_version (String)

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

  • :template_minor_version (String)

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

Returns:

See Also:



1636
1637
1638
1639
# File 'lib/aws-sdk-proton/client.rb', line 1636

def create_service_instance(params = {}, options = {})
  req = build_request(:create_service_instance, params)
  req.send_request(options)
end

#create_service_sync_config(params = {}) ⇒ Types::CreateServiceSyncConfigOutput

Create the Proton Ops configuration file.

Examples:

Request syntax with placeholder values


resp = client.create_service_sync_config({
  branch: "GitBranchName", # required
  file_path: "OpsFilePath", # required
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  service_name: "ResourceName", # required
})

Response structure


resp.service_sync_config.branch #=> String
resp.service_sync_config.file_path #=> String
resp.service_sync_config.repository_name #=> String
resp.service_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.service_sync_config.service_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch (required, String)

    The repository branch for your Proton Ops file.

  • :file_path (required, String)

    The path to the Proton Ops file.

  • :repository_name (required, String)

    The repository name.

  • :repository_provider (required, String)

    The provider type for your repository.

  • :service_name (required, String)

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

Returns:

See Also:



1684
1685
1686
1687
# File 'lib/aws-sdk-proton/client.rb', line 1684

def create_service_sync_config(params = {}, options = {})
  req = build_request(:create_service_sync_config, params)
  req.send_request(options)
end

#create_service_template(params = {}) ⇒ Types::CreateServiceTemplateOutput

Create a service template. The administrator creates a service template to define standardized infrastructure and an optional CI/CD service pipeline. Developers, in turn, select the service template from Proton. If the selected service template includes a service pipeline definition, they provide a link to their source code repository. Proton then deploys and manages the infrastructure defined by the selected service template. For more information, see [Proton templates] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-templates.html

Examples:

Request syntax with placeholder values


resp = client.create_service_template({
  description: "Description",
  display_name: "DisplayName",
  encryption_key: "Arn",
  name: "ResourceName", # required
  pipeline_provisioning: "CUSTOMER_MANAGED", # accepts CUSTOMER_MANAGED
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.service_template.arn #=> String
resp.service_template.created_at #=> Time
resp.service_template.description #=> String
resp.service_template.display_name #=> String
resp.service_template.encryption_key #=> String
resp.service_template.last_modified_at #=> Time
resp.service_template.name #=> String
resp.service_template.pipeline_provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.service_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    A description of the service template.

  • :display_name (String)

    The name of the service template as displayed in the developer interface.

  • :encryption_key (String)

    A customer provided encryption key that’s used to encrypt data.

  • :name (required, String)

    The name of the service template.

  • :pipeline_provisioning (String)

    By default, Proton provides a service pipeline for your service. When this parameter is included, it indicates that an Proton service pipeline *isn’t* provided for your service. After it’s included, it *can’t* be changed. For more information, see [Template bundles] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-template-authoring.html#ag-template-bundles

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Returns:

See Also:



1773
1774
1775
1776
# File 'lib/aws-sdk-proton/client.rb', line 1773

def create_service_template(params = {}, options = {})
  req = build_request(:create_service_template, params)
  req.send_request(options)
end

#create_service_template_version(params = {}) ⇒ Types::CreateServiceTemplateVersionOutput

Create a new major or minor version of a service template. A major version of a service template is a version that *isn’t* backward compatible. A minor version of a service template is a version that’s backward compatible within its major version.

Examples:

Request syntax with placeholder values


resp = client.create_service_template_version({
  client_token: "ClientToken",
  compatible_environment_templates: [ # required
    {
      major_version: "TemplateVersionPart", # required
      template_name: "ResourceName", # required
    },
  ],
  description: "Description",
  major_version: "TemplateVersionPart",
  source: { # required
    s3: {
      bucket: "S3Bucket", # required
      key: "S3Key", # required
    },
  },
  supported_component_sources: ["DIRECTLY_DEFINED"], # accepts DIRECTLY_DEFINED
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  template_name: "ResourceName", # required
})

Response structure


resp.service_template_version.arn #=> String
resp.service_template_version.compatible_environment_templates #=> Array
resp.service_template_version.compatible_environment_templates[0].major_version #=> String
resp.service_template_version.compatible_environment_templates[0].template_name #=> String
resp.service_template_version.created_at #=> Time
resp.service_template_version.description #=> String
resp.service_template_version.last_modified_at #=> Time
resp.service_template_version.major_version #=> String
resp.service_template_version.minor_version #=> String
resp.service_template_version.recommended_minor_version #=> String
resp.service_template_version.schema #=> String
resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.service_template_version.status_message #=> String
resp.service_template_version.supported_component_sources #=> Array
resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
resp.service_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    When included, if two identical requests are made with the same client token, Proton returns the service template version that the first request created.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :compatible_environment_templates (required, Array<Types::CompatibleEnvironmentTemplateInput>)

    An array of environment template objects that are compatible with the new service template version. A service instance based on this service template version can run in environments based on compatible templates.

  • :description (String)

    A description of the new version of a service template.

  • :major_version (String)

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

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

  • :source (required, Types::TemplateVersionSourceInput)

    An object that includes the template bundle S3 bucket path and name for the new version of a service template.

  • :supported_component_sources (Array<String>)

    An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.

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

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :tags (Array<Types::Tag>)

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

    For more information, see [Proton resources and tagging] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

  • :template_name (required, String)

    The name of the service template.

Returns:

See Also:



1892
1893
1894
1895
# File 'lib/aws-sdk-proton/client.rb', line 1892

def create_service_template_version(params = {}, options = {})
  req = build_request(:create_service_template_version, params)
  req.send_request(options)
end

#create_template_sync_config(params = {}) ⇒ Types::CreateTemplateSyncConfigOutput

Set up a template to create new template versions automatically by tracking a linked repository. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

When a commit is pushed to your linked repository, Proton checks for changes to your repository template bundles. If it detects a template bundle change, a new major or minor version of its template is created, if the version doesn’t already exist. For more information, see [Template sync configurations] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-template-sync-configs.html

Examples:

Request syntax with placeholder values


resp = client.create_template_sync_config({
  branch: "GitBranchName", # required
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  subdirectory: "Subdirectory",
  template_name: "ResourceName", # required
  template_type: "ENVIRONMENT", # required, accepts ENVIRONMENT, SERVICE
})

Response structure


resp.template_sync_config.branch #=> String
resp.template_sync_config.repository_name #=> String
resp.template_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.template_sync_config.subdirectory #=> String
resp.template_sync_config.template_name #=> String
resp.template_sync_config.template_type #=> String, one of "ENVIRONMENT", "SERVICE"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch (required, String)

    The repository branch for your template.

  • :repository_name (required, String)

    The repository name (for example, ‘myrepos/myrepo`).

  • :repository_provider (required, String)

    The provider type for your repository.

  • :subdirectory (String)

    A repository subdirectory path to your template bundle directory. When included, Proton limits the template bundle search to this repository directory.

  • :template_name (required, String)

    The name of your registered template.

  • :template_type (required, String)

    The type of the registered template.

Returns:

See Also:



1960
1961
1962
1963
# File 'lib/aws-sdk-proton/client.rb', line 1960

def create_template_sync_config(params = {}, options = {})
  req = build_request(:create_template_sync_config, params)
  req.send_request(options)
end

#delete_component(params = {}) ⇒ Types::DeleteComponentOutput

Delete an Proton component resource.

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.delete_component({
  name: "ResourceName", # required
})

Response structure


resp.component.arn #=> String
resp.component.created_at #=> Time
resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.component.deployment_status_message #=> String
resp.component.description #=> String
resp.component.environment_name #=> String
resp.component.last_attempted_deployment_id #=> String
resp.component.last_client_request_token #=> String
resp.component.last_deployment_attempted_at #=> Time
resp.component.last_deployment_succeeded_at #=> Time
resp.component.last_modified_at #=> Time
resp.component.last_succeeded_deployment_id #=> String
resp.component.name #=> String
resp.component.service_instance_name #=> String
resp.component.service_name #=> String
resp.component.service_spec #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the component to delete.

Returns:

See Also:



2010
2011
2012
2013
# File 'lib/aws-sdk-proton/client.rb', line 2010

def delete_component(params = {}, options = {})
  req = build_request(:delete_component, params)
  req.send_request(options)
end

#delete_deployment(params = {}) ⇒ Types::DeleteDeploymentOutput

Delete the deployment.

Examples:

Request syntax with placeholder values


resp = client.delete_deployment({
  id: "DeploymentId", # required
})

Response structure


resp.deployment.arn #=> String
resp.deployment.completed_at #=> Time
resp.deployment.component_name #=> String
resp.deployment.created_at #=> Time
resp.deployment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.deployment.deployment_status_message #=> String
resp.deployment.environment_name #=> String
resp.deployment.id #=> String
resp.deployment.initial_state.component.service_instance_name #=> String
resp.deployment.initial_state.component.service_name #=> String
resp.deployment.initial_state.component.service_spec #=> String
resp.deployment.initial_state.component.template_file #=> String
resp.deployment.initial_state.environment.spec #=> String
resp.deployment.initial_state.environment.template_major_version #=> String
resp.deployment.initial_state.environment.template_minor_version #=> String
resp.deployment.initial_state.environment.template_name #=> String
resp.deployment.initial_state.service_instance.last_successful_component_deployment_ids #=> Array
resp.deployment.initial_state.service_instance.last_successful_component_deployment_ids[0] #=> String
resp.deployment.initial_state.service_instance.last_successful_environment_deployment_id #=> String
resp.deployment.initial_state.service_instance.last_successful_service_pipeline_deployment_id #=> String
resp.deployment.initial_state.service_instance.spec #=> String
resp.deployment.initial_state.service_instance.template_major_version #=> String
resp.deployment.initial_state.service_instance.template_minor_version #=> String
resp.deployment.initial_state.service_instance.template_name #=> String
resp.deployment.initial_state.service_pipeline.spec #=> String
resp.deployment.initial_state.service_pipeline.template_major_version #=> String
resp.deployment.initial_state.service_pipeline.template_minor_version #=> String
resp.deployment.initial_state.service_pipeline.template_name #=> String
resp.deployment.last_attempted_deployment_id #=> String
resp.deployment.last_modified_at #=> Time
resp.deployment.last_succeeded_deployment_id #=> String
resp.deployment.service_instance_name #=> String
resp.deployment.service_name #=> String
resp.deployment.target_arn #=> String
resp.deployment.target_resource_created_at #=> Time
resp.deployment.target_resource_type #=> String, one of "ENVIRONMENT", "SERVICE_PIPELINE", "SERVICE_INSTANCE", "COMPONENT"
resp.deployment.target_state.component.service_instance_name #=> String
resp.deployment.target_state.component.service_name #=> String
resp.deployment.target_state.component.service_spec #=> String
resp.deployment.target_state.component.template_file #=> String
resp.deployment.target_state.environment.spec #=> String
resp.deployment.target_state.environment.template_major_version #=> String
resp.deployment.target_state.environment.template_minor_version #=> String
resp.deployment.target_state.environment.template_name #=> String
resp.deployment.target_state.service_instance.last_successful_component_deployment_ids #=> Array
resp.deployment.target_state.service_instance.last_successful_component_deployment_ids[0] #=> String
resp.deployment.target_state.service_instance.last_successful_environment_deployment_id #=> String
resp.deployment.target_state.service_instance.last_successful_service_pipeline_deployment_id #=> String
resp.deployment.target_state.service_instance.spec #=> String
resp.deployment.target_state.service_instance.template_major_version #=> String
resp.deployment.target_state.service_instance.template_minor_version #=> String
resp.deployment.target_state.service_instance.template_name #=> String
resp.deployment.target_state.service_pipeline.spec #=> String
resp.deployment.target_state.service_pipeline.template_major_version #=> String
resp.deployment.target_state.service_pipeline.template_minor_version #=> String
resp.deployment.target_state.service_pipeline.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the deployment to delete.

Returns:

See Also:



2093
2094
2095
2096
# File 'lib/aws-sdk-proton/client.rb', line 2093

def delete_deployment(params = {}, options = {})
  req = build_request(:delete_deployment, params)
  req.send_request(options)
end

#delete_environment(params = {}) ⇒ Types::DeleteEnvironmentOutput

Delete an environment.

Examples:

Request syntax with placeholder values


resp = client.delete_environment({
  name: "ResourceName", # required
})

Response structure


resp.environment.arn #=> String
resp.environment.codebuild_role_arn #=> String
resp.environment.component_role_arn #=> String
resp.environment.created_at #=> Time
resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environment.deployment_status_message #=> String
resp.environment.description #=> String
resp.environment. #=> String
resp.environment. #=> String
resp.environment.last_attempted_deployment_id #=> String
resp.environment.last_deployment_attempted_at #=> Time
resp.environment.last_deployment_succeeded_at #=> Time
resp.environment.last_succeeded_deployment_id #=> String
resp.environment.name #=> String
resp.environment.proton_service_role_arn #=> String
resp.environment.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment.provisioning_repository.arn #=> String
resp.environment.provisioning_repository.branch #=> String
resp.environment.provisioning_repository.name #=> String
resp.environment.provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.environment.spec #=> String
resp.environment.template_major_version #=> String
resp.environment.template_minor_version #=> String
resp.environment.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the environment to delete.

Returns:

See Also:



2144
2145
2146
2147
# File 'lib/aws-sdk-proton/client.rb', line 2144

def delete_environment(params = {}, options = {})
  req = build_request(:delete_environment, params)
  req.send_request(options)
end

#delete_environment_account_connection(params = {}) ⇒ Types::DeleteEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  id: "EnvironmentAccountConnectionId", # required
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the environment account connection to delete.

Returns:

See Also:



2196
2197
2198
2199
# File 'lib/aws-sdk-proton/client.rb', line 2196

def (params = {}, options = {})
  req = build_request(:delete_environment_account_connection, params)
  req.send_request(options)
end

#delete_environment_template(params = {}) ⇒ Types::DeleteEnvironmentTemplateOutput

If no other major or minor versions of an environment template exist, delete the environment template.

Examples:

Request syntax with placeholder values


resp = client.delete_environment_template({
  name: "ResourceName", # required
})

Response structure


resp.environment_template.arn #=> String
resp.environment_template.created_at #=> Time
resp.environment_template.description #=> String
resp.environment_template.display_name #=> String
resp.environment_template.encryption_key #=> String
resp.environment_template.last_modified_at #=> Time
resp.environment_template.name #=> String
resp.environment_template.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the environment template to delete.

Returns:

See Also:



2233
2234
2235
2236
# File 'lib/aws-sdk-proton/client.rb', line 2233

def delete_environment_template(params = {}, options = {})
  req = build_request(:delete_environment_template, params)
  req.send_request(options)
end

#delete_environment_template_version(params = {}) ⇒ Types::DeleteEnvironmentTemplateVersionOutput

If no other minor versions of an environment template exist, delete a major version of the environment template if it’s not the ‘Recommended` version. Delete the `Recommended` version of the environment template if no other major versions or minor versions of the environment template exist. A major version of an environment template is a version that’s not backward compatible.

Delete a minor version of an environment template if it *isn’t* the ‘Recommended` version. Delete a `Recommended` minor version of the environment template if no other minor versions of the environment template exist. A minor version of an environment template is a version that’s backward compatible.

Examples:

Request syntax with placeholder values


resp = client.delete_environment_template_version({
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  template_name: "ResourceName", # required
})

Response structure


resp.environment_template_version.arn #=> String
resp.environment_template_version.created_at #=> Time
resp.environment_template_version.description #=> String
resp.environment_template_version.last_modified_at #=> Time
resp.environment_template_version.major_version #=> String
resp.environment_template_version.minor_version #=> String
resp.environment_template_version.recommended_minor_version #=> String
resp.environment_template_version.schema #=> String
resp.environment_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.environment_template_version.status_message #=> String
resp.environment_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (required, String)

    The environment template major version to delete.

  • :minor_version (required, String)

    The environment template minor version to delete.

  • :template_name (required, String)

    The name of the environment template.

Returns:

See Also:



2290
2291
2292
2293
# File 'lib/aws-sdk-proton/client.rb', line 2290

def delete_environment_template_version(params = {}, options = {})
  req = build_request(:delete_environment_template_version, params)
  req.send_request(options)
end

#delete_repository(params = {}) ⇒ Types::DeleteRepositoryOutput

De-register and unlink your repository.

Examples:

Request syntax with placeholder values


resp = client.delete_repository({
  name: "RepositoryName", # required
  provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
})

Response structure


resp.repository.arn #=> String
resp.repository.connection_arn #=> String
resp.repository.encryption_key #=> String
resp.repository.name #=> String
resp.repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The repository name.

  • :provider (required, String)

    The repository provider.

Returns:

See Also:



2326
2327
2328
2329
# File 'lib/aws-sdk-proton/client.rb', line 2326

def delete_repository(params = {}, options = {})
  req = build_request(:delete_repository, params)
  req.send_request(options)
end

#delete_service(params = {}) ⇒ Types::DeleteServiceOutput

Delete a service, with its instances and pipeline.

<note markdown=“1”> You can’t delete a service if it has any service instances that have components attached to them.

For more information about components, see [Proton components][1] in

the *Proton User Guide*.

</note>

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.delete_service({
  name: "ResourceName", # required
})

Response structure


resp.service.arn #=> String
resp.service.branch_name #=> String
resp.service.created_at #=> Time
resp.service.description #=> String
resp.service.last_modified_at #=> Time
resp.service.name #=> String
resp.service.pipeline.arn #=> String
resp.service.pipeline.created_at #=> Time
resp.service.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service.pipeline.deployment_status_message #=> String
resp.service.pipeline.last_attempted_deployment_id #=> String
resp.service.pipeline.last_deployment_attempted_at #=> Time
resp.service.pipeline.last_deployment_succeeded_at #=> Time
resp.service.pipeline.last_succeeded_deployment_id #=> String
resp.service.pipeline.spec #=> String
resp.service.pipeline.template_major_version #=> String
resp.service.pipeline.template_minor_version #=> String
resp.service.pipeline.template_name #=> String
resp.service.repository_connection_arn #=> String
resp.service.repository_id #=> String
resp.service.spec #=> String
resp.service.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED_CLEANUP_IN_PROGRESS", "CREATE_FAILED_CLEANUP_COMPLETE", "CREATE_FAILED_CLEANUP_FAILED", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_COMPLETE", "UPDATE_FAILED_CLEANUP_FAILED", "UPDATE_FAILED", "UPDATE_COMPLETE_CLEANUP_FAILED"
resp.service.status_message #=> String
resp.service.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the service to delete.

Returns:

See Also:



2389
2390
2391
2392
# File 'lib/aws-sdk-proton/client.rb', line 2389

def delete_service(params = {}, options = {})
  req = build_request(:delete_service, params)
  req.send_request(options)
end

#delete_service_sync_config(params = {}) ⇒ Types::DeleteServiceSyncConfigOutput

Delete the Proton Ops file.

Examples:

Request syntax with placeholder values


resp = client.delete_service_sync_config({
  service_name: "ResourceName", # required
})

Response structure


resp.service_sync_config.branch #=> String
resp.service_sync_config.file_path #=> String
resp.service_sync_config.repository_name #=> String
resp.service_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.service_sync_config.service_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_name (required, String)

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

Returns:

See Also:



2422
2423
2424
2425
# File 'lib/aws-sdk-proton/client.rb', line 2422

def delete_service_sync_config(params = {}, options = {})
  req = build_request(:delete_service_sync_config, params)
  req.send_request(options)
end

#delete_service_template(params = {}) ⇒ Types::DeleteServiceTemplateOutput

If no other major or minor versions of the service template exist, delete the service template.

Examples:

Request syntax with placeholder values


resp = client.delete_service_template({
  name: "ResourceName", # required
})

Response structure


resp.service_template.arn #=> String
resp.service_template.created_at #=> Time
resp.service_template.description #=> String
resp.service_template.display_name #=> String
resp.service_template.encryption_key #=> String
resp.service_template.last_modified_at #=> Time
resp.service_template.name #=> String
resp.service_template.pipeline_provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.service_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the service template to delete.

Returns:

See Also:



2459
2460
2461
2462
# File 'lib/aws-sdk-proton/client.rb', line 2459

def delete_service_template(params = {}, options = {})
  req = build_request(:delete_service_template, params)
  req.send_request(options)
end

#delete_service_template_version(params = {}) ⇒ Types::DeleteServiceTemplateVersionOutput

If no other minor versions of a service template exist, delete a major version of the service template if it’s not the ‘Recommended` version. Delete the `Recommended` version of the service template if no other major versions or minor versions of the service template exist. A major version of a service template is a version that *isn’t* backwards compatible.

Delete a minor version of a service template if it’s not the ‘Recommended` version. Delete a `Recommended` minor version of the service template if no other minor versions of the service template exist. A minor version of a service template is a version that’s backwards compatible.

Examples:

Request syntax with placeholder values


resp = client.delete_service_template_version({
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  template_name: "ResourceName", # required
})

Response structure


resp.service_template_version.arn #=> String
resp.service_template_version.compatible_environment_templates #=> Array
resp.service_template_version.compatible_environment_templates[0].major_version #=> String
resp.service_template_version.compatible_environment_templates[0].template_name #=> String
resp.service_template_version.created_at #=> Time
resp.service_template_version.description #=> String
resp.service_template_version.last_modified_at #=> Time
resp.service_template_version.major_version #=> String
resp.service_template_version.minor_version #=> String
resp.service_template_version.recommended_minor_version #=> String
resp.service_template_version.schema #=> String
resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.service_template_version.status_message #=> String
resp.service_template_version.supported_component_sources #=> Array
resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
resp.service_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (required, String)

    The service template major version to delete.

  • :minor_version (required, String)

    The service template minor version to delete.

  • :template_name (required, String)

    The name of the service template.

Returns:

See Also:



2521
2522
2523
2524
# File 'lib/aws-sdk-proton/client.rb', line 2521

def delete_service_template_version(params = {}, options = {})
  req = build_request(:delete_service_template_version, params)
  req.send_request(options)
end

#delete_template_sync_config(params = {}) ⇒ Types::DeleteTemplateSyncConfigOutput

Delete a template sync configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_template_sync_config({
  template_name: "ResourceName", # required
  template_type: "ENVIRONMENT", # required, accepts ENVIRONMENT, SERVICE
})

Response structure


resp.template_sync_config.branch #=> String
resp.template_sync_config.repository_name #=> String
resp.template_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.template_sync_config.subdirectory #=> String
resp.template_sync_config.template_name #=> String
resp.template_sync_config.template_type #=> String, one of "ENVIRONMENT", "SERVICE"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :template_name (required, String)

    The template name.

  • :template_type (required, String)

    The template type.

Returns:

See Also:



2558
2559
2560
2561
# File 'lib/aws-sdk-proton/client.rb', line 2558

def delete_template_sync_config(params = {}, options = {})
  req = build_request(:delete_template_sync_config, params)
  req.send_request(options)
end

#get_account_settings(params = {}) ⇒ Types::GetAccountSettingsOutput

Get detail data for Proton account-wide settings.

Examples:

Response structure


resp..pipeline_codebuild_role_arn #=> String
resp..pipeline_provisioning_repository.arn #=> String
resp..pipeline_provisioning_repository.branch #=> String
resp..pipeline_provisioning_repository.name #=> String
resp..pipeline_provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp..pipeline_service_role_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



2582
2583
2584
2585
# File 'lib/aws-sdk-proton/client.rb', line 2582

def (params = {}, options = {})
  req = build_request(:get_account_settings, params)
  req.send_request(options)
end

#get_component(params = {}) ⇒ Types::GetComponentOutput

Get detailed data for a component.

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

The following waiters are defined for this operation (see #wait_until for detailed usage):

* component_deleted
* component_deployed

Examples:

Request syntax with placeholder values


resp = client.get_component({
  name: "ResourceName", # required
})

Response structure


resp.component.arn #=> String
resp.component.created_at #=> Time
resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.component.deployment_status_message #=> String
resp.component.description #=> String
resp.component.environment_name #=> String
resp.component.last_attempted_deployment_id #=> String
resp.component.last_client_request_token #=> String
resp.component.last_deployment_attempted_at #=> Time
resp.component.last_deployment_succeeded_at #=> Time
resp.component.last_modified_at #=> Time
resp.component.last_succeeded_deployment_id #=> String
resp.component.name #=> String
resp.component.service_instance_name #=> String
resp.component.service_name #=> String
resp.component.service_spec #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

Returns:

See Also:



2638
2639
2640
2641
# File 'lib/aws-sdk-proton/client.rb', line 2638

def get_component(params = {}, options = {})
  req = build_request(:get_component, params)
  req.send_request(options)
end

#get_deployment(params = {}) ⇒ Types::GetDeploymentOutput

Get detailed data for a deployment.

Examples:

Request syntax with placeholder values


resp = client.get_deployment({
  component_name: "ResourceName",
  environment_name: "ResourceName",
  id: "DeploymentId", # required
  service_instance_name: "ResourceName",
  service_name: "ResourceName",
})

Response structure


resp.deployment.arn #=> String
resp.deployment.completed_at #=> Time
resp.deployment.component_name #=> String
resp.deployment.created_at #=> Time
resp.deployment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.deployment.deployment_status_message #=> String
resp.deployment.environment_name #=> String
resp.deployment.id #=> String
resp.deployment.initial_state.component.service_instance_name #=> String
resp.deployment.initial_state.component.service_name #=> String
resp.deployment.initial_state.component.service_spec #=> String
resp.deployment.initial_state.component.template_file #=> String
resp.deployment.initial_state.environment.spec #=> String
resp.deployment.initial_state.environment.template_major_version #=> String
resp.deployment.initial_state.environment.template_minor_version #=> String
resp.deployment.initial_state.environment.template_name #=> String
resp.deployment.initial_state.service_instance.last_successful_component_deployment_ids #=> Array
resp.deployment.initial_state.service_instance.last_successful_component_deployment_ids[0] #=> String
resp.deployment.initial_state.service_instance.last_successful_environment_deployment_id #=> String
resp.deployment.initial_state.service_instance.last_successful_service_pipeline_deployment_id #=> String
resp.deployment.initial_state.service_instance.spec #=> String
resp.deployment.initial_state.service_instance.template_major_version #=> String
resp.deployment.initial_state.service_instance.template_minor_version #=> String
resp.deployment.initial_state.service_instance.template_name #=> String
resp.deployment.initial_state.service_pipeline.spec #=> String
resp.deployment.initial_state.service_pipeline.template_major_version #=> String
resp.deployment.initial_state.service_pipeline.template_minor_version #=> String
resp.deployment.initial_state.service_pipeline.template_name #=> String
resp.deployment.last_attempted_deployment_id #=> String
resp.deployment.last_modified_at #=> Time
resp.deployment.last_succeeded_deployment_id #=> String
resp.deployment.service_instance_name #=> String
resp.deployment.service_name #=> String
resp.deployment.target_arn #=> String
resp.deployment.target_resource_created_at #=> Time
resp.deployment.target_resource_type #=> String, one of "ENVIRONMENT", "SERVICE_PIPELINE", "SERVICE_INSTANCE", "COMPONENT"
resp.deployment.target_state.component.service_instance_name #=> String
resp.deployment.target_state.component.service_name #=> String
resp.deployment.target_state.component.service_spec #=> String
resp.deployment.target_state.component.template_file #=> String
resp.deployment.target_state.environment.spec #=> String
resp.deployment.target_state.environment.template_major_version #=> String
resp.deployment.target_state.environment.template_minor_version #=> String
resp.deployment.target_state.environment.template_name #=> String
resp.deployment.target_state.service_instance.last_successful_component_deployment_ids #=> Array
resp.deployment.target_state.service_instance.last_successful_component_deployment_ids[0] #=> String
resp.deployment.target_state.service_instance.last_successful_environment_deployment_id #=> String
resp.deployment.target_state.service_instance.last_successful_service_pipeline_deployment_id #=> String
resp.deployment.target_state.service_instance.spec #=> String
resp.deployment.target_state.service_instance.template_major_version #=> String
resp.deployment.target_state.service_instance.template_minor_version #=> String
resp.deployment.target_state.service_instance.template_name #=> String
resp.deployment.target_state.service_pipeline.spec #=> String
resp.deployment.target_state.service_pipeline.template_major_version #=> String
resp.deployment.target_state.service_pipeline.template_minor_version #=> String
resp.deployment.target_state.service_pipeline.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_name (String)

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

  • :environment_name (String)

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

  • :id (required, String)

    The ID of the deployment that you want to get the detailed data for.

  • :service_instance_name (String)

    The name of the service instance associated with the given deployment ID. ‘serviceName` must be specified to identify the service instance.

  • :service_name (String)

    The name of the service associated with the given deployment ID.

Returns:

See Also:



2738
2739
2740
2741
# File 'lib/aws-sdk-proton/client.rb', line 2738

def get_deployment(params = {}, options = {})
  req = build_request(:get_deployment, params)
  req.send_request(options)
end

#get_environment(params = {}) ⇒ Types::GetEnvironmentOutput

Get detailed data for an environment.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* environment_deployed

Examples:

Request syntax with placeholder values


resp = client.get_environment({
  name: "ResourceName", # required
})

Response structure


resp.environment.arn #=> String
resp.environment.codebuild_role_arn #=> String
resp.environment.component_role_arn #=> String
resp.environment.created_at #=> Time
resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environment.deployment_status_message #=> String
resp.environment.description #=> String
resp.environment. #=> String
resp.environment. #=> String
resp.environment.last_attempted_deployment_id #=> String
resp.environment.last_deployment_attempted_at #=> Time
resp.environment.last_deployment_succeeded_at #=> Time
resp.environment.last_succeeded_deployment_id #=> String
resp.environment.name #=> String
resp.environment.proton_service_role_arn #=> String
resp.environment.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment.provisioning_repository.arn #=> String
resp.environment.provisioning_repository.branch #=> String
resp.environment.provisioning_repository.name #=> String
resp.environment.provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.environment.spec #=> String
resp.environment.template_major_version #=> String
resp.environment.template_minor_version #=> String
resp.environment.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

Returns:

See Also:



2795
2796
2797
2798
# File 'lib/aws-sdk-proton/client.rb', line 2795

def get_environment(params = {}, options = {})
  req = build_request(:get_environment, params)
  req.send_request(options)
end

#get_environment_account_connection(params = {}) ⇒ Types::GetEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  id: "EnvironmentAccountConnectionId", # required
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the environment account connection that you want to get the detailed data for.

Returns:

See Also:



2842
2843
2844
2845
# File 'lib/aws-sdk-proton/client.rb', line 2842

def (params = {}, options = {})
  req = build_request(:get_environment_account_connection, params)
  req.send_request(options)
end

#get_environment_template(params = {}) ⇒ Types::GetEnvironmentTemplateOutput

Get detailed data for an environment template.

Examples:

Request syntax with placeholder values


resp = client.get_environment_template({
  name: "ResourceName", # required
})

Response structure


resp.environment_template.arn #=> String
resp.environment_template.created_at #=> Time
resp.environment_template.description #=> String
resp.environment_template.display_name #=> String
resp.environment_template.encryption_key #=> String
resp.environment_template.last_modified_at #=> Time
resp.environment_template.name #=> String
resp.environment_template.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

Returns:

See Also:



2879
2880
2881
2882
# File 'lib/aws-sdk-proton/client.rb', line 2879

def get_environment_template(params = {}, options = {})
  req = build_request(:get_environment_template, params)
  req.send_request(options)
end

#get_environment_template_version(params = {}) ⇒ Types::GetEnvironmentTemplateVersionOutput

Get detailed data for a major or minor version of an environment template.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* environment_template_version_registered

Examples:

Request syntax with placeholder values


resp = client.get_environment_template_version({
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  template_name: "ResourceName", # required
})

Response structure


resp.environment_template_version.arn #=> String
resp.environment_template_version.created_at #=> Time
resp.environment_template_version.description #=> String
resp.environment_template_version.last_modified_at #=> Time
resp.environment_template_version.major_version #=> String
resp.environment_template_version.minor_version #=> String
resp.environment_template_version.recommended_minor_version #=> String
resp.environment_template_version.schema #=> String
resp.environment_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.environment_template_version.status_message #=> String
resp.environment_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (required, String)

    To get environment template major version detail data, include ‘major Version`.

  • :minor_version (required, String)

    To get environment template minor version detail data, include ‘minorVersion`.

  • :template_name (required, String)

    The name of the environment template a version of which you want to get detailed data for.

Returns:

See Also:



2934
2935
2936
2937
# File 'lib/aws-sdk-proton/client.rb', line 2934

def get_environment_template_version(params = {}, options = {})
  req = build_request(:get_environment_template_version, params)
  req.send_request(options)
end

#get_repository(params = {}) ⇒ Types::GetRepositoryOutput

Get detail data for a linked repository.

Examples:

Request syntax with placeholder values


resp = client.get_repository({
  name: "RepositoryName", # required
  provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
})

Response structure


resp.repository.arn #=> String
resp.repository.connection_arn #=> String
resp.repository.encryption_key #=> String
resp.repository.name #=> String
resp.repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The repository name, for example ‘myrepos/myrepo`.

  • :provider (required, String)

    The repository provider.

Returns:

See Also:



2970
2971
2972
2973
# File 'lib/aws-sdk-proton/client.rb', line 2970

def get_repository(params = {}, options = {})
  req = build_request(:get_repository, params)
  req.send_request(options)
end

#get_repository_sync_status(params = {}) ⇒ Types::GetRepositorySyncStatusOutput

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

<note markdown=“1”> 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][1] in the *Proton User

Guide*.

</note>

[1]: docs.aws.amazon.com/proton/latest/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-tags

Examples:

Request syntax with placeholder values


resp = client.get_repository_sync_status({
  branch: "GitBranchName", # required
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  sync_type: "TEMPLATE_SYNC", # required, accepts TEMPLATE_SYNC, SERVICE_SYNC
})

Response structure


resp.latest_sync.events #=> Array
resp.latest_sync.events[0].event #=> String
resp.latest_sync.events[0].external_id #=> String
resp.latest_sync.events[0].time #=> Time
resp.latest_sync.events[0].type #=> String
resp.latest_sync.started_at #=> Time
resp.latest_sync.status #=> String, one of "INITIATED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "QUEUED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch (required, String)

    The repository branch.

  • :repository_name (required, String)

    The repository name.

  • :repository_provider (required, String)

    The repository provider.

  • :sync_type (required, String)

    The repository sync type.

Returns:

See Also:



3032
3033
3034
3035
# File 'lib/aws-sdk-proton/client.rb', line 3032

def get_repository_sync_status(params = {}, options = {})
  req = build_request(:get_repository_sync_status, params)
  req.send_request(options)
end

#get_resources_summary(params = {}) ⇒ Types::GetResourcesSummaryOutput

Get counts of Proton resources.

For infrastructure-provisioning resources (environments, services, service instances, pipelines), the action returns staleness counts. A resource is stale when it’s behind the recommended version of the Proton template that it uses and it needs an update to become current.

The action returns staleness counts (counts of resources that are up-to-date, behind a template major version, or behind a template minor version), the total number of resources, and the number of resources that are in a failed state, grouped by resource type. Components, environments, and service templates return less information - see the ‘components`, `environments`, and `serviceTemplates` field descriptions.

For context, the action also returns the total number of each type of Proton template in the Amazon Web Services account.

For more information, see [Proton dashboard] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/monitoring-dashboard.html

Examples:

Response structure


resp.counts.components.behind_major #=> Integer
resp.counts.components.behind_minor #=> Integer
resp.counts.components.failed #=> Integer
resp.counts.components.total #=> Integer
resp.counts.components.up_to_date #=> Integer
resp.counts.environment_templates.behind_major #=> Integer
resp.counts.environment_templates.behind_minor #=> Integer
resp.counts.environment_templates.failed #=> Integer
resp.counts.environment_templates.total #=> Integer
resp.counts.environment_templates.up_to_date #=> Integer
resp.counts.environments.behind_major #=> Integer
resp.counts.environments.behind_minor #=> Integer
resp.counts.environments.failed #=> Integer
resp.counts.environments.total #=> Integer
resp.counts.environments.up_to_date #=> Integer
resp.counts.pipelines.behind_major #=> Integer
resp.counts.pipelines.behind_minor #=> Integer
resp.counts.pipelines.failed #=> Integer
resp.counts.pipelines.total #=> Integer
resp.counts.pipelines.up_to_date #=> Integer
resp.counts.service_instances.behind_major #=> Integer
resp.counts.service_instances.behind_minor #=> Integer
resp.counts.service_instances.failed #=> Integer
resp.counts.service_instances.total #=> Integer
resp.counts.service_instances.up_to_date #=> Integer
resp.counts.service_templates.behind_major #=> Integer
resp.counts.service_templates.behind_minor #=> Integer
resp.counts.service_templates.failed #=> Integer
resp.counts.service_templates.total #=> Integer
resp.counts.service_templates.up_to_date #=> Integer
resp.counts.services.behind_major #=> Integer
resp.counts.services.behind_minor #=> Integer
resp.counts.services.failed #=> Integer
resp.counts.services.total #=> Integer
resp.counts.services.up_to_date #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



3108
3109
3110
3111
# File 'lib/aws-sdk-proton/client.rb', line 3108

def get_resources_summary(params = {}, options = {})
  req = build_request(:get_resources_summary, params)
  req.send_request(options)
end

#get_service(params = {}) ⇒ Types::GetServiceOutput

Get detailed data for a service.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* service_created
* service_deleted
* service_pipeline_deployed
* service_updated

Examples:

Request syntax with placeholder values


resp = client.get_service({
  name: "ResourceName", # required
})

Response structure


resp.service.arn #=> String
resp.service.branch_name #=> String
resp.service.created_at #=> Time
resp.service.description #=> String
resp.service.last_modified_at #=> Time
resp.service.name #=> String
resp.service.pipeline.arn #=> String
resp.service.pipeline.created_at #=> Time
resp.service.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service.pipeline.deployment_status_message #=> String
resp.service.pipeline.last_attempted_deployment_id #=> String
resp.service.pipeline.last_deployment_attempted_at #=> Time
resp.service.pipeline.last_deployment_succeeded_at #=> Time
resp.service.pipeline.last_succeeded_deployment_id #=> String
resp.service.pipeline.spec #=> String
resp.service.pipeline.template_major_version #=> String
resp.service.pipeline.template_minor_version #=> String
resp.service.pipeline.template_name #=> String
resp.service.repository_connection_arn #=> String
resp.service.repository_id #=> String
resp.service.spec #=> String
resp.service.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED_CLEANUP_IN_PROGRESS", "CREATE_FAILED_CLEANUP_COMPLETE", "CREATE_FAILED_CLEANUP_FAILED", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_COMPLETE", "UPDATE_FAILED_CLEANUP_FAILED", "UPDATE_FAILED", "UPDATE_COMPLETE_CLEANUP_FAILED"
resp.service.status_message #=> String
resp.service.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

Returns:

See Also:



3167
3168
3169
3170
# File 'lib/aws-sdk-proton/client.rb', line 3167

def get_service(params = {}, options = {})
  req = build_request(:get_service, params)
  req.send_request(options)
end

#get_service_instance(params = {}) ⇒ Types::GetServiceInstanceOutput

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

The following waiters are defined for this operation (see #wait_until for detailed usage):

* service_instance_deployed

Examples:

Request syntax with placeholder values


resp = client.get_service_instance({
  name: "ResourceName", # required
  service_name: "ResourceName", # required
})

Response structure


resp.service_instance.arn #=> String
resp.service_instance.created_at #=> Time
resp.service_instance.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service_instance.deployment_status_message #=> String
resp.service_instance.environment_name #=> String
resp.service_instance.last_attempted_deployment_id #=> String
resp.service_instance.last_client_request_token #=> String
resp.service_instance.last_deployment_attempted_at #=> Time
resp.service_instance.last_deployment_succeeded_at #=> Time
resp.service_instance.last_succeeded_deployment_id #=> String
resp.service_instance.name #=> String
resp.service_instance.service_name #=> String
resp.service_instance.spec #=> String
resp.service_instance.template_major_version #=> String
resp.service_instance.template_minor_version #=> String
resp.service_instance.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

  • :service_name (required, String)

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

Returns:

See Also:



3222
3223
3224
3225
# File 'lib/aws-sdk-proton/client.rb', line 3222

def get_service_instance(params = {}, options = {})
  req = build_request(:get_service_instance, params)
  req.send_request(options)
end

#get_service_instance_sync_status(params = {}) ⇒ Types::GetServiceInstanceSyncStatusOutput

Get the status of the synced service instance.

Examples:

Request syntax with placeholder values


resp = client.get_service_instance_sync_status({
  service_instance_name: "ResourceName", # required
  service_name: "ResourceName", # required
})

Response structure


resp.desired_state.branch #=> String
resp.desired_state.directory #=> String
resp.desired_state.repository_name #=> String
resp.desired_state.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.desired_state.sha #=> String
resp.latest_successful_sync.events #=> Array
resp.latest_successful_sync.events[0].event #=> String
resp.latest_successful_sync.events[0].external_id #=> String
resp.latest_successful_sync.events[0].time #=> Time
resp.latest_successful_sync.events[0].type #=> String
resp.latest_successful_sync.initial_revision.branch #=> String
resp.latest_successful_sync.initial_revision.directory #=> String
resp.latest_successful_sync.initial_revision.repository_name #=> String
resp.latest_successful_sync.initial_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_successful_sync.initial_revision.sha #=> String
resp.latest_successful_sync.started_at #=> Time
resp.latest_successful_sync.status #=> String, one of "INITIATED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
resp.latest_successful_sync.target #=> String
resp.latest_successful_sync.target_revision.branch #=> String
resp.latest_successful_sync.target_revision.directory #=> String
resp.latest_successful_sync.target_revision.repository_name #=> String
resp.latest_successful_sync.target_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_successful_sync.target_revision.sha #=> String
resp.latest_sync.events #=> Array
resp.latest_sync.events[0].event #=> String
resp.latest_sync.events[0].external_id #=> String
resp.latest_sync.events[0].time #=> Time
resp.latest_sync.events[0].type #=> String
resp.latest_sync.initial_revision.branch #=> String
resp.latest_sync.initial_revision.directory #=> String
resp.latest_sync.initial_revision.repository_name #=> String
resp.latest_sync.initial_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_sync.initial_revision.sha #=> String
resp.latest_sync.started_at #=> Time
resp.latest_sync.status #=> String, one of "INITIATED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
resp.latest_sync.target #=> String
resp.latest_sync.target_revision.branch #=> String
resp.latest_sync.target_revision.directory #=> String
resp.latest_sync.target_revision.repository_name #=> String
resp.latest_sync.target_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_sync.target_revision.sha #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_instance_name (required, String)

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

  • :service_name (required, String)

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

Returns:

See Also:



3297
3298
3299
3300
# File 'lib/aws-sdk-proton/client.rb', line 3297

def get_service_instance_sync_status(params = {}, options = {})
  req = build_request(:get_service_instance_sync_status, params)
  req.send_request(options)
end

#get_service_sync_blocker_summary(params = {}) ⇒ Types::GetServiceSyncBlockerSummaryOutput

Get detailed data for the service sync blocker summary.

Examples:

Request syntax with placeholder values


resp = client.get_service_sync_blocker_summary({
  service_instance_name: "ResourceName",
  service_name: "ResourceName", # required
})

Response structure


resp.service_sync_blocker_summary.latest_blockers #=> Array
resp.service_sync_blocker_summary.latest_blockers[0].contexts #=> Array
resp.service_sync_blocker_summary.latest_blockers[0].contexts[0].key #=> String
resp.service_sync_blocker_summary.latest_blockers[0].contexts[0].value #=> String
resp.service_sync_blocker_summary.latest_blockers[0].created_at #=> Time
resp.service_sync_blocker_summary.latest_blockers[0].created_reason #=> String
resp.service_sync_blocker_summary.latest_blockers[0].id #=> String
resp.service_sync_blocker_summary.latest_blockers[0].resolved_at #=> Time
resp.service_sync_blocker_summary.latest_blockers[0].resolved_reason #=> String
resp.service_sync_blocker_summary.latest_blockers[0].status #=> String, one of "ACTIVE", "RESOLVED"
resp.service_sync_blocker_summary.latest_blockers[0].type #=> String, one of "AUTOMATED"
resp.service_sync_blocker_summary.service_instance_name #=> String
resp.service_sync_blocker_summary.service_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_instance_name (String)

    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.

  • :service_name (required, String)

    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.

Returns:

See Also:



3345
3346
3347
3348
# File 'lib/aws-sdk-proton/client.rb', line 3345

def get_service_sync_blocker_summary(params = {}, options = {})
  req = build_request(:get_service_sync_blocker_summary, params)
  req.send_request(options)
end

#get_service_sync_config(params = {}) ⇒ Types::GetServiceSyncConfigOutput

Get detailed information for the service sync configuration.

Examples:

Request syntax with placeholder values


resp = client.get_service_sync_config({
  service_name: "ResourceName", # required
})

Response structure


resp.service_sync_config.branch #=> String
resp.service_sync_config.file_path #=> String
resp.service_sync_config.repository_name #=> String
resp.service_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.service_sync_config.service_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_name (required, String)

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

Returns:

See Also:



3378
3379
3380
3381
# File 'lib/aws-sdk-proton/client.rb', line 3378

def get_service_sync_config(params = {}, options = {})
  req = build_request(:get_service_sync_config, params)
  req.send_request(options)
end

#get_service_template(params = {}) ⇒ Types::GetServiceTemplateOutput

Get detailed data for a service template.

Examples:

Request syntax with placeholder values


resp = client.get_service_template({
  name: "ResourceName", # required
})

Response structure


resp.service_template.arn #=> String
resp.service_template.created_at #=> Time
resp.service_template.description #=> String
resp.service_template.display_name #=> String
resp.service_template.encryption_key #=> String
resp.service_template.last_modified_at #=> Time
resp.service_template.name #=> String
resp.service_template.pipeline_provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.service_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

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

Returns:

See Also:



3415
3416
3417
3418
# File 'lib/aws-sdk-proton/client.rb', line 3415

def get_service_template(params = {}, options = {})
  req = build_request(:get_service_template, params)
  req.send_request(options)
end

#get_service_template_version(params = {}) ⇒ Types::GetServiceTemplateVersionOutput

Get detailed data for a major or minor version of a service template.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* service_template_version_registered

Examples:

Request syntax with placeholder values


resp = client.get_service_template_version({
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  template_name: "ResourceName", # required
})

Response structure


resp.service_template_version.arn #=> String
resp.service_template_version.compatible_environment_templates #=> Array
resp.service_template_version.compatible_environment_templates[0].major_version #=> String
resp.service_template_version.compatible_environment_templates[0].template_name #=> String
resp.service_template_version.created_at #=> Time
resp.service_template_version.description #=> String
resp.service_template_version.last_modified_at #=> Time
resp.service_template_version.major_version #=> String
resp.service_template_version.minor_version #=> String
resp.service_template_version.recommended_minor_version #=> String
resp.service_template_version.schema #=> String
resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.service_template_version.status_message #=> String
resp.service_template_version.supported_component_sources #=> Array
resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
resp.service_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (required, String)

    To get service template major version detail data, include ‘major Version`.

  • :minor_version (required, String)

    To get service template minor version detail data, include ‘minorVersion`.

  • :template_name (required, String)

    The name of the service template a version of which you want to get detailed data for.

Returns:

See Also:



3474
3475
3476
3477
# File 'lib/aws-sdk-proton/client.rb', line 3474

def get_service_template_version(params = {}, options = {})
  req = build_request(:get_service_template_version, params)
  req.send_request(options)
end

#get_template_sync_config(params = {}) ⇒ Types::GetTemplateSyncConfigOutput

Get detail data for a template sync configuration.

Examples:

Request syntax with placeholder values


resp = client.get_template_sync_config({
  template_name: "ResourceName", # required
  template_type: "ENVIRONMENT", # required, accepts ENVIRONMENT, SERVICE
})

Response structure


resp.template_sync_config.branch #=> String
resp.template_sync_config.repository_name #=> String
resp.template_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.template_sync_config.subdirectory #=> String
resp.template_sync_config.template_name #=> String
resp.template_sync_config.template_type #=> String, one of "ENVIRONMENT", "SERVICE"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :template_name (required, String)

    The template name.

  • :template_type (required, String)

    The template type.

Returns:

See Also:



3511
3512
3513
3514
# File 'lib/aws-sdk-proton/client.rb', line 3511

def get_template_sync_config(params = {}, options = {})
  req = build_request(:get_template_sync_config, params)
  req.send_request(options)
end

#get_template_sync_status(params = {}) ⇒ Types::GetTemplateSyncStatusOutput

Get the status of a template sync.

Examples:

Request syntax with placeholder values


resp = client.get_template_sync_status({
  template_name: "ResourceName", # required
  template_type: "ENVIRONMENT", # required, accepts ENVIRONMENT, SERVICE
  template_version: "TemplateVersionPart", # required
})

Response structure


resp.desired_state.branch #=> String
resp.desired_state.directory #=> String
resp.desired_state.repository_name #=> String
resp.desired_state.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.desired_state.sha #=> String
resp.latest_successful_sync.events #=> Array
resp.latest_successful_sync.events[0].event #=> String
resp.latest_successful_sync.events[0].external_id #=> String
resp.latest_successful_sync.events[0].time #=> Time
resp.latest_successful_sync.events[0].type #=> String
resp.latest_successful_sync.initial_revision.branch #=> String
resp.latest_successful_sync.initial_revision.directory #=> String
resp.latest_successful_sync.initial_revision.repository_name #=> String
resp.latest_successful_sync.initial_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_successful_sync.initial_revision.sha #=> String
resp.latest_successful_sync.started_at #=> Time
resp.latest_successful_sync.status #=> String, one of "INITIATED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
resp.latest_successful_sync.target #=> String
resp.latest_successful_sync.target_revision.branch #=> String
resp.latest_successful_sync.target_revision.directory #=> String
resp.latest_successful_sync.target_revision.repository_name #=> String
resp.latest_successful_sync.target_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_successful_sync.target_revision.sha #=> String
resp.latest_sync.events #=> Array
resp.latest_sync.events[0].event #=> String
resp.latest_sync.events[0].external_id #=> String
resp.latest_sync.events[0].time #=> Time
resp.latest_sync.events[0].type #=> String
resp.latest_sync.initial_revision.branch #=> String
resp.latest_sync.initial_revision.directory #=> String
resp.latest_sync.initial_revision.repository_name #=> String
resp.latest_sync.initial_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_sync.initial_revision.sha #=> String
resp.latest_sync.started_at #=> Time
resp.latest_sync.status #=> String, one of "INITIATED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
resp.latest_sync.target #=> String
resp.latest_sync.target_revision.branch #=> String
resp.latest_sync.target_revision.directory #=> String
resp.latest_sync.target_revision.repository_name #=> String
resp.latest_sync.target_revision.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.latest_sync.target_revision.sha #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :template_name (required, String)

    The template name.

  • :template_type (required, String)

    The template type.

  • :template_version (required, String)

    The template major version.

Returns:

See Also:



3589
3590
3591
3592
# File 'lib/aws-sdk-proton/client.rb', line 3589

def get_template_sync_status(params = {}, options = {})
  req = build_request(:get_template_sync_status, params)
  req.send_request(options)
end

#list_component_outputs(params = {}) ⇒ Types::ListComponentOutputsOutput

Get a list of component Infrastructure as Code (IaC) outputs.

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_component_outputs({
  component_name: "ResourceName", # required
  deployment_id: "DeploymentId",
  next_token: "EmptyNextToken",
})

Response structure


resp.next_token #=> String
resp.outputs #=> Array
resp.outputs[0].key #=> String
resp.outputs[0].value_string #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_name (required, String)

    The name of the component whose outputs you want.

  • :deployment_id (String)

    The ID of the deployment whose outputs you want.

  • :next_token (String)

    A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.

Returns:

See Also:



3639
3640
3641
3642
# File 'lib/aws-sdk-proton/client.rb', line 3639

def list_component_outputs(params = {}, options = {})
  req = build_request(:list_component_outputs, params)
  req.send_request(options)
end

#list_component_provisioned_resources(params = {}) ⇒ Types::ListComponentProvisionedResourcesOutput

List provisioned resources for a component with details.

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_component_provisioned_resources({
  component_name: "ResourceName", # required
  next_token: "EmptyNextToken",
})

Response structure


resp.next_token #=> String
resp.provisioned_resources #=> Array
resp.provisioned_resources[0].identifier #=> String
resp.provisioned_resources[0].name #=> String
resp.provisioned_resources[0].provisioning_engine #=> String, one of "CLOUDFORMATION", "TERRAFORM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_name (required, String)

    The name of the component whose provisioned resources you want.

  • :next_token (String)

    A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.

Returns:

See Also:



3687
3688
3689
3690
# File 'lib/aws-sdk-proton/client.rb', line 3687

def list_component_provisioned_resources(params = {}, options = {})
  req = build_request(:list_component_provisioned_resources, params)
  req.send_request(options)
end

#list_components(params = {}) ⇒ Types::ListComponentsOutput

List components with summary data. You can filter the result list by environment, service, or a single service instance.

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_components({
  environment_name: "ResourceName",
  max_results: 1,
  next_token: "NextToken",
  service_instance_name: "ResourceName",
  service_name: "ResourceName",
})

Response structure


resp.components #=> Array
resp.components[0].arn #=> String
resp.components[0].created_at #=> Time
resp.components[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.components[0].deployment_status_message #=> String
resp.components[0].environment_name #=> String
resp.components[0].last_attempted_deployment_id #=> String
resp.components[0].last_deployment_attempted_at #=> Time
resp.components[0].last_deployment_succeeded_at #=> Time
resp.components[0].last_modified_at #=> Time
resp.components[0].last_succeeded_deployment_id #=> String
resp.components[0].name #=> String
resp.components[0].service_instance_name #=> String
resp.components[0].service_name #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :environment_name (String)

    The name of an environment for result list filtering. Proton returns components associated with the environment or attached to service instances running in it.

  • :max_results (Integer)

    The maximum number of components to list.

  • :next_token (String)

    A token that indicates the location of the next component in the array of components, after the list of components that was previously requested.

  • :service_instance_name (String)

    The name of a service instance for result list filtering. Proton returns the component attached to the service instance, if any.

  • :service_name (String)

    The name of a service for result list filtering. Proton returns components attached to service instances of the service.

Returns:

See Also:



3762
3763
3764
3765
# File 'lib/aws-sdk-proton/client.rb', line 3762

def list_components(params = {}, options = {})
  req = build_request(:list_components, params)
  req.send_request(options)
end

#list_deployments(params = {}) ⇒ Types::ListDeploymentsOutput

List deployments. You can filter the result list by environment, service, or a single service instance.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_deployments({
  component_name: "ResourceName",
  environment_name: "ResourceName",
  max_results: 1,
  next_token: "NextToken",
  service_instance_name: "ResourceName",
  service_name: "ResourceName",
})

Response structure


resp.deployments #=> Array
resp.deployments[0].arn #=> String
resp.deployments[0].completed_at #=> Time
resp.deployments[0].component_name #=> String
resp.deployments[0].created_at #=> Time
resp.deployments[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.deployments[0].environment_name #=> String
resp.deployments[0].id #=> String
resp.deployments[0].last_attempted_deployment_id #=> String
resp.deployments[0].last_modified_at #=> Time
resp.deployments[0].last_succeeded_deployment_id #=> String
resp.deployments[0].service_instance_name #=> String
resp.deployments[0].service_name #=> String
resp.deployments[0].target_arn #=> String
resp.deployments[0].target_resource_created_at #=> Time
resp.deployments[0].target_resource_type #=> String, one of "ENVIRONMENT", "SERVICE_PIPELINE", "SERVICE_INSTANCE", "COMPONENT"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :component_name (String)

    The name of a component for result list filtering. Proton returns deployments associated with that component.

  • :environment_name (String)

    The name of an environment for result list filtering. Proton returns deployments associated with the environment.

  • :max_results (Integer)

    The maximum number of deployments to list.

  • :next_token (String)

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

  • :service_instance_name (String)

    The name of a service instance for result list filtering. Proton returns the deployments associated with the service instance.

  • :service_name (String)

    The name of a service for result list filtering. Proton returns deployments associated with service instances of the service.

Returns:

See Also:



3836
3837
3838
3839
# File 'lib/aws-sdk-proton/client.rb', line 3836

def list_deployments(params = {}, options = {})
  req = build_request(:list_deployments, params)
  req.send_request(options)
end

#list_environment_account_connections(params = {}) ⇒ Types::ListEnvironmentAccountConnectionsOutput

View a list of environment account connections.

For more information, see [Environment account connections] in the *Proton User guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.({
  environment_name: "ResourceName",
  max_results: 1,
  next_token: "NextToken",
  requested_by: "MANAGEMENT_ACCOUNT", # required, accepts MANAGEMENT_ACCOUNT, ENVIRONMENT_ACCOUNT
  statuses: ["PENDING"], # accepts PENDING, CONNECTED, REJECTED
})

Response structure


resp. #=> Array
resp.[0].arn #=> String
resp.[0].component_role_arn #=> String
resp.[0]. #=> String
resp.[0].environment_name #=> String
resp.[0].id #=> String
resp.[0].last_modified_at #=> Time
resp.[0]. #=> String
resp.[0].requested_at #=> Time
resp.[0].role_arn #=> String
resp.[0].status #=> String, one of "PENDING", "CONNECTED", "REJECTED"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :environment_name (String)

    The environment name that’s associated with each listed environment account connection.

  • :max_results (Integer)

    The maximum number of environment account connections to list.

  • :next_token (String)

    A token that indicates the location of the next environment account connection in the array of environment account connections, after the list of environment account connections that was previously requested.

  • :requested_by (required, String)

    The type of account making the ‘ListEnvironmentAccountConnections` request.

  • :statuses (Array<String>)

    The status details for each listed environment account connection.

Returns:

See Also:



3905
3906
3907
3908
# File 'lib/aws-sdk-proton/client.rb', line 3905

def (params = {}, options = {})
  req = build_request(:list_environment_account_connections, params)
  req.send_request(options)
end

#list_environment_outputs(params = {}) ⇒ Types::ListEnvironmentOutputsOutput

List the infrastructure as code outputs for your environment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_environment_outputs({
  deployment_id: "DeploymentId",
  environment_name: "ResourceName", # required
  next_token: "EmptyNextToken",
})

Response structure


resp.next_token #=> String
resp.outputs #=> Array
resp.outputs[0].key #=> String
resp.outputs[0].value_string #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :deployment_id (String)

    The ID of the deployment whose outputs you want.

  • :environment_name (required, String)

    The environment name.

  • :next_token (String)

    A token that indicates the location of the next environment output in the array of environment outputs, after the list of environment outputs that was previously requested.

Returns:

See Also:



3949
3950
3951
3952
# File 'lib/aws-sdk-proton/client.rb', line 3949

def list_environment_outputs(params = {}, options = {})
  req = build_request(:list_environment_outputs, params)
  req.send_request(options)
end

#list_environment_provisioned_resources(params = {}) ⇒ Types::ListEnvironmentProvisionedResourcesOutput

List the provisioned resources for your environment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_environment_provisioned_resources({
  environment_name: "ResourceName", # required
  next_token: "EmptyNextToken",
})

Response structure


resp.next_token #=> String
resp.provisioned_resources #=> Array
resp.provisioned_resources[0].identifier #=> String
resp.provisioned_resources[0].name #=> String
resp.provisioned_resources[0].provisioning_engine #=> String, one of "CLOUDFORMATION", "TERRAFORM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :environment_name (required, String)

    The environment name.

  • :next_token (String)

    A token that indicates the location of the next environment provisioned resource in the array of environment provisioned resources, after the list of environment provisioned resources that was previously requested.

Returns:

See Also:



3991
3992
3993
3994
# File 'lib/aws-sdk-proton/client.rb', line 3991

def list_environment_provisioned_resources(params = {}, options = {})
  req = build_request(:list_environment_provisioned_resources, params)
  req.send_request(options)
end

#list_environment_template_versions(params = {}) ⇒ Types::ListEnvironmentTemplateVersionsOutput

List major or minor versions of an environment template with detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_environment_template_versions({
  major_version: "TemplateVersionPart",
  max_results: 1,
  next_token: "NextToken",
  template_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.template_versions #=> Array
resp.template_versions[0].arn #=> String
resp.template_versions[0].created_at #=> Time
resp.template_versions[0].description #=> String
resp.template_versions[0].last_modified_at #=> Time
resp.template_versions[0].major_version #=> String
resp.template_versions[0].minor_version #=> String
resp.template_versions[0].recommended_minor_version #=> String
resp.template_versions[0].status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.template_versions[0].status_message #=> String
resp.template_versions[0].template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (String)

    To view a list of minor of versions under a major version of an environment template, include ‘major Version`.

    To view a list of major versions of an environment template, exclude ‘major Version`.

  • :max_results (Integer)

    The maximum number of major or minor versions of an environment template to list.

  • :next_token (String)

    A token that indicates the location of the next major or minor version in the array of major or minor versions of an environment template, after the list of major or minor versions that was previously requested.

  • :template_name (required, String)

    The name of the environment template.

Returns:

See Also:



4054
4055
4056
4057
# File 'lib/aws-sdk-proton/client.rb', line 4054

def list_environment_template_versions(params = {}, options = {})
  req = build_request(:list_environment_template_versions, params)
  req.send_request(options)
end

#list_environment_templates(params = {}) ⇒ Types::ListEnvironmentTemplatesOutput

List environment templates.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_environment_templates({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.templates #=> Array
resp.templates[0].arn #=> String
resp.templates[0].created_at #=> Time
resp.templates[0].description #=> String
resp.templates[0].display_name #=> String
resp.templates[0].last_modified_at #=> Time
resp.templates[0].name #=> String
resp.templates[0].provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.templates[0].recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of environment templates to list.

  • :next_token (String)

    A token that indicates the location of the next environment template in the array of environment templates, after the list of environment templates that was previously requested.

Returns:

See Also:



4100
4101
4102
4103
# File 'lib/aws-sdk-proton/client.rb', line 4100

def list_environment_templates(params = {}, options = {})
  req = build_request(:list_environment_templates, params)
  req.send_request(options)
end

#list_environments(params = {}) ⇒ Types::ListEnvironmentsOutput

List environments with detail data summaries.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_environments({
  environment_templates: [
    {
      major_version: "TemplateVersionPart", # required
      template_name: "ResourceName", # required
    },
  ],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.environments #=> Array
resp.environments[0].arn #=> String
resp.environments[0].component_role_arn #=> String
resp.environments[0].created_at #=> Time
resp.environments[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environments[0].deployment_status_message #=> String
resp.environments[0].description #=> String
resp.environments[0]. #=> String
resp.environments[0]. #=> String
resp.environments[0].last_attempted_deployment_id #=> String
resp.environments[0].last_deployment_attempted_at #=> Time
resp.environments[0].last_deployment_succeeded_at #=> Time
resp.environments[0].last_succeeded_deployment_id #=> String
resp.environments[0].name #=> String
resp.environments[0].proton_service_role_arn #=> String
resp.environments[0].provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environments[0].template_major_version #=> String
resp.environments[0].template_minor_version #=> String
resp.environments[0].template_name #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :environment_templates (Array<Types::EnvironmentTemplateFilter>)

    An array of the versions of the environment template.

  • :max_results (Integer)

    The maximum number of environments to list.

  • :next_token (String)

    A token that indicates the location of the next environment in the array of environments, after the list of environments that was previously requested.

Returns:

See Also:



4165
4166
4167
4168
# File 'lib/aws-sdk-proton/client.rb', line 4165

def list_environments(params = {}, options = {})
  req = build_request(:list_environments, params)
  req.send_request(options)
end

#list_repositories(params = {}) ⇒ Types::ListRepositoriesOutput

List linked repositories with detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_repositories({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.repositories #=> Array
resp.repositories[0].arn #=> String
resp.repositories[0].connection_arn #=> String
resp.repositories[0].name #=> String
resp.repositories[0].provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of repositories to list.

  • :next_token (String)

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

Returns:

See Also:



4207
4208
4209
4210
# File 'lib/aws-sdk-proton/client.rb', line 4207

def list_repositories(params = {}, options = {})
  req = build_request(:list_repositories, params)
  req.send_request(options)
end

#list_repository_sync_definitions(params = {}) ⇒ Types::ListRepositorySyncDefinitionsOutput

List repository sync definitions with detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_repository_sync_definitions({
  next_token: "EmptyNextToken",
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  sync_type: "TEMPLATE_SYNC", # required, accepts TEMPLATE_SYNC, SERVICE_SYNC
})

Response structure


resp.next_token #=> String
resp.sync_definitions #=> Array
resp.sync_definitions[0].branch #=> String
resp.sync_definitions[0].directory #=> String
resp.sync_definitions[0].parent #=> String
resp.sync_definitions[0].target #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    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.

  • :repository_name (required, String)

    The repository name.

  • :repository_provider (required, String)

    The repository provider.

  • :sync_type (required, String)

    The sync type. The only supported value is ‘TEMPLATE_SYNC`.

Returns:

See Also:



4257
4258
4259
4260
# File 'lib/aws-sdk-proton/client.rb', line 4257

def list_repository_sync_definitions(params = {}, options = {})
  req = build_request(:list_repository_sync_definitions, params)
  req.send_request(options)
end

#list_service_instance_outputs(params = {}) ⇒ Types::ListServiceInstanceOutputsOutput

Get a list service of instance Infrastructure as Code (IaC) outputs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_instance_outputs({
  deployment_id: "DeploymentId",
  next_token: "EmptyNextToken",
  service_instance_name: "ResourceName", # required
  service_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.outputs #=> Array
resp.outputs[0].key #=> String
resp.outputs[0].value_string #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :deployment_id (String)

    The ID of the deployment whose outputs you want.

  • :next_token (String)

    A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.

  • :service_instance_name (required, String)

    The name of the service instance whose outputs you want.

  • :service_name (required, String)

    The name of the service that ‘serviceInstanceName` is associated to.

Returns:

See Also:



4304
4305
4306
4307
# File 'lib/aws-sdk-proton/client.rb', line 4304

def list_service_instance_outputs(params = {}, options = {})
  req = build_request(:list_service_instance_outputs, params)
  req.send_request(options)
end

#list_service_instance_provisioned_resources(params = {}) ⇒ Types::ListServiceInstanceProvisionedResourcesOutput

List provisioned resources for a service instance with details.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_instance_provisioned_resources({
  next_token: "EmptyNextToken",
  service_instance_name: "ResourceName", # required
  service_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.provisioned_resources #=> Array
resp.provisioned_resources[0].identifier #=> String
resp.provisioned_resources[0].name #=> String
resp.provisioned_resources[0].provisioning_engine #=> String, one of "CLOUDFORMATION", "TERRAFORM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.

  • :service_instance_name (required, String)

    The name of the service instance whose provisioned resources you want.

  • :service_name (required, String)

    The name of the service that ‘serviceInstanceName` is associated to.

Returns:

See Also:



4349
4350
4351
4352
# File 'lib/aws-sdk-proton/client.rb', line 4349

def list_service_instance_provisioned_resources(params = {}, options = {})
  req = build_request(:list_service_instance_provisioned_resources, params)
  req.send_request(options)
end

#list_service_instances(params = {}) ⇒ Types::ListServiceInstancesOutput

List service instances with summary data. This action lists service instances of all services in the Amazon Web Services account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_instances({
  filters: [
    {
      key: "name", # accepts name, deploymentStatus, templateName, serviceName, deployedTemplateVersionStatus, environmentName, lastDeploymentAttemptedAtBefore, lastDeploymentAttemptedAtAfter, createdAtBefore, createdAtAfter
      value: "ListServiceInstancesFilterValue",
    },
  ],
  max_results: 1,
  next_token: "NextToken",
  service_name: "ResourceName",
  sort_by: "name", # accepts name, deploymentStatus, templateName, serviceName, environmentName, lastDeploymentAttemptedAt, createdAt
  sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
})

Response structure


resp.next_token #=> String
resp.service_instances #=> Array
resp.service_instances[0].arn #=> String
resp.service_instances[0].created_at #=> Time
resp.service_instances[0].deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service_instances[0].deployment_status_message #=> String
resp.service_instances[0].environment_name #=> String
resp.service_instances[0].last_attempted_deployment_id #=> String
resp.service_instances[0].last_deployment_attempted_at #=> Time
resp.service_instances[0].last_deployment_succeeded_at #=> Time
resp.service_instances[0].last_succeeded_deployment_id #=> String
resp.service_instances[0].name #=> String
resp.service_instances[0].service_name #=> String
resp.service_instances[0].template_major_version #=> String
resp.service_instances[0].template_minor_version #=> String
resp.service_instances[0].template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Array<Types::ListServiceInstancesFilter>)

    An array of filtering criteria that scope down the result list. By default, all service instances in the Amazon Web Services account are returned.

  • :max_results (Integer)

    The maximum number of service instances to list.

  • :next_token (String)

    A token that indicates the location of the next service in the array of service instances, after the list of service instances that was previously requested.

  • :service_name (String)

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

  • :sort_by (String)

    The field that the result list is sorted by.

    When you choose to sort by ‘serviceName`, service instances within each service are sorted by service instance name.

    Default: ‘serviceName`

  • :sort_order (String)

    Result list sort order.

    Default: ‘ASCENDING`

Returns:

See Also:



4432
4433
4434
4435
# File 'lib/aws-sdk-proton/client.rb', line 4432

def list_service_instances(params = {}, options = {})
  req = build_request(:list_service_instances, params)
  req.send_request(options)
end

#list_service_pipeline_outputs(params = {}) ⇒ Types::ListServicePipelineOutputsOutput

Get a list of service pipeline Infrastructure as Code (IaC) outputs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_pipeline_outputs({
  deployment_id: "DeploymentId",
  next_token: "EmptyNextToken",
  service_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.outputs #=> Array
resp.outputs[0].key #=> String
resp.outputs[0].value_string #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :deployment_id (String)

    The ID of the deployment you want the outputs for.

  • :next_token (String)

    A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.

  • :service_name (required, String)

    The name of the service whose pipeline’s outputs you want.

Returns:

See Also:



4475
4476
4477
4478
# File 'lib/aws-sdk-proton/client.rb', line 4475

def list_service_pipeline_outputs(params = {}, options = {})
  req = build_request(:list_service_pipeline_outputs, params)
  req.send_request(options)
end

#list_service_pipeline_provisioned_resources(params = {}) ⇒ Types::ListServicePipelineProvisionedResourcesOutput

List provisioned resources for a service and pipeline with details.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_pipeline_provisioned_resources({
  next_token: "EmptyNextToken",
  service_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.provisioned_resources #=> Array
resp.provisioned_resources[0].identifier #=> String
resp.provisioned_resources[0].name #=> String
resp.provisioned_resources[0].provisioning_engine #=> String, one of "CLOUDFORMATION", "TERRAFORM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.

  • :service_name (required, String)

    The name of the service whose pipeline’s provisioned resources you want.

Returns:

See Also:



4517
4518
4519
4520
# File 'lib/aws-sdk-proton/client.rb', line 4517

def list_service_pipeline_provisioned_resources(params = {}, options = {})
  req = build_request(:list_service_pipeline_provisioned_resources, params)
  req.send_request(options)
end

#list_service_template_versions(params = {}) ⇒ Types::ListServiceTemplateVersionsOutput

List major or minor versions of a service template with detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_template_versions({
  major_version: "TemplateVersionPart",
  max_results: 1,
  next_token: "NextToken",
  template_name: "ResourceName", # required
})

Response structure


resp.next_token #=> String
resp.template_versions #=> Array
resp.template_versions[0].arn #=> String
resp.template_versions[0].created_at #=> Time
resp.template_versions[0].description #=> String
resp.template_versions[0].last_modified_at #=> Time
resp.template_versions[0].major_version #=> String
resp.template_versions[0].minor_version #=> String
resp.template_versions[0].recommended_minor_version #=> String
resp.template_versions[0].status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.template_versions[0].status_message #=> String
resp.template_versions[0].template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :major_version (String)

    To view a list of minor of versions under a major version of a service template, include ‘major Version`.

    To view a list of major versions of a service template, exclude ‘major Version`.

  • :max_results (Integer)

    The maximum number of major or minor versions of a service template to list.

  • :next_token (String)

    A token that indicates the location of the next major or minor version in the array of major or minor versions of a service template, after the list of major or minor versions that was previously requested.

  • :template_name (required, String)

    The name of the service template.

Returns:

See Also:



4578
4579
4580
4581
# File 'lib/aws-sdk-proton/client.rb', line 4578

def list_service_template_versions(params = {}, options = {})
  req = build_request(:list_service_template_versions, params)
  req.send_request(options)
end

#list_service_templates(params = {}) ⇒ Types::ListServiceTemplatesOutput

List service templates with detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_templates({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.templates #=> Array
resp.templates[0].arn #=> String
resp.templates[0].created_at #=> Time
resp.templates[0].description #=> String
resp.templates[0].display_name #=> String
resp.templates[0].last_modified_at #=> Time
resp.templates[0].name #=> String
resp.templates[0].pipeline_provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.templates[0].recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of service templates to list.

  • :next_token (String)

    A token that indicates the location of the next service template in the array of service templates, after the list of service templates previously requested.

Returns:

See Also:



4624
4625
4626
4627
# File 'lib/aws-sdk-proton/client.rb', line 4624

def list_service_templates(params = {}, options = {})
  req = build_request(:list_service_templates, params)
  req.send_request(options)
end

#list_services(params = {}) ⇒ Types::ListServicesOutput

List services with summaries of detail data.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_services({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.services #=> Array
resp.services[0].arn #=> String
resp.services[0].created_at #=> Time
resp.services[0].description #=> String
resp.services[0].last_modified_at #=> Time
resp.services[0].name #=> String
resp.services[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED_CLEANUP_IN_PROGRESS", "CREATE_FAILED_CLEANUP_COMPLETE", "CREATE_FAILED_CLEANUP_FAILED", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_COMPLETE", "UPDATE_FAILED_CLEANUP_FAILED", "UPDATE_FAILED", "UPDATE_COMPLETE_CLEANUP_FAILED"
resp.services[0].status_message #=> String
resp.services[0].template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of services to list.

  • :next_token (String)

    A token that indicates the location of the next service in the array of services, after the list of services that was previously requested.

Returns:

See Also:



4669
4670
4671
4672
# File 'lib/aws-sdk-proton/client.rb', line 4669

def list_services(params = {}, options = {})
  req = build_request(:list_services, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceOutput

List tags for a resource. For more information, see [Proton resources and tagging] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  max_results: 1,
  next_token: "String",
  resource_arn: "Arn", # required
})

Response structure


resp.next_token #=> String
resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of tags to list.

  • :next_token (String)

    A token that indicates the location of the next resource tag in the array of resource tags, after the list of resource tags that was previously requested.

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource for the listed tags.

Returns:

See Also:



4718
4719
4720
4721
# File 'lib/aws-sdk-proton/client.rb', line 4718

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#notify_resource_deployment_status_change(params = {}) ⇒ Struct

Notify Proton of status changes to a provisioned resource when you use self-managed provisioning.

For more information, see [Self-managed provisioning] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html#ag-works-prov-methods-self

Examples:

Request syntax with placeholder values


resp = client.notify_resource_deployment_status_change({
  deployment_id: "DeploymentId",
  outputs: [
    {
      key: "OutputKey",
      value_string: "OutputValueString",
    },
  ],
  resource_arn: "Arn", # required
  status: "IN_PROGRESS", # accepts IN_PROGRESS, FAILED, SUCCEEDED
  status_message: "NotifyResourceDeploymentStatusChangeInputStatusMessageString",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :deployment_id (String)

    The deployment ID for your provisioned resource.

  • :outputs (Array<Types::Output>)

    The provisioned resource state change detail data that’s returned by Proton.

  • :resource_arn (required, String)

    The provisioned resource Amazon Resource Name (ARN).

  • :status (String)

    The status of your provisioned resource.

  • :status_message (String)

    The deployment status message for your provisioned resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4770
4771
4772
4773
# File 'lib/aws-sdk-proton/client.rb', line 4770

def notify_resource_deployment_status_change(params = {}, options = {})
  req = build_request(:notify_resource_deployment_status_change, params)
  req.send_request(options)
end

#reject_environment_account_connection(params = {}) ⇒ Types::RejectEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  id: "EnvironmentAccountConnectionId", # required
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the environment account connection to reject.

Returns:

See Also:



4822
4823
4824
4825
# File 'lib/aws-sdk-proton/client.rb', line 4822

def (params = {}, options = {})
  req = build_request(:reject_environment_account_connection, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Tag a resource. A tag is a key-value pair of metadata that you associate with an Proton resource.

For more information, see [Proton resources and tagging] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "Arn", # required
  tags: [ # required
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the Proton resource to apply customer tags to.

  • :tags (required, Array<Types::Tag>)

    A list of customer tags to apply to the Proton resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4862
4863
4864
4865
# File 'lib/aws-sdk-proton/client.rb', line 4862

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Remove a customer tag from a resource. A tag is a key-value pair of metadata associated with an Proton resource.

For more information, see [Proton resources and tagging] in the *Proton User Guide*.

[1]: docs.aws.amazon.com/proton/latest/userguide/resources.html

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "Arn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource to remove customer tags from.

  • :tag_keys (required, Array<String>)

    A list of customer tag keys that indicate the customer tags to be removed from the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4898
4899
4900
4901
# File 'lib/aws-sdk-proton/client.rb', line 4898

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_account_settings(params = {}) ⇒ Types::UpdateAccountSettingsOutput

Update Proton settings that are used for multiple services in the Amazon Web Services account.

Examples:

Request syntax with placeholder values


resp = client.({
  delete_pipeline_provisioning_repository: false,
  pipeline_codebuild_role_arn: "RoleArnOrEmptyString",
  pipeline_provisioning_repository: {
    branch: "GitBranchName", # required
    name: "RepositoryName", # required
    provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  },
  pipeline_service_role_arn: "RoleArnOrEmptyString",
})

Response structure


resp..pipeline_codebuild_role_arn #=> String
resp..pipeline_provisioning_repository.arn #=> String
resp..pipeline_provisioning_repository.branch #=> String
resp..pipeline_provisioning_repository.name #=> String
resp..pipeline_provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp..pipeline_service_role_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :delete_pipeline_provisioning_repository (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.

  • :pipeline_codebuild_role_arn (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.

  • :pipeline_provisioning_repository (Types::RepositoryBranchInput)

    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`.

  • :pipeline_service_role_arn (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.

Returns:

See Also:



4965
4966
4967
4968
# File 'lib/aws-sdk-proton/client.rb', line 4965

def (params = {}, options = {})
  req = build_request(:update_account_settings, params)
  req.send_request(options)
end

#update_component(params = {}) ⇒ Types::UpdateComponentOutput

Update a component.

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

<note markdown=“1”> You can’t update a component while its deployment status, or the deployment status of a service instance attached to it, is ‘IN_PROGRESS`.

</note>

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

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.update_component({
  client_token: "ClientToken",
  deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION
  description: "Description",
  name: "ResourceName", # required
  service_instance_name: "ResourceNameOrEmpty",
  service_name: "ResourceNameOrEmpty",
  service_spec: "SpecContents",
  template_file: "TemplateFileContents",
})

Response structure


resp.component.arn #=> String
resp.component.created_at #=> Time
resp.component.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.component.deployment_status_message #=> String
resp.component.description #=> String
resp.component.environment_name #=> String
resp.component.last_attempted_deployment_id #=> String
resp.component.last_client_request_token #=> String
resp.component.last_deployment_attempted_at #=> Time
resp.component.last_deployment_succeeded_at #=> Time
resp.component.last_modified_at #=> Time
resp.component.last_succeeded_deployment_id #=> String
resp.component.name #=> String
resp.component.service_instance_name #=> String
resp.component.service_name #=> String
resp.component.service_spec #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    The client token for the updated component.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :deployment_type (required, String)

    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.
    
  • :description (String)

    An optional customer-provided description of the component.

  • :name (required, String)

    The name of the component to update.

  • :service_instance_name (String)

    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.

  • :service_name (String)

    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.

  • :service_spec (String)

    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.

  • :template_file (String)

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

    <note markdown=“1”> Components support a single IaC file, even if you use Terraform as your template language.

    </note>
    

Returns:

See Also:



5089
5090
5091
5092
# File 'lib/aws-sdk-proton/client.rb', line 5089

def update_component(params = {}, options = {})
  req = build_request(:update_component, params)
  req.send_request(options)
end

#update_environment(params = {}) ⇒ Types::UpdateEnvironmentOutput

Update an environment.

If the environment is associated with an environment account connection, *don’t* update or include the ‘protonServiceRoleArn` and `provisioningRepository` parameter to update or connect to an environment account connection.

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 the ‘environmentAccountConnectionId` or `protonServiceRoleArn` parameter and value. You can’t update both.

If the environment was configured for Amazon Web Services-managed provisioning, omit the ‘provisioningRepository` parameter.

If the environment was configured for self-managed provisioning, specify the ‘provisioningRepository` parameter and omit the `protonServiceRoleArn` and `environmentAccountConnectionId` 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.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-environments.html [2]: docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html

Examples:

Request syntax with placeholder values


resp = client.update_environment({
  codebuild_role_arn: "RoleArn",
  component_role_arn: "RoleArn",
  deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION, MINOR_VERSION, MAJOR_VERSION
  description: "Description",
  environment_account_connection_id: "EnvironmentAccountConnectionId",
  name: "ResourceName", # required
  proton_service_role_arn: "Arn",
  provisioning_repository: {
    branch: "GitBranchName", # required
    name: "RepositoryName", # required
    provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  },
  spec: "SpecContents",
  template_major_version: "TemplateVersionPart",
  template_minor_version: "TemplateVersionPart",
})

Response structure


resp.environment.arn #=> String
resp.environment.codebuild_role_arn #=> String
resp.environment.component_role_arn #=> String
resp.environment.created_at #=> Time
resp.environment.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.environment.deployment_status_message #=> String
resp.environment.description #=> String
resp.environment. #=> String
resp.environment. #=> String
resp.environment.last_attempted_deployment_id #=> String
resp.environment.last_deployment_attempted_at #=> Time
resp.environment.last_deployment_succeeded_at #=> Time
resp.environment.last_succeeded_deployment_id #=> String
resp.environment.name #=> String
resp.environment.proton_service_role_arn #=> String
resp.environment.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment.provisioning_repository.arn #=> String
resp.environment.provisioning_repository.branch #=> String
resp.environment.provisioning_repository.name #=> String
resp.environment.provisioning_repository.provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.environment.spec #=> String
resp.environment.template_major_version #=> String
resp.environment.template_minor_version #=> String
resp.environment.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :codebuild_role_arn (String)

    The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.

  • :component_role_arn (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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :deployment_type (required, String)

    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).
    
  • :description (String)

    A description of the environment update.

  • :environment_account_connection_id (String)

    The ID of the environment account connection.

    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.

  • :name (required, String)

    The name of the environment to update.

  • :proton_service_role_arn (String)

    The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.

  • :provisioning_repository (Types::RepositoryBranchInput)

    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.

  • :spec (String)

    The formatted specification that defines the update.

  • :template_major_version (String)

    The major version of the environment to update.

  • :template_minor_version (String)

    The minor version of the environment to update.

Returns:

See Also:



5317
5318
5319
5320
# File 'lib/aws-sdk-proton/client.rb', line 5317

def update_environment(params = {}, options = {})
  req = build_request(:update_environment, params)
  req.send_request(options)
end

#update_environment_account_connection(params = {}) ⇒ Types::UpdateEnvironmentAccountConnectionOutput

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*.

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html

Examples:

Request syntax with placeholder values


resp = client.({
  codebuild_role_arn: "RoleArn",
  component_role_arn: "RoleArn",
  id: "EnvironmentAccountConnectionId", # required
  role_arn: "RoleArn",
})

Response structure


resp..arn #=> String
resp..codebuild_role_arn #=> String
resp..component_role_arn #=> String
resp.. #=> String
resp..environment_name #=> String
resp..id #=> String
resp..last_modified_at #=> Time
resp.. #=> String
resp..requested_at #=> Time
resp..role_arn #=> String
resp..status #=> String, one of "PENDING", "CONNECTED", "REJECTED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :codebuild_role_arn (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.

  • :component_role_arn (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*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :id (required, String)

    The ID of the environment account connection to update.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of the IAM service role that’s associated with the environment account connection to update.

Returns:

See Also:



5393
5394
5395
5396
# File 'lib/aws-sdk-proton/client.rb', line 5393

def (params = {}, options = {})
  req = build_request(:update_environment_account_connection, params)
  req.send_request(options)
end

#update_environment_template(params = {}) ⇒ Types::UpdateEnvironmentTemplateOutput

Update an environment template.

Examples:

Request syntax with placeholder values


resp = client.update_environment_template({
  description: "Description",
  display_name: "DisplayName",
  name: "ResourceName", # required
})

Response structure


resp.environment_template.arn #=> String
resp.environment_template.created_at #=> Time
resp.environment_template.description #=> String
resp.environment_template.display_name #=> String
resp.environment_template.encryption_key #=> String
resp.environment_template.last_modified_at #=> Time
resp.environment_template.name #=> String
resp.environment_template.provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.environment_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    A description of the environment template update.

  • :display_name (String)

    The name of the environment template to update as displayed in the developer interface.

  • :name (required, String)

    The name of the environment template to update.

Returns:

See Also:



5438
5439
5440
5441
# File 'lib/aws-sdk-proton/client.rb', line 5438

def update_environment_template(params = {}, options = {})
  req = build_request(:update_environment_template, params)
  req.send_request(options)
end

#update_environment_template_version(params = {}) ⇒ Types::UpdateEnvironmentTemplateVersionOutput

Update a major or minor version of an environment template.

Examples:

Request syntax with placeholder values


resp = client.update_environment_template_version({
  description: "Description",
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  status: "REGISTRATION_IN_PROGRESS", # accepts REGISTRATION_IN_PROGRESS, REGISTRATION_FAILED, DRAFT, PUBLISHED
  template_name: "ResourceName", # required
})

Response structure


resp.environment_template_version.arn #=> String
resp.environment_template_version.created_at #=> Time
resp.environment_template_version.description #=> String
resp.environment_template_version.last_modified_at #=> Time
resp.environment_template_version.major_version #=> String
resp.environment_template_version.minor_version #=> String
resp.environment_template_version.recommended_minor_version #=> String
resp.environment_template_version.schema #=> String
resp.environment_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.environment_template_version.status_message #=> String
resp.environment_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    A description of environment template version to update.

  • :major_version (required, String)

    To update a major version of an environment template, include ‘major Version`.

  • :minor_version (required, String)

    To update a minor version of an environment template, include ‘minorVersion`.

  • :status (String)

    The status of the environment template minor version to update.

  • :template_name (required, String)

    The name of the environment template.

Returns:

See Also:



5494
5495
5496
5497
# File 'lib/aws-sdk-proton/client.rb', line 5494

def update_environment_template_version(params = {}, options = {})
  req = build_request(:update_environment_template_version, params)
  req.send_request(options)
end

#update_service(params = {}) ⇒ Types::UpdateServiceOutput

Edit a service description or use a spec to add and delete service instances.

<note markdown=“1”> Existing service instances and the service pipeline *can’t* be edited using this API. They can only be deleted.

</note>

Use the ‘description` parameter to modify the description.

Edit the ‘spec` parameter to add or delete instances.

<note markdown=“1”> You can’t delete a service instance (remove it from the spec) if it has an attached component.

For more information about components, see [Proton components][1] in

the *Proton User Guide*.

</note>

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.update_service({
  description: "Description",
  name: "ResourceName", # required
  spec: "SpecContents",
})

Response structure


resp.service.arn #=> String
resp.service.branch_name #=> String
resp.service.created_at #=> Time
resp.service.description #=> String
resp.service.last_modified_at #=> Time
resp.service.name #=> String
resp.service.pipeline.arn #=> String
resp.service.pipeline.created_at #=> Time
resp.service.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service.pipeline.deployment_status_message #=> String
resp.service.pipeline.last_attempted_deployment_id #=> String
resp.service.pipeline.last_deployment_attempted_at #=> Time
resp.service.pipeline.last_deployment_succeeded_at #=> Time
resp.service.pipeline.last_succeeded_deployment_id #=> String
resp.service.pipeline.spec #=> String
resp.service.pipeline.template_major_version #=> String
resp.service.pipeline.template_minor_version #=> String
resp.service.pipeline.template_name #=> String
resp.service.repository_connection_arn #=> String
resp.service.repository_id #=> String
resp.service.spec #=> String
resp.service.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED_CLEANUP_IN_PROGRESS", "CREATE_FAILED_CLEANUP_COMPLETE", "CREATE_FAILED_CLEANUP_FAILED", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_IN_PROGRESS", "UPDATE_FAILED_CLEANUP_COMPLETE", "UPDATE_FAILED_CLEANUP_FAILED", "UPDATE_FAILED", "UPDATE_COMPLETE_CLEANUP_FAILED"
resp.service.status_message #=> String
resp.service.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    The edited service description.

  • :name (required, String)

    The name of the service to edit.

  • :spec (String)

    Lists the service instances to add and the existing service instances to remain. Omit the existing service instances to delete from the list. *Don’t* include edits to the existing service instances or pipeline. For more information, see [Edit a service] in the *Proton User Guide*.

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-svc-update.html

Returns:

See Also:



5583
5584
5585
5586
# File 'lib/aws-sdk-proton/client.rb', line 5583

def update_service(params = {}, options = {})
  req = build_request(:update_service, params)
  req.send_request(options)
end

#update_service_instance(params = {}) ⇒ Types::UpdateServiceInstanceOutput

Update a service instance.

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

<note markdown=“1”> 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][1] in

the *Proton User Guide*.

</note>

[1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

Examples:

Request syntax with placeholder values


resp = client.update_service_instance({
  client_token: "ClientToken",
  deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION, MINOR_VERSION, MAJOR_VERSION
  name: "ResourceName", # required
  service_name: "ResourceName", # required
  spec: "SpecContents",
  template_major_version: "TemplateVersionPart",
  template_minor_version: "TemplateVersionPart",
})

Response structure


resp.service_instance.arn #=> String
resp.service_instance.created_at #=> Time
resp.service_instance.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.service_instance.deployment_status_message #=> String
resp.service_instance.environment_name #=> String
resp.service_instance.last_attempted_deployment_id #=> String
resp.service_instance.last_client_request_token #=> String
resp.service_instance.last_deployment_attempted_at #=> Time
resp.service_instance.last_deployment_succeeded_at #=> Time
resp.service_instance.last_succeeded_deployment_id #=> String
resp.service_instance.name #=> String
resp.service_instance.service_name #=> String
resp.service_instance.spec #=> String
resp.service_instance.template_major_version #=> String
resp.service_instance.template_minor_version #=> String
resp.service_instance.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    The client token of the service instance to update.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :deployment_type (required, String)

    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.
    
  • :name (required, String)

    The name of the service instance to update.

  • :service_name (required, String)

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

  • :spec (String)

    The formatted specification that defines the service instance update.

  • :template_major_version (String)

    The major version of the service template to update.

  • :template_minor_version (String)

    The minor version of the service template to update.

Returns:

See Also:



5704
5705
5706
5707
# File 'lib/aws-sdk-proton/client.rb', line 5704

def update_service_instance(params = {}, options = {})
  req = build_request(:update_service_instance, params)
  req.send_request(options)
end

#update_service_pipeline(params = {}) ⇒ Types::UpdateServicePipelineOutput

Update the service pipeline.

There are four modes for updating a service pipeline. 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 service pipeline 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 pipeline is deployed and updated with the
published, recommended (latest) minor version of the current major
version in use, by default. You can specify a different minor
version of the current major version in use.

: ‘MAJOR_VERSION`

In this mode, the service pipeline 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.

Examples:

Request syntax with placeholder values


resp = client.update_service_pipeline({
  deployment_type: "NONE", # required, accepts NONE, CURRENT_VERSION, MINOR_VERSION, MAJOR_VERSION
  service_name: "ResourceName", # required
  spec: "SpecContents", # required
  template_major_version: "TemplateVersionPart",
  template_minor_version: "TemplateVersionPart",
})

Response structure


resp.pipeline.arn #=> String
resp.pipeline.created_at #=> Time
resp.pipeline.deployment_status #=> String, one of "IN_PROGRESS", "FAILED", "SUCCEEDED", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETE_COMPLETE", "CANCELLING", "CANCELLED"
resp.pipeline.deployment_status_message #=> String
resp.pipeline.last_attempted_deployment_id #=> String
resp.pipeline.last_deployment_attempted_at #=> Time
resp.pipeline.last_deployment_succeeded_at #=> Time
resp.pipeline.last_succeeded_deployment_id #=> String
resp.pipeline.spec #=> String
resp.pipeline.template_major_version #=> String
resp.pipeline.template_minor_version #=> String
resp.pipeline.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :deployment_type (required, String)

    The deployment type.

    There are four modes for updating a service pipeline. 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 service pipeline 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 pipeline is deployed and updated with the
    published, recommended (latest) minor version of the current major
    version in use, by default. You can specify a different minor
    version of the current major version in use.
    

    : ‘MAJOR_VERSION`

    In this mode, the service pipeline 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.
    
  • :service_name (required, String)

    The name of the service to that the pipeline is associated with.

  • :spec (required, String)

    The spec for the service pipeline to update.

  • :template_major_version (String)

    The major version of the service template that was used to create the service that the pipeline is associated with.

  • :template_minor_version (String)

    The minor version of the service template that was used to create the service that the pipeline is associated with.

Returns:

See Also:



5837
5838
5839
5840
# File 'lib/aws-sdk-proton/client.rb', line 5837

def update_service_pipeline(params = {}, options = {})
  req = build_request(:update_service_pipeline, params)
  req.send_request(options)
end

#update_service_sync_blocker(params = {}) ⇒ Types::UpdateServiceSyncBlockerOutput

Update the service sync blocker by resolving it.

Examples:

Request syntax with placeholder values


resp = client.update_service_sync_blocker({
  id: "String", # required
  resolved_reason: "String", # required
})

Response structure


resp.service_instance_name #=> String
resp.service_name #=> String
resp.service_sync_blocker.contexts #=> Array
resp.service_sync_blocker.contexts[0].key #=> String
resp.service_sync_blocker.contexts[0].value #=> String
resp.service_sync_blocker.created_at #=> Time
resp.service_sync_blocker.created_reason #=> String
resp.service_sync_blocker.id #=> String
resp.service_sync_blocker.resolved_at #=> Time
resp.service_sync_blocker.resolved_reason #=> String
resp.service_sync_blocker.status #=> String, one of "ACTIVE", "RESOLVED"
resp.service_sync_blocker.type #=> String, one of "AUTOMATED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :id (required, String)

    The ID of the service sync blocker.

  • :resolved_reason (required, String)

    The reason the service sync blocker was resolved.

Returns:

See Also:



5882
5883
5884
5885
# File 'lib/aws-sdk-proton/client.rb', line 5882

def update_service_sync_blocker(params = {}, options = {})
  req = build_request(:update_service_sync_blocker, params)
  req.send_request(options)
end

#update_service_sync_config(params = {}) ⇒ Types::UpdateServiceSyncConfigOutput

Update the Proton Ops config file.

Examples:

Request syntax with placeholder values


resp = client.update_service_sync_config({
  branch: "GitBranchName", # required
  file_path: "OpsFilePath", # required
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  service_name: "ResourceName", # required
})

Response structure


resp.service_sync_config.branch #=> String
resp.service_sync_config.file_path #=> String
resp.service_sync_config.repository_name #=> String
resp.service_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.service_sync_config.service_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch (required, String)

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

  • :file_path (required, String)

    The path to the Proton Ops file.

  • :repository_name (required, String)

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

  • :repository_provider (required, String)

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

  • :service_name (required, String)

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

Returns:

See Also:



5932
5933
5934
5935
# File 'lib/aws-sdk-proton/client.rb', line 5932

def update_service_sync_config(params = {}, options = {})
  req = build_request(:update_service_sync_config, params)
  req.send_request(options)
end

#update_service_template(params = {}) ⇒ Types::UpdateServiceTemplateOutput

Update a service template.

Examples:

Request syntax with placeholder values


resp = client.update_service_template({
  description: "Description",
  display_name: "DisplayName",
  name: "ResourceName", # required
})

Response structure


resp.service_template.arn #=> String
resp.service_template.created_at #=> Time
resp.service_template.description #=> String
resp.service_template.display_name #=> String
resp.service_template.encryption_key #=> String
resp.service_template.last_modified_at #=> Time
resp.service_template.name #=> String
resp.service_template.pipeline_provisioning #=> String, one of "CUSTOMER_MANAGED"
resp.service_template.recommended_version #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :description (String)

    A description of the service template update.

  • :display_name (String)

    The name of the service template to update that’s displayed in the developer interface.

  • :name (required, String)

    The name of the service template to update.

Returns:

See Also:



5977
5978
5979
5980
# File 'lib/aws-sdk-proton/client.rb', line 5977

def update_service_template(params = {}, options = {})
  req = build_request(:update_service_template, params)
  req.send_request(options)
end

#update_service_template_version(params = {}) ⇒ Types::UpdateServiceTemplateVersionOutput

Update a major or minor version of a service template.

Examples:

Request syntax with placeholder values


resp = client.update_service_template_version({
  compatible_environment_templates: [
    {
      major_version: "TemplateVersionPart", # required
      template_name: "ResourceName", # required
    },
  ],
  description: "Description",
  major_version: "TemplateVersionPart", # required
  minor_version: "TemplateVersionPart", # required
  status: "REGISTRATION_IN_PROGRESS", # accepts REGISTRATION_IN_PROGRESS, REGISTRATION_FAILED, DRAFT, PUBLISHED
  supported_component_sources: ["DIRECTLY_DEFINED"], # accepts DIRECTLY_DEFINED
  template_name: "ResourceName", # required
})

Response structure


resp.service_template_version.arn #=> String
resp.service_template_version.compatible_environment_templates #=> Array
resp.service_template_version.compatible_environment_templates[0].major_version #=> String
resp.service_template_version.compatible_environment_templates[0].template_name #=> String
resp.service_template_version.created_at #=> Time
resp.service_template_version.description #=> String
resp.service_template_version.last_modified_at #=> Time
resp.service_template_version.major_version #=> String
resp.service_template_version.minor_version #=> String
resp.service_template_version.recommended_minor_version #=> String
resp.service_template_version.schema #=> String
resp.service_template_version.status #=> String, one of "REGISTRATION_IN_PROGRESS", "REGISTRATION_FAILED", "DRAFT", "PUBLISHED"
resp.service_template_version.status_message #=> String
resp.service_template_version.supported_component_sources #=> Array
resp.service_template_version.supported_component_sources[0] #=> String, one of "DIRECTLY_DEFINED"
resp.service_template_version.template_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :compatible_environment_templates (Array<Types::CompatibleEnvironmentTemplateInput>)

    An array of environment template objects that are compatible with this service template version. A service instance based on this service template version can run in environments based on compatible templates.

  • :description (String)

    A description of a service template version to update.

  • :major_version (required, String)

    To update a major version of a service template, include ‘major Version`.

  • :minor_version (required, String)

    To update a minor version of a service template, include ‘minorVersion`.

  • :status (String)

    The status of the service template minor version to update.

  • :supported_component_sources (Array<String>)

    An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.

    <note markdown=“1”> A change to ‘supportedComponentSources` doesn’t impact existing component attachments to instances based on this template version. A change only affects later associations.

    </note>
    

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

    [1]: docs.aws.amazon.com/proton/latest/userguide/ag-components.html

  • :template_name (required, String)

    The name of the service template.

Returns:

See Also:



6069
6070
6071
6072
# File 'lib/aws-sdk-proton/client.rb', line 6069

def update_service_template_version(params = {}, options = {})
  req = build_request(:update_service_template_version, params)
  req.send_request(options)
end

#update_template_sync_config(params = {}) ⇒ Types::UpdateTemplateSyncConfigOutput

Update template sync configuration parameters, except for the ‘templateName` and `templateType`. Repository details (branch, name, and provider) should be of a linked repository. A linked repository is a repository that has been registered with Proton. For more information, see CreateRepository.

Examples:

Request syntax with placeholder values


resp = client.update_template_sync_config({
  branch: "GitBranchName", # required
  repository_name: "RepositoryName", # required
  repository_provider: "GITHUB", # required, accepts GITHUB, GITHUB_ENTERPRISE, BITBUCKET
  subdirectory: "Subdirectory",
  template_name: "ResourceName", # required
  template_type: "ENVIRONMENT", # required, accepts ENVIRONMENT, SERVICE
})

Response structure


resp.template_sync_config.branch #=> String
resp.template_sync_config.repository_name #=> String
resp.template_sync_config.repository_provider #=> String, one of "GITHUB", "GITHUB_ENTERPRISE", "BITBUCKET"
resp.template_sync_config.subdirectory #=> String
resp.template_sync_config.template_name #=> String
resp.template_sync_config.template_type #=> String, one of "ENVIRONMENT", "SERVICE"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :branch (required, String)

    The repository branch for your template.

  • :repository_name (required, String)

    The repository name (for example, ‘myrepos/myrepo`).

  • :repository_provider (required, String)

    The repository provider.

  • :subdirectory (String)

    A subdirectory path to your template bundle version. When included, limits the template bundle search to this repository directory.

  • :template_name (required, String)

    The synced template name.

  • :template_type (required, String)

    The synced template type.

Returns:

See Also:



6127
6128
6129
6130
# File 'lib/aws-sdk-proton/client.rb', line 6127

def update_template_sync_config(params = {}, options = {})
  req = build_request(:update_template_sync_config, params)
  req.send_request(options)
end

#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean

Polls an API operation until a resource enters a desired state.

## Basic Usage

A waiter will call an API operation until:

  • It is successful

  • It enters a terminal state

  • It makes the maximum number of attempts

In between attempts, the waiter will sleep.

# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)

## Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.

# poll for ~25 seconds
client.wait_until(waiter_name, params, {
  max_attempts: 5,
  delay: 5,
})

## Callbacks

You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(waiter_name, params, {

  # disable max attempts
  max_attempts: nil,

  # poll for 1 hour, instead of a number of attempts
  before_wait: -> (attempts, response) do
    throw :failure if Time.now - started_at > 3600
  end
})

## Handling Errors

When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

## Valid Waiters

The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.

| waiter_name | params | :delay | :max_attempts | | ————————————— | —————————————– | ——– | ————- | | component_deleted | #get_component | 5 | 999 | | component_deployed | #get_component | 5 | 999 | | environment_deployed | #get_environment | 5 | 999 | | environment_template_version_registered | #get_environment_template_version | 2 | 150 | | service_created | #get_service | 5 | 999 | | service_deleted | #get_service | 5 | 999 | | service_instance_deployed | #get_service_instance | 5 | 999 | | service_pipeline_deployed | #get_service | 10 | 360 | | service_template_version_registered | #get_service_template_version | 2 | 150 | | service_updated | #get_service | 5 | 999 |

Parameters:

  • waiter_name (Symbol)
  • params (Hash) (defaults to: {})

    ({})

  • options (Hash) (defaults to: {})

    ({})

Options Hash (options):

  • :max_attempts (Integer)
  • :delay (Integer)
  • :before_attempt (Proc)
  • :before_wait (Proc)

Yields:

  • (w.waiter)

Returns:

  • (Boolean)

    Returns ‘true` if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.



6251
6252
6253
6254
6255
# File 'lib/aws-sdk-proton/client.rb', line 6251

def wait_until(waiter_name, params = {}, options = {})
  w = waiter(waiter_name, options)
  yield(w.waiter) if block_given? # deprecated
  w.wait(params)
end

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


6259
6260
6261
# File 'lib/aws-sdk-proton/client.rb', line 6259

def waiter_names
  waiters.keys
end