Class: Aws::ResilienceHub::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb

Overview

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

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

For details on configuring region and credentials see the developer guide.

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

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[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.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::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] 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:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_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 https://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:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :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::ResilienceHub::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::ResilienceHub::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 'http://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_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

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



444
445
446
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 444

def initialize(*args)
  super
end

Instance Method Details

#accept_resource_grouping_recommendations(params = {}) ⇒ Types::AcceptResourceGroupingRecommendationsResponse

Accepts the resource grouping recommendations suggested by Resilience Hub for your application.

Examples:

Request syntax with placeholder values


resp = client.accept_resource_grouping_recommendations({
  app_arn: "Arn", # required
  entries: [ # required
    {
      grouping_recommendation_id: "String255", # required
    },
  ],
})

Response structure


resp.app_arn #=> String
resp.failed_entries #=> Array
resp.failed_entries[0].error_message #=> String
resp.failed_entries[0].grouping_recommendation_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :entries (required, Array<Types::AcceptGroupingRecommendationEntry>)

    Indicates the list of resource grouping recommendations you want to include in your application.

Returns:

See Also:



495
496
497
498
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 495

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

#add_draft_app_version_resource_mappings(params = {}) ⇒ Types::AddDraftAppVersionResourceMappingsResponse

Adds the source of resource-maps to the draft version of an application. During assessment, Resilience Hub will use these resource-maps to resolve the latest physical ID for each resource in the application template. For more information about different types of resources supported by Resilience Hub and how to add them in your application, see Step 2: How is your application managed? in the Resilience Hub User Guide.

Examples:

Request syntax with placeholder values


resp = client.add_draft_app_version_resource_mappings({
  app_arn: "Arn", # required
  resource_mappings: [ # required
    {
      app_registry_app_name: "EntityName",
      eks_source_name: "String255",
      logical_stack_name: "String255",
      mapping_type: "CfnStack", # required, accepts CfnStack, Resource, AppRegistryApp, ResourceGroup, Terraform, EKS
      physical_resource_id: { # required
        aws_account_id: "CustomerId",
        aws_region: "AwsRegion",
        identifier: "String255", # required
        type: "Arn", # required, accepts Arn, Native
      },
      resource_group_name: "EntityName",
      resource_name: "EntityName",
      terraform_source_name: "String255",
    },
  ],
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.resource_mappings #=> Array
resp.resource_mappings[0].app_registry_app_name #=> String
resp.resource_mappings[0].eks_source_name #=> String
resp.resource_mappings[0].logical_stack_name #=> String
resp.resource_mappings[0].mapping_type #=> String, one of "CfnStack", "Resource", "AppRegistryApp", "ResourceGroup", "Terraform", "EKS"
resp.resource_mappings[0].physical_resource_id. #=> String
resp.resource_mappings[0].physical_resource_id.aws_region #=> String
resp.resource_mappings[0].physical_resource_id.identifier #=> String
resp.resource_mappings[0].physical_resource_id.type #=> String, one of "Arn", "Native"
resp.resource_mappings[0].resource_group_name #=> String
resp.resource_mappings[0].resource_name #=> String
resp.resource_mappings[0].terraform_source_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :resource_mappings (required, Array<Types::ResourceMapping>)

    Mappings used to map logical resources from the template to physical resources. You can use the mapping type CFN_STACK if the application template uses a logical stack name. Or you can map individual resources by using the mapping type RESOURCE. We recommend using the mapping type CFN_STACK if the application is backed by a CloudFormation stack.

Returns:

See Also:



581
582
583
584
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 581

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

#batch_update_recommendation_status(params = {}) ⇒ Types::BatchUpdateRecommendationStatusResponse

Enables you to include or exclude one or more operational recommendations.

Examples:

Request syntax with placeholder values


resp = client.batch_update_recommendation_status({
  app_arn: "Arn", # required
  request_entries: [ # required
    {
      entry_id: "String255", # required
      exclude_reason: "AlreadyImplemented", # accepts AlreadyImplemented, NotRelevant, ComplexityOfImplementation
      excluded: false, # required
      item: { # required
        resource_id: "String500",
        target_account_id: "CustomerId",
        target_region: "AwsRegion",
      },
      reference_id: "SpecReferenceId", # required
    },
  ],
})

Response structure


resp.app_arn #=> String
resp.failed_entries #=> Array
resp.failed_entries[0].entry_id #=> String
resp.failed_entries[0].error_message #=> String
resp.successful_entries #=> Array
resp.successful_entries[0].entry_id #=> String
resp.successful_entries[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
resp.successful_entries[0].excluded #=> Boolean
resp.successful_entries[0].item.resource_id #=> String
resp.successful_entries[0].item. #=> String
resp.successful_entries[0].item.target_region #=> String
resp.successful_entries[0].reference_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :request_entries (required, Array<Types::UpdateRecommendationStatusRequestEntry>)

    Defines the list of operational recommendations that need to be included or excluded.

Returns:

See Also:



648
649
650
651
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 648

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

#create_app(params = {}) ⇒ Types::CreateAppResponse

Creates an Resilience Hub application. An Resilience Hub application is a collection of Amazon Web Services resources structured to prevent and recover Amazon Web Services application disruptions. To describe a Resilience Hub application, you provide an application name, resources from one or more CloudFormation stacks, Resource Groups, Terraform state files, AppRegistry applications, and an appropriate resiliency policy. In addition, you can also add resources that are located on Amazon Elastic Kubernetes Service (Amazon EKS) clusters as optional resources. For more information about the number of resources supported per application, see Service quotas.

After you create an Resilience Hub application, you publish it so that you can run a resiliency assessment on it. You can then use recommendations from the assessment to improve resiliency by running another assessment, comparing results, and then iterating the process until you achieve your goals for recovery time objective (RTO) and recovery point objective (RPO).

Examples:

Request syntax with placeholder values


resp = client.create_app({
  assessment_schedule: "Disabled", # accepts Disabled, Daily
  client_token: "ClientToken",
  description: "EntityDescription",
  event_subscriptions: [
    {
      event_type: "ScheduledAssessmentFailure", # required, accepts ScheduledAssessmentFailure, DriftDetected
      name: "String255", # required
      sns_topic_arn: "Arn",
    },
  ],
  name: "EntityName", # required
  permission_model: {
    cross_account_role_arns: ["IamRoleArn"],
    invoker_role_name: "IamRoleName",
    type: "LegacyIAMUser", # required, accepts LegacyIAMUser, RoleBased
  },
  policy_arn: "Arn",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.app.app_arn #=> String
resp.app.assessment_schedule #=> String, one of "Disabled", "Daily"
resp.app.compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotAssessed", "ChangesDetected", "NotApplicable", "MissingPolicy"
resp.app.creation_time #=> Time
resp.app.description #=> String
resp.app.drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.app.event_subscriptions #=> Array
resp.app.event_subscriptions[0].event_type #=> String, one of "ScheduledAssessmentFailure", "DriftDetected"
resp.app.event_subscriptions[0].name #=> String
resp.app.event_subscriptions[0].sns_topic_arn #=> String
resp.app.last_app_compliance_evaluation_time #=> Time
resp.app.last_drift_evaluation_time #=> Time
resp.app.last_resiliency_score_evaluation_time #=> Time
resp.app.name #=> String
resp.app.permission_model. #=> Array
resp.app.permission_model.[0] #=> String
resp.app.permission_model.invoker_role_name #=> String
resp.app.permission_model.type #=> String, one of "LegacyIAMUser", "RoleBased"
resp.app.policy_arn #=> String
resp.app.resiliency_score #=> Float
resp.app.rpo_in_secs #=> Integer
resp.app.rto_in_secs #=> Integer
resp.app.status #=> String, one of "Active", "Deleting"
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_schedule (String)

    Assessment execution schedule with 'Daily' or 'Disabled' values.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :description (String)

    The optional description for an app.

  • :event_subscriptions (Array<Types::EventSubscription>)

    The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports only Drift detected and Scheduled assessment failure events notification.

  • :name (required, String)

    Name of the application.

  • :permission_model (Types::PermissionModel)

    Defines the roles and credentials that Resilience Hub would use while creating the application, importing its resources, and running an assessment.

  • :policy_arn (String)

    Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :tags (Hash<String,String>)

    Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

Returns:

See Also:



778
779
780
781
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 778

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

#create_app_version_app_component(params = {}) ⇒ Types::CreateAppVersionAppComponentResponse

Creates a new Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Examples:

Request syntax with placeholder values


resp = client.create_app_version_app_component({
  additional_info: {
    "String128WithoutWhitespace" => ["String1024"],
  },
  app_arn: "Arn", # required
  client_token: "ClientToken",
  id: "String255",
  name: "String255", # required
  type: "String255", # required
})

Response structure


resp.app_arn #=> String
resp.app_component.additional_info #=> Hash
resp.app_component.additional_info["String128WithoutWhitespace"] #=> Array
resp.app_component.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_component.id #=> String
resp.app_component.name #=> String
resp.app_component.type #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :additional_info (Hash<String,Array>)

    Currently, there is no supported additional information for Application Components.

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :id (String)

    Identifier of the Application Component.

  • :name (required, String)

    Name of the Application Component.

  • :type (required, String)

    Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

Returns:

See Also:



862
863
864
865
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 862

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

#create_app_version_resource(params = {}) ⇒ Types::CreateAppVersionResourceResponse

Adds a resource to the Resilience Hub application and assigns it to the specified Application Components. If you specify a new Application Component, Resilience Hub will automatically create the Application Component.

* This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

Examples:

Request syntax with placeholder values


resp = client.create_app_version_resource({
  additional_info: {
    "String128WithoutWhitespace" => ["String1024"],
  },
  app_arn: "Arn", # required
  app_components: ["String255"], # required
  aws_account_id: "CustomerId",
  aws_region: "AwsRegion",
  client_token: "ClientToken",
  logical_resource_id: { # required
    eks_source_name: "String255",
    identifier: "String255", # required
    logical_stack_name: "String255",
    resource_group_name: "EntityName",
    terraform_source_name: "String255",
  },
  physical_resource_id: "String2048", # required
  resource_name: "EntityName",
  resource_type: "String255", # required
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.physical_resource.additional_info #=> Hash
resp.physical_resource.additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components #=> Array
resp.physical_resource.app_components[0].additional_info #=> Hash
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components[0].id #=> String
resp.physical_resource.app_components[0].name #=> String
resp.physical_resource.app_components[0].type #=> String
resp.physical_resource.excluded #=> Boolean
resp.physical_resource.logical_resource_id.eks_source_name #=> String
resp.physical_resource.logical_resource_id.identifier #=> String
resp.physical_resource.logical_resource_id.logical_stack_name #=> String
resp.physical_resource.logical_resource_id.resource_group_name #=> String
resp.physical_resource.logical_resource_id.terraform_source_name #=> String
resp.physical_resource.parent_resource_name #=> String
resp.physical_resource.physical_resource_id. #=> String
resp.physical_resource.physical_resource_id.aws_region #=> String
resp.physical_resource.physical_resource_id.identifier #=> String
resp.physical_resource.physical_resource_id.type #=> String, one of "Arn", "Native"
resp.physical_resource.resource_name #=> String
resp.physical_resource.resource_type #=> String
resp.physical_resource.source_type #=> String, one of "AppTemplate", "Discovered"

Parameters:

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

    ({})

Options Hash (params):

  • :additional_info (Hash<String,Array>)

    Currently, there is no supported additional information for resources.

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_components (required, Array<String>)

    List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

  • :aws_account_id (String)

    Amazon Web Services account that owns the physical resource.

  • :aws_region (String)

    Amazon Web Services region that owns the physical resource.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :logical_resource_id (required, Types::LogicalResourceId)

    Logical identifier of the resource.

  • :physical_resource_id (required, String)

    Physical identifier of the resource.

  • :resource_name (String)

    Name of the resource.

  • :resource_type (required, String)

    Type of resource.

Returns:

See Also:



991
992
993
994
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 991

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

#create_recommendation_template(params = {}) ⇒ Types::CreateRecommendationTemplateResponse

Creates a new recommendation template for the Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.create_recommendation_template({
  assessment_arn: "Arn", # required
  bucket_name: "EntityName",
  client_token: "ClientToken",
  format: "CfnYaml", # accepts CfnYaml, CfnJson
  name: "EntityName", # required
  recommendation_ids: ["Uuid"],
  recommendation_types: ["Alarm"], # accepts Alarm, Sop, Test
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.recommendation_template.app_arn #=> String
resp.recommendation_template.assessment_arn #=> String
resp.recommendation_template.end_time #=> Time
resp.recommendation_template.format #=> String, one of "CfnYaml", "CfnJson"
resp.recommendation_template.message #=> String
resp.recommendation_template.name #=> String
resp.recommendation_template.needs_replacements #=> Boolean
resp.recommendation_template.recommendation_ids #=> Array
resp.recommendation_template.recommendation_ids[0] #=> String
resp.recommendation_template.recommendation_template_arn #=> String
resp.recommendation_template.recommendation_types #=> Array
resp.recommendation_template.recommendation_types[0] #=> String, one of "Alarm", "Sop", "Test"
resp.recommendation_template.start_time #=> Time
resp.recommendation_template.status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.recommendation_template.tags #=> Hash
resp.recommendation_template.tags["TagKey"] #=> String
resp.recommendation_template.templates_location.bucket #=> String
resp.recommendation_template.templates_location.prefix #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :bucket_name (String)

    The name of the Amazon S3 bucket that will contain the recommendation template.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :format (String)

    The format for the recommendation template.

    CfnJson

    The template is CloudFormation JSON.

    CfnYaml

    The template is CloudFormation YAML.

  • :name (required, String)

    The name for the recommendation template.

  • :recommendation_ids (Array<String>)

    Identifiers for the recommendations used to create a recommendation template.

  • :recommendation_types (Array<String>)

    An array of strings that specify the recommendation template type or types.

    Alarm

    The template is an AlarmRecommendation template.

    Sop

    The template is a SopRecommendation template.

    Test

    The template is a TestRecommendation template.

  • :tags (Hash<String,String>)

    Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

Returns:

See Also:



1104
1105
1106
1107
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1104

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

#create_resiliency_policy(params = {}) ⇒ Types::CreateResiliencyPolicyResponse

Creates a resiliency policy for an application.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

Examples:

Request syntax with placeholder values


resp = client.create_resiliency_policy({
  client_token: "ClientToken",
  data_location_constraint: "AnyLocation", # accepts AnyLocation, SameContinent, SameCountry
  policy: { # required
    "Software" => {
      rpo_in_secs: 1, # required
      rto_in_secs: 1, # required
    },
  },
  policy_description: "EntityDescription",
  policy_name: "EntityName", # required
  tags: {
    "TagKey" => "TagValue",
  },
  tier: "MissionCritical", # required, accepts MissionCritical, Critical, Important, CoreServices, NonCritical, NotApplicable
})

Response structure


resp.policy.creation_time #=> Time
resp.policy.data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.policy.estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.policy.policy #=> Hash
resp.policy.policy["DisruptionType"].rpo_in_secs #=> Integer
resp.policy.policy["DisruptionType"].rto_in_secs #=> Integer
resp.policy.policy_arn #=> String
resp.policy.policy_description #=> String
resp.policy.policy_name #=> String
resp.policy.tags #=> Hash
resp.policy.tags["TagKey"] #=> String
resp.policy.tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"

Parameters:

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

    ({})

Options Hash (params):

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :data_location_constraint (String)

    Specifies a high-level geographical location constraint for where your resilience policy data can be stored.

  • :policy (required, Hash<String,Types::FailurePolicy>)

    The type of resiliency policy to be created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

  • :policy_description (String)

    The description for the policy.

  • :policy_name (required, String)

    The name of the policy

  • :tags (Hash<String,String>)

    Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

  • :tier (required, String)

    The tier for this resiliency policy, ranging from the highest severity (MissionCritical) to lowest (NonCritical).

Returns:

See Also:



1193
1194
1195
1196
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1193

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

#delete_app(params = {}) ⇒ Types::DeleteAppResponse

Deletes an Resilience Hub application. This is a destructive action that can't be undone.

Examples:

Request syntax with placeholder values


resp = client.delete_app({
  app_arn: "Arn", # required
  client_token: "ClientToken",
  force_delete: false,
})

Response structure


resp.app_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :force_delete (Boolean)

    A boolean option to force the deletion of an Resilience Hub application.

Returns:

See Also:



1244
1245
1246
1247
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1244

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

#delete_app_assessment(params = {}) ⇒ Types::DeleteAppAssessmentResponse

Deletes an Resilience Hub application assessment. This is a destructive action that can't be undone.

Examples:

Request syntax with placeholder values


resp = client.delete_app_assessment({
  assessment_arn: "Arn", # required
  client_token: "ClientToken",
})

Response structure


resp.assessment_arn #=> String
resp.assessment_status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

Returns:

See Also:



1292
1293
1294
1295
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1292

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

#delete_app_input_source(params = {}) ⇒ Types::DeleteAppInputSourceResponse

Deletes the input source and all of its imported resources from the Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.delete_app_input_source({
  app_arn: "Arn", # required
  client_token: "ClientToken",
  eks_source_cluster_namespace: {
    eks_cluster_arn: "Arn", # required
    namespace: "EksNamespace", # required
  },
  source_arn: "Arn",
  terraform_source: {
    s3_state_file_url: "S3Url", # required
  },
})

Response structure


resp.app_arn #=> String
resp.app_input_source.eks_source_cluster_namespace.eks_cluster_arn #=> String
resp.app_input_source.eks_source_cluster_namespace.namespace #=> String
resp.app_input_source.import_type #=> String, one of "CfnStack", "Resource", "AppRegistryApp", "ResourceGroup", "Terraform", "EKS"
resp.app_input_source.resource_count #=> Integer
resp.app_input_source.source_arn #=> String
resp.app_input_source.source_name #=> String
resp.app_input_source.terraform_source.s3_state_file_url #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :eks_source_cluster_namespace (Types::EksSourceClusterNamespace)

    The namespace on your Amazon Elastic Kubernetes Service cluster that you want to delete from the Resilience Hub application.

  • :source_arn (String)

    The Amazon Resource Name (ARN) of the imported resource you want to remove from the Resilience Hub application. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :terraform_source (Types::TerraformSource)

    The imported Terraform s3 state file you want to remove from the Resilience Hub application.

Returns:

See Also:



1372
1373
1374
1375
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1372

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

#delete_app_version_app_component(params = {}) ⇒ Types::DeleteAppVersionAppComponentResponse

Deletes an Application Component from the Resilience Hub application.

* This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • You will not be able to delete an Application Component if it has resources associated with it.

Examples:

Request syntax with placeholder values


resp = client.delete_app_version_app_component({
  app_arn: "Arn", # required
  client_token: "ClientToken",
  id: "String255", # required
})

Response structure


resp.app_arn #=> String
resp.app_component.additional_info #=> Hash
resp.app_component.additional_info["String128WithoutWhitespace"] #=> Array
resp.app_component.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_component.id #=> String
resp.app_component.name #=> String
resp.app_component.type #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :id (required, String)

    Identifier of the Application Component.

Returns:

See Also:



1440
1441
1442
1443
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1440

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

#delete_app_version_resource(params = {}) ⇒ Types::DeleteAppVersionResourceResponse

Deletes a resource from the Resilience Hub application.

* You can only delete a manually added resource. To exclude non-manually added resources, use the UpdateAppVersionResource API.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Examples:

Request syntax with placeholder values


resp = client.delete_app_version_resource({
  app_arn: "Arn", # required
  aws_account_id: "CustomerId",
  aws_region: "AwsRegion",
  client_token: "ClientToken",
  logical_resource_id: {
    eks_source_name: "String255",
    identifier: "String255", # required
    logical_stack_name: "String255",
    resource_group_name: "EntityName",
    terraform_source_name: "String255",
  },
  physical_resource_id: "String2048",
  resource_name: "EntityName",
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.physical_resource.additional_info #=> Hash
resp.physical_resource.additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components #=> Array
resp.physical_resource.app_components[0].additional_info #=> Hash
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components[0].id #=> String
resp.physical_resource.app_components[0].name #=> String
resp.physical_resource.app_components[0].type #=> String
resp.physical_resource.excluded #=> Boolean
resp.physical_resource.logical_resource_id.eks_source_name #=> String
resp.physical_resource.logical_resource_id.identifier #=> String
resp.physical_resource.logical_resource_id.logical_stack_name #=> String
resp.physical_resource.logical_resource_id.resource_group_name #=> String
resp.physical_resource.logical_resource_id.terraform_source_name #=> String
resp.physical_resource.parent_resource_name #=> String
resp.physical_resource.physical_resource_id. #=> String
resp.physical_resource.physical_resource_id.aws_region #=> String
resp.physical_resource.physical_resource_id.identifier #=> String
resp.physical_resource.physical_resource_id.type #=> String, one of "Arn", "Native"
resp.physical_resource.resource_name #=> String
resp.physical_resource.resource_type #=> String
resp.physical_resource.source_type #=> String, one of "AppTemplate", "Discovered"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :aws_account_id (String)

    Amazon Web Services account that owns the physical resource.

  • :aws_region (String)

    Amazon Web Services region that owns the physical resource.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :logical_resource_id (Types::LogicalResourceId)

    Logical identifier of the resource.

  • :physical_resource_id (String)

    Physical identifier of the resource.

  • :resource_name (String)

    Name of the resource.

Returns:

See Also:



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

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

#delete_recommendation_template(params = {}) ⇒ Types::DeleteRecommendationTemplateResponse

Deletes a recommendation template. This is a destructive action that can't be undone.

Examples:

Request syntax with placeholder values


resp = client.delete_recommendation_template({
  client_token: "ClientToken",
  recommendation_template_arn: "Arn", # required
})

Response structure


resp.recommendation_template_arn #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :recommendation_template_arn (required, String)

    The Amazon Resource Name (ARN) for a recommendation template.

Returns:

See Also:



1591
1592
1593
1594
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1591

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

#delete_resiliency_policy(params = {}) ⇒ Types::DeleteResiliencyPolicyResponse

Deletes a resiliency policy. This is a destructive action that can't be undone.

Examples:

Request syntax with placeholder values


resp = client.delete_resiliency_policy({
  client_token: "ClientToken",
  policy_arn: "Arn", # required
})

Response structure


resp.policy_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :policy_arn (required, String)

    Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



1637
1638
1639
1640
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1637

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

#describe_app(params = {}) ⇒ Types::DescribeAppResponse

Describes an Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.describe_app({
  app_arn: "Arn", # required
})

Response structure


resp.app.app_arn #=> String
resp.app.assessment_schedule #=> String, one of "Disabled", "Daily"
resp.app.compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotAssessed", "ChangesDetected", "NotApplicable", "MissingPolicy"
resp.app.creation_time #=> Time
resp.app.description #=> String
resp.app.drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.app.event_subscriptions #=> Array
resp.app.event_subscriptions[0].event_type #=> String, one of "ScheduledAssessmentFailure", "DriftDetected"
resp.app.event_subscriptions[0].name #=> String
resp.app.event_subscriptions[0].sns_topic_arn #=> String
resp.app.last_app_compliance_evaluation_time #=> Time
resp.app.last_drift_evaluation_time #=> Time
resp.app.last_resiliency_score_evaluation_time #=> Time
resp.app.name #=> String
resp.app.permission_model. #=> Array
resp.app.permission_model.[0] #=> String
resp.app.permission_model.invoker_role_name #=> String
resp.app.permission_model.type #=> String, one of "LegacyIAMUser", "RoleBased"
resp.app.policy_arn #=> String
resp.app.resiliency_score #=> Float
resp.app.rpo_in_secs #=> Integer
resp.app.rto_in_secs #=> Integer
resp.app.status #=> String, one of "Active", "Deleting"
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



1697
1698
1699
1700
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1697

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

#describe_app_assessment(params = {}) ⇒ Types::DescribeAppAssessmentResponse

Describes an assessment for an Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.describe_app_assessment({
  assessment_arn: "Arn", # required
})

Response structure


resp.assessment.app_arn #=> String
resp.assessment.app_version #=> String
resp.assessment.assessment_arn #=> String
resp.assessment.assessment_name #=> String
resp.assessment.assessment_status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.assessment.compliance #=> Hash
resp.assessment.compliance["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.assessment.compliance["DisruptionType"].current_rpo_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].current_rto_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].message #=> String
resp.assessment.compliance["DisruptionType"].rpo_description #=> String
resp.assessment.compliance["DisruptionType"].rpo_reference_id #=> String
resp.assessment.compliance["DisruptionType"].rto_description #=> String
resp.assessment.compliance["DisruptionType"].rto_reference_id #=> String
resp.assessment.compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.assessment.cost.amount #=> Float
resp.assessment.cost.currency #=> String
resp.assessment.cost.frequency #=> String, one of "Hourly", "Daily", "Monthly", "Yearly"
resp.assessment.drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.assessment.end_time #=> Time
resp.assessment.invoker #=> String, one of "User", "System"
resp.assessment.message #=> String
resp.assessment.policy.creation_time #=> Time
resp.assessment.policy.data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.assessment.policy.estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.assessment.policy.policy #=> Hash
resp.assessment.policy.policy["DisruptionType"].rpo_in_secs #=> Integer
resp.assessment.policy.policy["DisruptionType"].rto_in_secs #=> Integer
resp.assessment.policy.policy_arn #=> String
resp.assessment.policy.policy_description #=> String
resp.assessment.policy.policy_name #=> String
resp.assessment.policy.tags #=> Hash
resp.assessment.policy.tags["TagKey"] #=> String
resp.assessment.policy.tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"
resp.assessment.resiliency_score.component_score #=> Hash
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].excluded_count #=> Integer
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].outstanding_count #=> Integer
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].possible_score #=> Float
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].score #=> Float
resp.assessment.resiliency_score.disruption_score #=> Hash
resp.assessment.resiliency_score.disruption_score["DisruptionType"] #=> Float
resp.assessment.resiliency_score.score #=> Float
resp.assessment.resource_errors_details.has_more_errors #=> Boolean
resp.assessment.resource_errors_details.resource_errors #=> Array
resp.assessment.resource_errors_details.resource_errors[0].logical_resource_id #=> String
resp.assessment.resource_errors_details.resource_errors[0].physical_resource_id #=> String
resp.assessment.resource_errors_details.resource_errors[0].reason #=> String
resp.assessment.start_time #=> Time
resp.assessment.summary.risk_recommendations #=> Array
resp.assessment.summary.risk_recommendations[0].app_components #=> Array
resp.assessment.summary.risk_recommendations[0].app_components[0] #=> String
resp.assessment.summary.risk_recommendations[0].recommendation #=> String
resp.assessment.summary.risk_recommendations[0].risk #=> String
resp.assessment.summary.summary #=> String
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String
resp.assessment.version_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



1791
1792
1793
1794
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1791

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

#describe_app_version(params = {}) ⇒ Types::DescribeAppVersionResponse

Describes the Resilience Hub application version.

Examples:

Request syntax with placeholder values


resp = client.describe_app_version({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
})

Response structure


resp.additional_info #=> Hash
resp.additional_info["String128WithoutWhitespace"] #=> Array
resp.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_arn #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    Resilience Hub application version.

Returns:

See Also:



1837
1838
1839
1840
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1837

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

#describe_app_version_app_component(params = {}) ⇒ Types::DescribeAppVersionAppComponentResponse

Describes an Application Component in the Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.describe_app_version_app_component({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  id: "String255", # required
})

Response structure


resp.app_arn #=> String
resp.app_component.additional_info #=> Hash
resp.app_component.additional_info["String128WithoutWhitespace"] #=> Array
resp.app_component.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_component.id #=> String
resp.app_component.name #=> String
resp.app_component.type #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    Resilience Hub application version.

  • :id (required, String)

    Identifier of the Application Component.

Returns:

See Also:



1890
1891
1892
1893
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1890

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

#describe_app_version_resource(params = {}) ⇒ Types::DescribeAppVersionResourceResponse

Describes a resource of the Resilience Hub application.

This API accepts only one of the following parameters to describe the resource:

  • resourceName

  • logicalResourceId

  • physicalResourceId (Along with physicalResourceId, you can also provide awsAccountId, and awsRegion)

Examples:

Request syntax with placeholder values


resp = client.describe_app_version_resource({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  aws_account_id: "CustomerId",
  aws_region: "AwsRegion",
  logical_resource_id: {
    eks_source_name: "String255",
    identifier: "String255", # required
    logical_stack_name: "String255",
    resource_group_name: "EntityName",
    terraform_source_name: "String255",
  },
  physical_resource_id: "String2048",
  resource_name: "EntityName",
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.physical_resource.additional_info #=> Hash
resp.physical_resource.additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components #=> Array
resp.physical_resource.app_components[0].additional_info #=> Hash
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components[0].id #=> String
resp.physical_resource.app_components[0].name #=> String
resp.physical_resource.app_components[0].type #=> String
resp.physical_resource.excluded #=> Boolean
resp.physical_resource.logical_resource_id.eks_source_name #=> String
resp.physical_resource.logical_resource_id.identifier #=> String
resp.physical_resource.logical_resource_id.logical_stack_name #=> String
resp.physical_resource.logical_resource_id.resource_group_name #=> String
resp.physical_resource.logical_resource_id.terraform_source_name #=> String
resp.physical_resource.parent_resource_name #=> String
resp.physical_resource.physical_resource_id. #=> String
resp.physical_resource.physical_resource_id.aws_region #=> String
resp.physical_resource.physical_resource_id.identifier #=> String
resp.physical_resource.physical_resource_id.type #=> String, one of "Arn", "Native"
resp.physical_resource.resource_name #=> String
resp.physical_resource.resource_type #=> String
resp.physical_resource.source_type #=> String, one of "AppTemplate", "Discovered"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    Resilience Hub application version.

  • :aws_account_id (String)

    Amazon Web Services account that owns the physical resource.

  • :aws_region (String)

    Amazon Web Services region that owns the physical resource.

  • :logical_resource_id (Types::LogicalResourceId)

    Logical identifier of the resource.

  • :physical_resource_id (String)

    Physical identifier of the resource.

  • :resource_name (String)

    Name of the resource.

Returns:

See Also:



1995
1996
1997
1998
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 1995

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

#describe_app_version_resources_resolution_status(params = {}) ⇒ Types::DescribeAppVersionResourcesResolutionStatusResponse

Returns the resolution status for the specified resolution identifier for an application version. If resolutionId is not specified, the current resolution status is returned.

Examples:

Request syntax with placeholder values


resp = client.describe_app_version_resources_resolution_status({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  resolution_id: "String255",
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.error_message #=> String
resp.resolution_id #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

  • :resolution_id (String)

    The identifier for a specific resolution.

Returns:

See Also:



2049
2050
2051
2052
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2049

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

#describe_app_version_template(params = {}) ⇒ Types::DescribeAppVersionTemplateResponse

Describes details about an Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.describe_app_version_template({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
})

Response structure


resp.app_arn #=> String
resp.app_template_body #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

Returns:

See Also:



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

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

#describe_draft_app_version_resources_import_status(params = {}) ⇒ Types::DescribeDraftAppVersionResourcesImportStatusResponse

Describes the status of importing resources to an application version.

If you get a 404 error with ResourceImportStatusNotFoundAppMetadataException, you must call importResourcesToDraftAppVersion after creating the application and before calling describeDraftAppVersionResourcesImportStatus to obtain the status.

Examples:

Request syntax with placeholder values


resp = client.describe_draft_app_version_resources_import_status({
  app_arn: "Arn", # required
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.error_message #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.status_change_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



2145
2146
2147
2148
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2145

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

#describe_resiliency_policy(params = {}) ⇒ Types::DescribeResiliencyPolicyResponse

Describes a specified resiliency policy for an Resilience Hub application. The returned policy object includes creation time, data location constraints, the Amazon Resource Name (ARN) for the policy, tags, tier, and more.

Examples:

Request syntax with placeholder values


resp = client.describe_resiliency_policy({
  policy_arn: "Arn", # required
})

Response structure


resp.policy.creation_time #=> Time
resp.policy.data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.policy.estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.policy.policy #=> Hash
resp.policy.policy["DisruptionType"].rpo_in_secs #=> Integer
resp.policy.policy["DisruptionType"].rto_in_secs #=> Integer
resp.policy.policy_arn #=> String
resp.policy.policy_description #=> String
resp.policy.policy_name #=> String
resp.policy.tags #=> Hash
resp.policy.tags["TagKey"] #=> String
resp.policy.tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"

Parameters:

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

    ({})

Options Hash (params):

  • :policy_arn (required, String)

    Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



2195
2196
2197
2198
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2195

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

#describe_resource_grouping_recommendation_task(params = {}) ⇒ Types::DescribeResourceGroupingRecommendationTaskResponse

Describes the resource grouping recommendation tasks run by Resilience Hub for your application.

Examples:

Request syntax with placeholder values


resp = client.describe_resource_grouping_recommendation_task({
  app_arn: "Arn", # required
  grouping_id: "String255",
})

Response structure


resp.error_message #=> String
resp.grouping_id #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :grouping_id (String)

    Indicates the identifier of the grouping recommendation task.

Returns:

See Also:



2240
2241
2242
2243
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2240

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

#import_resources_to_draft_app_version(params = {}) ⇒ Types::ImportResourcesToDraftAppVersionResponse

Imports resources to Resilience Hub application draft version from different input sources. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.import_resources_to_draft_app_version({
  app_arn: "Arn", # required
  eks_sources: [
    {
      eks_cluster_arn: "Arn", # required
      namespaces: ["EksNamespace"], # required
    },
  ],
  import_strategy: "AddOnly", # accepts AddOnly, ReplaceAll
  source_arns: ["Arn"],
  terraform_sources: [
    {
      s3_state_file_url: "S3Url", # required
    },
  ],
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.eks_sources #=> Array
resp.eks_sources[0].eks_cluster_arn #=> String
resp.eks_sources[0].namespaces #=> Array
resp.eks_sources[0].namespaces[0] #=> String
resp.source_arns #=> Array
resp.source_arns[0] #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.terraform_sources #=> Array
resp.terraform_sources[0].s3_state_file_url #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :eks_sources (Array<Types::EksSource>)

    The input sources of the Amazon Elastic Kubernetes Service resources you need to import.

  • :import_strategy (String)

    The import strategy you would like to set to import resources into Resilience Hub application.

  • :source_arns (Array<String>)

    The Amazon Resource Names (ARNs) for the resources.

  • :terraform_sources (Array<Types::TerraformSource>)

    A list of terraform file s3 URLs you need to import.

Returns:

See Also:



2325
2326
2327
2328
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2325

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

#list_alarm_recommendations(params = {}) ⇒ Types::ListAlarmRecommendationsResponse

Lists the alarm recommendations for an Resilience Hub application.

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_alarm_recommendations({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.alarm_recommendations #=> Array
resp.alarm_recommendations[0].app_component_name #=> String
resp.alarm_recommendations[0].app_component_names #=> Array
resp.alarm_recommendations[0].app_component_names[0] #=> String
resp.alarm_recommendations[0].description #=> String
resp.alarm_recommendations[0].items #=> Array
resp.alarm_recommendations[0].items[0].already_implemented #=> Boolean
resp.alarm_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
resp.alarm_recommendations[0].items[0].excluded #=> Boolean
resp.alarm_recommendations[0].items[0].resource_id #=> String
resp.alarm_recommendations[0].items[0]. #=> String
resp.alarm_recommendations[0].items[0].target_region #=> String
resp.alarm_recommendations[0].name #=> String
resp.alarm_recommendations[0].prerequisite #=> String
resp.alarm_recommendations[0].recommendation_id #=> String
resp.alarm_recommendations[0].recommendation_status #=> String, one of "Implemented", "Inactive", "NotImplemented", "Excluded"
resp.alarm_recommendations[0].reference_id #=> String
resp.alarm_recommendations[0].type #=> String, one of "Metric", "Composite", "Canary", "Logs", "Event"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2393
2394
2395
2396
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2393

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

#list_app_assessment_compliance_drifts(params = {}) ⇒ Types::ListAppAssessmentComplianceDriftsResponse

List of compliance drifts that were detected while running an assessment.

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_app_assessment_compliance_drifts({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.compliance_drifts #=> Array
resp.compliance_drifts[0].actual_reference_id #=> String
resp.compliance_drifts[0].actual_value #=> Hash
resp.compliance_drifts[0].actual_value["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.compliance_drifts[0].actual_value["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.compliance_drifts[0].actual_value["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.compliance_drifts[0].actual_value["DisruptionType"].current_rpo_in_secs #=> Integer
resp.compliance_drifts[0].actual_value["DisruptionType"].current_rto_in_secs #=> Integer
resp.compliance_drifts[0].actual_value["DisruptionType"].message #=> String
resp.compliance_drifts[0].actual_value["DisruptionType"].rpo_description #=> String
resp.compliance_drifts[0].actual_value["DisruptionType"].rpo_reference_id #=> String
resp.compliance_drifts[0].actual_value["DisruptionType"].rto_description #=> String
resp.compliance_drifts[0].actual_value["DisruptionType"].rto_reference_id #=> String
resp.compliance_drifts[0].app_id #=> String
resp.compliance_drifts[0].app_version #=> String
resp.compliance_drifts[0].diff_type #=> String, one of "NotEqual", "Added", "Removed"
resp.compliance_drifts[0].drift_type #=> String, one of "ApplicationCompliance", "AppComponentResiliencyComplianceStatus"
resp.compliance_drifts[0].entity_id #=> String
resp.compliance_drifts[0].entity_type #=> String
resp.compliance_drifts[0].expected_reference_id #=> String
resp.compliance_drifts[0].expected_value #=> Hash
resp.compliance_drifts[0].expected_value["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.compliance_drifts[0].expected_value["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.compliance_drifts[0].expected_value["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.compliance_drifts[0].expected_value["DisruptionType"].current_rpo_in_secs #=> Integer
resp.compliance_drifts[0].expected_value["DisruptionType"].current_rto_in_secs #=> Integer
resp.compliance_drifts[0].expected_value["DisruptionType"].message #=> String
resp.compliance_drifts[0].expected_value["DisruptionType"].rpo_description #=> String
resp.compliance_drifts[0].expected_value["DisruptionType"].rpo_reference_id #=> String
resp.compliance_drifts[0].expected_value["DisruptionType"].rto_description #=> String
resp.compliance_drifts[0].expected_value["DisruptionType"].rto_reference_id #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Indicates the maximum number of compliance drifts requested.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2473
2474
2475
2476
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2473

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

#list_app_assessment_resource_drifts(params = {}) ⇒ Types::ListAppAssessmentResourceDriftsResponse

Indicates the list of resource drifts that were detected while running an assessment.

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_app_assessment_resource_drifts({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.resource_drifts #=> Array
resp.resource_drifts[0].app_arn #=> String
resp.resource_drifts[0].app_version #=> String
resp.resource_drifts[0].diff_type #=> String, one of "NotEqual", "Added", "Removed"
resp.resource_drifts[0].reference_id #=> String
resp.resource_drifts[0].resource_identifier.logical_resource_id.eks_source_name #=> String
resp.resource_drifts[0].resource_identifier.logical_resource_id.identifier #=> String
resp.resource_drifts[0].resource_identifier.logical_resource_id.logical_stack_name #=> String
resp.resource_drifts[0].resource_identifier.logical_resource_id.resource_group_name #=> String
resp.resource_drifts[0].resource_identifier.logical_resource_id.terraform_source_name #=> String
resp.resource_drifts[0].resource_identifier.resource_type #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Indicates the maximum number of drift results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2536
2537
2538
2539
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2536

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

#list_app_assessments(params = {}) ⇒ Types::ListAppAssessmentsResponse

Lists the assessments for an Resilience Hub application. You can use request parameters to refine the results for the response object.

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_app_assessments({
  app_arn: "Arn",
  assessment_name: "EntityName",
  assessment_status: ["Pending"], # accepts Pending, InProgress, Failed, Success
  compliance_status: "PolicyBreached", # accepts PolicyBreached, PolicyMet, NotApplicable, MissingPolicy
  invoker: "User", # accepts User, System
  max_results: 1,
  next_token: "NextToken",
  reverse_order: false,
})

Response structure


resp.assessment_summaries #=> Array
resp.assessment_summaries[0].app_arn #=> String
resp.assessment_summaries[0].app_version #=> String
resp.assessment_summaries[0].assessment_arn #=> String
resp.assessment_summaries[0].assessment_name #=> String
resp.assessment_summaries[0].assessment_status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.assessment_summaries[0].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.assessment_summaries[0].cost.amount #=> Float
resp.assessment_summaries[0].cost.currency #=> String
resp.assessment_summaries[0].cost.frequency #=> String, one of "Hourly", "Daily", "Monthly", "Yearly"
resp.assessment_summaries[0].drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.assessment_summaries[0].end_time #=> Time
resp.assessment_summaries[0].invoker #=> String, one of "User", "System"
resp.assessment_summaries[0].message #=> String
resp.assessment_summaries[0].resiliency_score #=> Float
resp.assessment_summaries[0].start_time #=> Time
resp.assessment_summaries[0].version_name #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :assessment_name (String)

    The name for the assessment.

  • :assessment_status (Array<String>)

    The current status of the assessment for the resiliency policy.

  • :compliance_status (String)

    The current status of compliance for the resiliency policy.

  • :invoker (String)

    Specifies the entity that invoked a specific assessment, either a User or the System.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :reverse_order (Boolean)

    The default is to sort by ascending startTime. To sort by descending startTime, set reverseOrder to true.

Returns:

See Also:



2626
2627
2628
2629
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2626

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

#list_app_component_compliances(params = {}) ⇒ Types::ListAppComponentCompliancesResponse

Lists the compliances for an Resilience Hub Application Component.

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_app_component_compliances({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.component_compliances #=> Array
resp.component_compliances[0].app_component_name #=> String
resp.component_compliances[0].compliance #=> Hash
resp.component_compliances[0].compliance["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.component_compliances[0].compliance["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.component_compliances[0].compliance["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.component_compliances[0].compliance["DisruptionType"].current_rpo_in_secs #=> Integer
resp.component_compliances[0].compliance["DisruptionType"].current_rto_in_secs #=> Integer
resp.component_compliances[0].compliance["DisruptionType"].message #=> String
resp.component_compliances[0].compliance["DisruptionType"].rpo_description #=> String
resp.component_compliances[0].compliance["DisruptionType"].rpo_reference_id #=> String
resp.component_compliances[0].compliance["DisruptionType"].rto_description #=> String
resp.component_compliances[0].compliance["DisruptionType"].rto_reference_id #=> String
resp.component_compliances[0].cost.amount #=> Float
resp.component_compliances[0].cost.currency #=> String
resp.component_compliances[0].cost.frequency #=> String, one of "Hourly", "Daily", "Monthly", "Yearly"
resp.component_compliances[0].message #=> String
resp.component_compliances[0].resiliency_score.component_score #=> Hash
resp.component_compliances[0].resiliency_score.component_score["ResiliencyScoreType"].excluded_count #=> Integer
resp.component_compliances[0].resiliency_score.component_score["ResiliencyScoreType"].outstanding_count #=> Integer
resp.component_compliances[0].resiliency_score.component_score["ResiliencyScoreType"].possible_score #=> Float
resp.component_compliances[0].resiliency_score.component_score["ResiliencyScoreType"].score #=> Float
resp.component_compliances[0].resiliency_score.disruption_score #=> Hash
resp.component_compliances[0].resiliency_score.disruption_score["DisruptionType"] #=> Float
resp.component_compliances[0].resiliency_score.score #=> Float
resp.component_compliances[0].status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2702
2703
2704
2705
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2702

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

#list_app_component_recommendations(params = {}) ⇒ Types::ListAppComponentRecommendationsResponse

Lists the recommendations for an Resilience Hub Application Component.

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_app_component_recommendations({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.component_recommendations #=> Array
resp.component_recommendations[0].app_component_name #=> String
resp.component_recommendations[0].config_recommendations #=> Array
resp.component_recommendations[0].config_recommendations[0].app_component_name #=> String
resp.component_recommendations[0].config_recommendations[0].compliance #=> Hash
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].current_rpo_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].current_rto_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].message #=> String
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].rpo_description #=> String
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].rpo_reference_id #=> String
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].rto_description #=> String
resp.component_recommendations[0].config_recommendations[0].compliance["DisruptionType"].rto_reference_id #=> String
resp.component_recommendations[0].config_recommendations[0].cost.amount #=> Float
resp.component_recommendations[0].config_recommendations[0].cost.currency #=> String
resp.component_recommendations[0].config_recommendations[0].cost.frequency #=> String, one of "Hourly", "Daily", "Monthly", "Yearly"
resp.component_recommendations[0].config_recommendations[0].description #=> String
resp.component_recommendations[0].config_recommendations[0].ha_architecture #=> String, one of "MultiSite", "WarmStandby", "PilotLight", "BackupAndRestore", "NoRecoveryPlan"
resp.component_recommendations[0].config_recommendations[0].name #=> String
resp.component_recommendations[0].config_recommendations[0].optimization_type #=> String, one of "LeastCost", "LeastChange", "BestAZRecovery", "LeastErrors", "BestAttainable", "BestRegionRecovery"
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance #=> Hash
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance["DisruptionType"].expected_compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance["DisruptionType"].expected_rpo_description #=> String
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance["DisruptionType"].expected_rpo_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance["DisruptionType"].expected_rto_description #=> String
resp.component_recommendations[0].config_recommendations[0].recommendation_compliance["DisruptionType"].expected_rto_in_secs #=> Integer
resp.component_recommendations[0].config_recommendations[0].reference_id #=> String
resp.component_recommendations[0].config_recommendations[0].suggested_changes #=> Array
resp.component_recommendations[0].config_recommendations[0].suggested_changes[0] #=> String
resp.component_recommendations[0].recommendation_status #=> String, one of "BreachedUnattainable", "BreachedCanMeet", "MetCanImprove", "MissingPolicy"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2784
2785
2786
2787
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2784

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

#list_app_input_sources(params = {}) ⇒ Types::ListAppInputSourcesResponse

Lists all the input sources of the Resilience Hub application. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application.

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_app_input_sources({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.app_input_sources #=> Array
resp.app_input_sources[0].eks_source_cluster_namespace.eks_cluster_arn #=> String
resp.app_input_sources[0].eks_source_cluster_namespace.namespace #=> String
resp.app_input_sources[0].import_type #=> String, one of "CfnStack", "Resource", "AppRegistryApp", "ResourceGroup", "Terraform", "EKS"
resp.app_input_sources[0].resource_count #=> Integer
resp.app_input_sources[0].source_arn #=> String
resp.app_input_sources[0].source_name #=> String
resp.app_input_sources[0].terraform_source.s3_state_file_url #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    Resilience Hub application version.

  • :max_results (Integer)

    Maximum number of input sources to be displayed per Resilience Hub application.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2852
2853
2854
2855
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2852

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

#list_app_version_app_components(params = {}) ⇒ Types::ListAppVersionAppComponentsResponse

Lists all the Application Components in the Resilience Hub application.

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_app_version_app_components({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.app_arn #=> String
resp.app_components #=> Array
resp.app_components[0].additional_info #=> Hash
resp.app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_components[0].id #=> String
resp.app_components[0].name #=> String
resp.app_components[0].type #=> String
resp.app_version #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    Version of the Application Component.

  • :max_results (Integer)

    Maximum number of Application Components to be displayed per Resilience Hub application version.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2917
2918
2919
2920
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2917

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

#list_app_version_resource_mappings(params = {}) ⇒ Types::ListAppVersionResourceMappingsResponse

Lists how the resources in an application version are mapped/sourced from. Mappings can be physical resource identifiers, CloudFormation stacks, resource-groups, or an application registry app.

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_app_version_resource_mappings({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.resource_mappings #=> Array
resp.resource_mappings[0].app_registry_app_name #=> String
resp.resource_mappings[0].eks_source_name #=> String
resp.resource_mappings[0].logical_stack_name #=> String
resp.resource_mappings[0].mapping_type #=> String, one of "CfnStack", "Resource", "AppRegistryApp", "ResourceGroup", "Terraform", "EKS"
resp.resource_mappings[0].physical_resource_id. #=> String
resp.resource_mappings[0].physical_resource_id.aws_region #=> String
resp.resource_mappings[0].physical_resource_id.identifier #=> String
resp.resource_mappings[0].physical_resource_id.type #=> String, one of "Arn", "Native"
resp.resource_mappings[0].resource_group_name #=> String
resp.resource_mappings[0].resource_name #=> String
resp.resource_mappings[0].terraform_source_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



2985
2986
2987
2988
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 2985

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

#list_app_version_resources(params = {}) ⇒ Types::ListAppVersionResourcesResponse

Lists all the resources in an Resilience Hub application.

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_app_version_resources({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  max_results: 1,
  next_token: "NextToken",
  resolution_id: "String255",
})

Response structure


resp.next_token #=> String
resp.physical_resources #=> Array
resp.physical_resources[0].additional_info #=> Hash
resp.physical_resources[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resources[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resources[0].app_components #=> Array
resp.physical_resources[0].app_components[0].additional_info #=> Hash
resp.physical_resources[0].app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resources[0].app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resources[0].app_components[0].id #=> String
resp.physical_resources[0].app_components[0].name #=> String
resp.physical_resources[0].app_components[0].type #=> String
resp.physical_resources[0].excluded #=> Boolean
resp.physical_resources[0].logical_resource_id.eks_source_name #=> String
resp.physical_resources[0].logical_resource_id.identifier #=> String
resp.physical_resources[0].logical_resource_id.logical_stack_name #=> String
resp.physical_resources[0].logical_resource_id.resource_group_name #=> String
resp.physical_resources[0].logical_resource_id.terraform_source_name #=> String
resp.physical_resources[0].parent_resource_name #=> String
resp.physical_resources[0].physical_resource_id. #=> String
resp.physical_resources[0].physical_resource_id.aws_region #=> String
resp.physical_resources[0].physical_resource_id.identifier #=> String
resp.physical_resources[0].physical_resource_id.type #=> String, one of "Arn", "Native"
resp.physical_resources[0].resource_name #=> String
resp.physical_resources[0].resource_type #=> String
resp.physical_resources[0].source_type #=> String, one of "AppTemplate", "Discovered"
resp.resolution_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :resolution_id (String)

    The identifier for a specific resolution.

Returns:

See Also:



3070
3071
3072
3073
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3070

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

#list_app_versions(params = {}) ⇒ Types::ListAppVersionsResponse

Lists the different versions for the Resilience Hub applications.

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_app_versions({
  app_arn: "Arn", # required
  end_time: Time.now,
  max_results: 1,
  next_token: "NextToken",
  start_time: Time.now,
})

Response structure


resp.app_versions #=> Array
resp.app_versions[0].app_version #=> String
resp.app_versions[0].creation_time #=> Time
resp.app_versions[0].identifier #=> Integer
resp.app_versions[0].version_name #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :end_time (Time, DateTime, Date, Integer, String)

    Upper limit of the time range to filter the application versions.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :start_time (Time, DateTime, Date, Integer, String)

    Lower limit of the time range to filter the application versions.

Returns:

See Also:



3133
3134
3135
3136
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3133

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

#list_apps(params = {}) ⇒ Types::ListAppsResponse

Lists your Resilience Hub applications.

You can filter applications using only one filter at a time or without using any filter. If you try to filter applications using multiple filters, you will get the following error:

An error occurred (ValidationException) when calling the ListApps operation: Only one filter is supported for this operation.

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_apps({
  app_arn: "Arn",
  from_last_assessment_time: Time.now,
  max_results: 1,
  name: "EntityName",
  next_token: "NextToken",
  reverse_order: false,
  to_last_assessment_time: Time.now,
})

Response structure


resp.app_summaries #=> Array
resp.app_summaries[0].app_arn #=> String
resp.app_summaries[0].assessment_schedule #=> String, one of "Disabled", "Daily"
resp.app_summaries[0].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotAssessed", "ChangesDetected", "NotApplicable", "MissingPolicy"
resp.app_summaries[0].creation_time #=> Time
resp.app_summaries[0].description #=> String
resp.app_summaries[0].drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.app_summaries[0].last_app_compliance_evaluation_time #=> Time
resp.app_summaries[0].name #=> String
resp.app_summaries[0].resiliency_score #=> Float
resp.app_summaries[0].rpo_in_secs #=> Integer
resp.app_summaries[0].rto_in_secs #=> Integer
resp.app_summaries[0].status #=> String, one of "Active", "Deleting"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :from_last_assessment_time (Time, DateTime, Date, Integer, String)

    Indicates the lower limit of the range that is used to filter applications based on their last assessment times.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :name (String)

    The name for the one of the listed applications.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :reverse_order (Boolean)

    The application list is sorted based on the values of lastAppComplianceEvaluationTime field. By default, application list is sorted in ascending order. To sort the application list in descending order, set this field to True.

  • :to_last_assessment_time (Time, DateTime, Date, Integer, String)

    Indicates the upper limit of the range that is used to filter the applications based on their last assessment times.

Returns:

See Also:



3226
3227
3228
3229
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3226

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

#list_recommendation_templates(params = {}) ⇒ Types::ListRecommendationTemplatesResponse

Lists the recommendation templates for the Resilience Hub applications.

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_recommendation_templates({
  assessment_arn: "Arn",
  max_results: 1,
  name: "EntityName",
  next_token: "NextToken",
  recommendation_template_arn: "Arn",
  reverse_order: false,
  status: ["Pending"], # accepts Pending, InProgress, Failed, Success
})

Response structure


resp.next_token #=> String
resp.recommendation_templates #=> Array
resp.recommendation_templates[0].app_arn #=> String
resp.recommendation_templates[0].assessment_arn #=> String
resp.recommendation_templates[0].end_time #=> Time
resp.recommendation_templates[0].format #=> String, one of "CfnYaml", "CfnJson"
resp.recommendation_templates[0].message #=> String
resp.recommendation_templates[0].name #=> String
resp.recommendation_templates[0].needs_replacements #=> Boolean
resp.recommendation_templates[0].recommendation_ids #=> Array
resp.recommendation_templates[0].recommendation_ids[0] #=> String
resp.recommendation_templates[0].recommendation_template_arn #=> String
resp.recommendation_templates[0].recommendation_types #=> Array
resp.recommendation_templates[0].recommendation_types[0] #=> String, one of "Alarm", "Sop", "Test"
resp.recommendation_templates[0].start_time #=> Time
resp.recommendation_templates[0].status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.recommendation_templates[0].tags #=> Hash
resp.recommendation_templates[0].tags["TagKey"] #=> String
resp.recommendation_templates[0].templates_location.bucket #=> String
resp.recommendation_templates[0].templates_location.prefix #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :name (String)

    The name for one of the listed recommendation templates.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :recommendation_template_arn (String)

    The Amazon Resource Name (ARN) for a recommendation template.

  • :reverse_order (Boolean)

    The default is to sort by ascending startTime. To sort by descending startTime, set reverseOrder to true.

  • :status (Array<String>)

    Status of the action.

Returns:

See Also:



3313
3314
3315
3316
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3313

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

#list_resiliency_policies(params = {}) ⇒ Types::ListResiliencyPoliciesResponse

Lists the resiliency policies for the Resilience Hub applications.

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_resiliency_policies({
  max_results: 1,
  next_token: "NextToken",
  policy_name: "EntityName",
})

Response structure


resp.next_token #=> String
resp.resiliency_policies #=> Array
resp.resiliency_policies[0].creation_time #=> Time
resp.resiliency_policies[0].data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.resiliency_policies[0].estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.resiliency_policies[0].policy #=> Hash
resp.resiliency_policies[0].policy["DisruptionType"].rpo_in_secs #=> Integer
resp.resiliency_policies[0].policy["DisruptionType"].rto_in_secs #=> Integer
resp.resiliency_policies[0].policy_arn #=> String
resp.resiliency_policies[0].policy_description #=> String
resp.resiliency_policies[0].policy_name #=> String
resp.resiliency_policies[0].tags #=> Hash
resp.resiliency_policies[0].tags["TagKey"] #=> String
resp.resiliency_policies[0].tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"

Parameters:

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

    ({})

Options Hash (params):

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :policy_name (String)

    The name of the policy

Returns:

See Also:



3368
3369
3370
3371
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3368

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

#list_resource_grouping_recommendations(params = {}) ⇒ Types::ListResourceGroupingRecommendationsResponse

Lists the resource grouping recommendations suggested by Resilience Hub for your application.

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_resource_grouping_recommendations({
  app_arn: "Arn",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.grouping_recommendations #=> Array
resp.grouping_recommendations[0].confidence_level #=> String, one of "High", "Medium"
resp.grouping_recommendations[0].creation_time #=> Time
resp.grouping_recommendations[0].grouping_app_component.app_component_id #=> String
resp.grouping_recommendations[0].grouping_app_component.app_component_name #=> String
resp.grouping_recommendations[0].grouping_app_component.app_component_type #=> String
resp.grouping_recommendations[0].grouping_recommendation_id #=> String
resp.grouping_recommendations[0].recommendation_reasons #=> Array
resp.grouping_recommendations[0].recommendation_reasons[0] #=> String
resp.grouping_recommendations[0].rejection_reason #=> String, one of "DistinctBusinessPurpose", "SeparateDataConcern", "DistinctUserGroupHandling", "Other"
resp.grouping_recommendations[0].resources #=> Array
resp.grouping_recommendations[0].resources[0].logical_resource_id.eks_source_name #=> String
resp.grouping_recommendations[0].resources[0].logical_resource_id.identifier #=> String
resp.grouping_recommendations[0].resources[0].logical_resource_id.logical_stack_name #=> String
resp.grouping_recommendations[0].resources[0].logical_resource_id.resource_group_name #=> String
resp.grouping_recommendations[0].resources[0].logical_resource_id.terraform_source_name #=> String
resp.grouping_recommendations[0].resources[0].physical_resource_id. #=> String
resp.grouping_recommendations[0].resources[0].physical_resource_id.aws_region #=> String
resp.grouping_recommendations[0].resources[0].physical_resource_id.identifier #=> String
resp.grouping_recommendations[0].resources[0].physical_resource_id.type #=> String, one of "Arn", "Native"
resp.grouping_recommendations[0].resources[0].resource_name #=> String
resp.grouping_recommendations[0].resources[0].resource_type #=> String
resp.grouping_recommendations[0].resources[0].source_app_component_ids #=> Array
resp.grouping_recommendations[0].resources[0].source_app_component_ids[0] #=> String
resp.grouping_recommendations[0].score #=> Float
resp.grouping_recommendations[0].status #=> String, one of "Accepted", "Rejected", "PendingDecision"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of grouping recommendations to be displayed per Resilience Hub application.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



3444
3445
3446
3447
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3444

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

#list_sop_recommendations(params = {}) ⇒ Types::ListSopRecommendationsResponse

Lists the standard operating procedure (SOP) recommendations for the Resilience Hub applications.

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_sop_recommendations({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.sop_recommendations #=> Array
resp.sop_recommendations[0].app_component_name #=> String
resp.sop_recommendations[0].description #=> String
resp.sop_recommendations[0].items #=> Array
resp.sop_recommendations[0].items[0].already_implemented #=> Boolean
resp.sop_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
resp.sop_recommendations[0].items[0].excluded #=> Boolean
resp.sop_recommendations[0].items[0].resource_id #=> String
resp.sop_recommendations[0].items[0]. #=> String
resp.sop_recommendations[0].items[0].target_region #=> String
resp.sop_recommendations[0].name #=> String
resp.sop_recommendations[0].prerequisite #=> String
resp.sop_recommendations[0].recommendation_id #=> String
resp.sop_recommendations[0].recommendation_status #=> String, one of "Implemented", "Inactive", "NotImplemented", "Excluded"
resp.sop_recommendations[0].reference_id #=> String
resp.sop_recommendations[0].service_type #=> String, one of "SSM"

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



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

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

#list_suggested_resiliency_policies(params = {}) ⇒ Types::ListSuggestedResiliencyPoliciesResponse

Lists the suggested resiliency policies for the Resilience Hub applications.

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_suggested_resiliency_policies({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.resiliency_policies #=> Array
resp.resiliency_policies[0].creation_time #=> Time
resp.resiliency_policies[0].data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.resiliency_policies[0].estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.resiliency_policies[0].policy #=> Hash
resp.resiliency_policies[0].policy["DisruptionType"].rpo_in_secs #=> Integer
resp.resiliency_policies[0].policy["DisruptionType"].rto_in_secs #=> Integer
resp.resiliency_policies[0].policy_arn #=> String
resp.resiliency_policies[0].policy_description #=> String
resp.resiliency_policies[0].policy_name #=> String
resp.resiliency_policies[0].tags #=> Hash
resp.resiliency_policies[0].tags["TagKey"] #=> String
resp.resiliency_policies[0].tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"

Parameters:

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

    ({})

Options Hash (params):

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



3563
3564
3565
3566
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3563

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

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

Lists the tags for your resources in your Resilience Hub applications.

Examples:

Request syntax with placeholder values


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

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) for a specific resource in your Resilience Hub application.

Returns:

See Also:



3593
3594
3595
3596
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3593

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

#list_test_recommendations(params = {}) ⇒ Types::ListTestRecommendationsResponse

Lists the test recommendations for the Resilience Hub application.

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_test_recommendations({
  assessment_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.test_recommendations #=> Array
resp.test_recommendations[0].app_component_name #=> String
resp.test_recommendations[0].depends_on_alarms #=> Array
resp.test_recommendations[0].depends_on_alarms[0] #=> String
resp.test_recommendations[0].description #=> String
resp.test_recommendations[0].intent #=> String
resp.test_recommendations[0].items #=> Array
resp.test_recommendations[0].items[0].already_implemented #=> Boolean
resp.test_recommendations[0].items[0].exclude_reason #=> String, one of "AlreadyImplemented", "NotRelevant", "ComplexityOfImplementation"
resp.test_recommendations[0].items[0].excluded #=> Boolean
resp.test_recommendations[0].items[0].resource_id #=> String
resp.test_recommendations[0].items[0]. #=> String
resp.test_recommendations[0].items[0].target_region #=> String
resp.test_recommendations[0].name #=> String
resp.test_recommendations[0].prerequisite #=> String
resp.test_recommendations[0].recommendation_id #=> String
resp.test_recommendations[0].recommendation_status #=> String, one of "Implemented", "Inactive", "NotImplemented", "Excluded"
resp.test_recommendations[0].reference_id #=> String
resp.test_recommendations[0].risk #=> String, one of "Small", "Medium", "High"
resp.test_recommendations[0].type #=> String, one of "Software", "Hardware", "AZ", "Region"

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_arn (required, String)

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

Returns:

See Also:



3663
3664
3665
3666
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3663

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

#list_unsupported_app_version_resources(params = {}) ⇒ Types::ListUnsupportedAppVersionResourcesResponse

Lists the resources that are not currently supported in Resilience Hub. An unsupported resource is a resource that exists in the object that was used to create an app, but is not supported by Resilience Hub.

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_unsupported_app_version_resources({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  max_results: 1,
  next_token: "NextToken",
  resolution_id: "String255",
})

Response structure


resp.next_token #=> String
resp.resolution_id #=> String
resp.unsupported_resources #=> Array
resp.unsupported_resources[0].logical_resource_id.eks_source_name #=> String
resp.unsupported_resources[0].logical_resource_id.identifier #=> String
resp.unsupported_resources[0].logical_resource_id.logical_stack_name #=> String
resp.unsupported_resources[0].logical_resource_id.resource_group_name #=> String
resp.unsupported_resources[0].logical_resource_id.terraform_source_name #=> String
resp.unsupported_resources[0].physical_resource_id. #=> String
resp.unsupported_resources[0].physical_resource_id.aws_region #=> String
resp.unsupported_resources[0].physical_resource_id.identifier #=> String
resp.unsupported_resources[0].physical_resource_id.type #=> String, one of "Arn", "Native"
resp.unsupported_resources[0].resource_type #=> String
resp.unsupported_resources[0].unsupported_resource_status #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

  • :max_results (Integer)

    Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :next_token (String)

    Null, or the token from a previous call to get the next set of results.

  • :resolution_id (String)

    The identifier for a specific resolution.

Returns:

See Also:



3738
3739
3740
3741
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3738

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

#publish_app_version(params = {}) ⇒ Types::PublishAppVersionResponse

Publishes a new version of a specific Resilience Hub application.

Examples:

Request syntax with placeholder values


resp = client.publish_app_version({
  app_arn: "Arn", # required
  version_name: "EntityVersion",
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.identifier #=> Integer
resp.version_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :version_name (String)

    Name of the application version.

Returns:

See Also:



3784
3785
3786
3787
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 3784

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

#put_draft_app_version_template(params = {}) ⇒ Types::PutDraftAppVersionTemplateResponse

Adds or updates the app template for an Resilience Hub application draft version.

Examples:

Request syntax with placeholder values


resp = client.put_draft_app_version_template({
  app_arn: "Arn", # required
  app_template_body: "AppTemplateBody", # required
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_template_body (required, String)

    A JSON string that provides information about your application structure. To learn more about the appTemplateBody template, see the sample template provided in the Examples section.

    The appTemplateBody JSON string has the following structure:

    • resources

      The list of logical resources that must be included in the Resilience Hub application.

      Type: Array

      Don't add the resources that you want to exclude.

      Each resources array item includes the following fields:

      • logicalResourceId

        Logical identifier of the resource.

        Type: Object

        Each logicalResourceId object includes the following fields:

        • identifier

          Identifier of the resource.

          Type: String

        • logicalStackName

          The name of the CloudFormation stack this resource belongs to.

          Type: String

        • resourceGroupName

          The name of the resource group this resource belongs to.

          Type: String

        • terraformSourceName

          The name of the Terraform S3 state file this resource belongs to.

          Type: String

        • eksSourceName

          Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.

          This parameter accepts values in "eks-cluster/namespace" format.

          Type: String

      • type

        The type of resource.

        Type: string

      • name

        The name of the resource.

        Type: String

      • additionalInfo

        Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

        Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

        Key: "failover-regions"

        Value: "[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"

    • appComponents

      List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

      Type: Array

      Each appComponents array item includes the following fields:

      • name

        Name of the Application Component.

        Type: String

      • type

        Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

        Type: String

      • resourceNames

        The list of included resources that are assigned to the Application Component.

        Type: Array of strings

      • additionalInfo

        Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

        Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

        Key: "failover-regions"

        Value: "[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"

    • excludedResources

      The list of logical resource identifiers to be excluded from the application.

      Type: Array

      Don't add the resources that you want to include.

      Each excludedResources array item includes the following fields:

      • logicalResourceIds

        Logical identifier of the resource.

        Type: Object

        You can configure only one of the following fields:

        • logicalStackName

        • resourceGroupName

        • terraformSourceName

        • eksSourceName

        Each logicalResourceIds object includes the following fields:

        • identifier

          Identifier of the resource.

          Type: String

        • logicalStackName

          The name of the CloudFormation stack this resource belongs to.

          Type: String

        • resourceGroupName

          The name of the resource group this resource belongs to.

          Type: String

        • terraformSourceName

          The name of the Terraform S3 state file this resource belongs to.

          Type: String

        • eksSourceName

          Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.

          This parameter accepts values in "eks-cluster/namespace" format.

          Type: String

    • version

      Resilience Hub application version.

    • additionalInfo

      Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

      Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

      Key: "failover-regions"

      Value: "[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"

Returns:

See Also:



4062
4063
4064
4065
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4062

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

#reject_resource_grouping_recommendations(params = {}) ⇒ Types::RejectResourceGroupingRecommendationsResponse

Rejects resource grouping recommendations.

Examples:

Request syntax with placeholder values


resp = client.reject_resource_grouping_recommendations({
  app_arn: "Arn", # required
  entries: [ # required
    {
      grouping_recommendation_id: "String255", # required
      rejection_reason: "DistinctBusinessPurpose", # accepts DistinctBusinessPurpose, SeparateDataConcern, DistinctUserGroupHandling, Other
    },
  ],
})

Response structure


resp.app_arn #=> String
resp.failed_entries #=> Array
resp.failed_entries[0].error_message #=> String
resp.failed_entries[0].grouping_recommendation_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :entries (required, Array<Types::RejectGroupingRecommendationEntry>)

    Indicates the list of resource grouping recommendations you have selected to exclude from your application.

Returns:

See Also:



4112
4113
4114
4115
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4112

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

#remove_draft_app_version_resource_mappings(params = {}) ⇒ Types::RemoveDraftAppVersionResourceMappingsResponse

Removes resource mappings from a draft application version.

Examples:

Request syntax with placeholder values


resp = client.remove_draft_app_version_resource_mappings({
  app_arn: "Arn", # required
  app_registry_app_names: ["EntityName"],
  eks_source_names: ["String255"],
  logical_stack_names: ["String255"],
  resource_group_names: ["EntityName"],
  resource_names: ["EntityName"],
  terraform_source_names: ["String255"],
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_registry_app_names (Array<String>)

    The names of the registered applications you want to remove from the resource mappings.

  • :eks_source_names (Array<String>)

    The names of the Amazon Elastic Kubernetes Service clusters and namespaces you want to remove from the resource mappings.

    This parameter accepts values in "eks-cluster/namespace" format.

  • :logical_stack_names (Array<String>)

    The names of the CloudFormation stacks you want to remove from the resource mappings.

  • :resource_group_names (Array<String>)

    The names of the resource groups you want to remove from the resource mappings.

  • :resource_names (Array<String>)

    The names of the resources you want to remove from the resource mappings.

  • :terraform_source_names (Array<String>)

    The names of the Terraform sources you want to remove from the resource mappings.

Returns:

See Also:



4184
4185
4186
4187
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4184

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

#resolve_app_version_resources(params = {}) ⇒ Types::ResolveAppVersionResourcesResponse

Resolves the resources for an application version.

Examples:

Request syntax with placeholder values


resp = client.resolve_app_version_resources({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.resolution_id #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

Returns:

See Also:



4230
4231
4232
4233
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4230

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

#start_app_assessment(params = {}) ⇒ Types::StartAppAssessmentResponse

Creates a new application assessment for an application.

Examples:

Request syntax with placeholder values


resp = client.start_app_assessment({
  app_arn: "Arn", # required
  app_version: "EntityVersion", # required
  assessment_name: "EntityName", # required
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.assessment.app_arn #=> String
resp.assessment.app_version #=> String
resp.assessment.assessment_arn #=> String
resp.assessment.assessment_name #=> String
resp.assessment.assessment_status #=> String, one of "Pending", "InProgress", "Failed", "Success"
resp.assessment.compliance #=> Hash
resp.assessment.compliance["DisruptionType"].achievable_rpo_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].achievable_rto_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.assessment.compliance["DisruptionType"].current_rpo_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].current_rto_in_secs #=> Integer
resp.assessment.compliance["DisruptionType"].message #=> String
resp.assessment.compliance["DisruptionType"].rpo_description #=> String
resp.assessment.compliance["DisruptionType"].rpo_reference_id #=> String
resp.assessment.compliance["DisruptionType"].rto_description #=> String
resp.assessment.compliance["DisruptionType"].rto_reference_id #=> String
resp.assessment.compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotApplicable", "MissingPolicy"
resp.assessment.cost.amount #=> Float
resp.assessment.cost.currency #=> String
resp.assessment.cost.frequency #=> String, one of "Hourly", "Daily", "Monthly", "Yearly"
resp.assessment.drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.assessment.end_time #=> Time
resp.assessment.invoker #=> String, one of "User", "System"
resp.assessment.message #=> String
resp.assessment.policy.creation_time #=> Time
resp.assessment.policy.data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.assessment.policy.estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.assessment.policy.policy #=> Hash
resp.assessment.policy.policy["DisruptionType"].rpo_in_secs #=> Integer
resp.assessment.policy.policy["DisruptionType"].rto_in_secs #=> Integer
resp.assessment.policy.policy_arn #=> String
resp.assessment.policy.policy_description #=> String
resp.assessment.policy.policy_name #=> String
resp.assessment.policy.tags #=> Hash
resp.assessment.policy.tags["TagKey"] #=> String
resp.assessment.policy.tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"
resp.assessment.resiliency_score.component_score #=> Hash
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].excluded_count #=> Integer
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].outstanding_count #=> Integer
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].possible_score #=> Float
resp.assessment.resiliency_score.component_score["ResiliencyScoreType"].score #=> Float
resp.assessment.resiliency_score.disruption_score #=> Hash
resp.assessment.resiliency_score.disruption_score["DisruptionType"] #=> Float
resp.assessment.resiliency_score.score #=> Float
resp.assessment.resource_errors_details.has_more_errors #=> Boolean
resp.assessment.resource_errors_details.resource_errors #=> Array
resp.assessment.resource_errors_details.resource_errors[0].logical_resource_id #=> String
resp.assessment.resource_errors_details.resource_errors[0].physical_resource_id #=> String
resp.assessment.resource_errors_details.resource_errors[0].reason #=> String
resp.assessment.start_time #=> Time
resp.assessment.summary.risk_recommendations #=> Array
resp.assessment.summary.risk_recommendations[0].app_components #=> Array
resp.assessment.summary.risk_recommendations[0].app_components[0] #=> String
resp.assessment.summary.risk_recommendations[0].recommendation #=> String
resp.assessment.summary.risk_recommendations[0].risk #=> String
resp.assessment.summary.summary #=> String
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String
resp.assessment.version_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_version (required, String)

    The version of the application.

  • :assessment_name (required, String)

    The name for the assessment.

  • :client_token (String)

    Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

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

  • :tags (Hash<String,String>)

    Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

Returns:

See Also:



4348
4349
4350
4351
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4348

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

#start_resource_grouping_recommendation_task(params = {}) ⇒ Types::StartResourceGroupingRecommendationTaskResponse

Starts grouping recommendation task.

Examples:

Request syntax with placeholder values


resp = client.start_resource_grouping_recommendation_task({
  app_arn: "Arn", # required
})

Response structure


resp.app_arn #=> String
resp.error_message #=> String
resp.grouping_id #=> String
resp.status #=> String, one of "Pending", "InProgress", "Failed", "Success"

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



4390
4391
4392
4393
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4390

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

#tag_resource(params = {}) ⇒ Struct

Applies one or more tags to a resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "Arn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    Amazon Resource Name (ARN) of the resource.

  • :tags (required, Hash<String,String>)

    The tags to assign to the resource. Each tag consists of a key/value pair.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4419
4420
4421
4422
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4419

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

#untag_resource(params = {}) ⇒ Struct

Removes one or more tags from a resource.

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)

    Amazon Resource Name (ARN) of the resource.

  • :tag_keys (required, Array<String>)

    The keys of the tags you want to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4445
4446
4447
4448
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4445

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

#update_app(params = {}) ⇒ Types::UpdateAppResponse

Updates an application.

Examples:

Request syntax with placeholder values


resp = client.update_app({
  app_arn: "Arn", # required
  assessment_schedule: "Disabled", # accepts Disabled, Daily
  clear_resiliency_policy_arn: false,
  description: "EntityDescription",
  event_subscriptions: [
    {
      event_type: "ScheduledAssessmentFailure", # required, accepts ScheduledAssessmentFailure, DriftDetected
      name: "String255", # required
      sns_topic_arn: "Arn",
    },
  ],
  permission_model: {
    cross_account_role_arns: ["IamRoleArn"],
    invoker_role_name: "IamRoleName",
    type: "LegacyIAMUser", # required, accepts LegacyIAMUser, RoleBased
  },
  policy_arn: "Arn",
})

Response structure


resp.app.app_arn #=> String
resp.app.assessment_schedule #=> String, one of "Disabled", "Daily"
resp.app.compliance_status #=> String, one of "PolicyBreached", "PolicyMet", "NotAssessed", "ChangesDetected", "NotApplicable", "MissingPolicy"
resp.app.creation_time #=> Time
resp.app.description #=> String
resp.app.drift_status #=> String, one of "NotChecked", "NotDetected", "Detected"
resp.app.event_subscriptions #=> Array
resp.app.event_subscriptions[0].event_type #=> String, one of "ScheduledAssessmentFailure", "DriftDetected"
resp.app.event_subscriptions[0].name #=> String
resp.app.event_subscriptions[0].sns_topic_arn #=> String
resp.app.last_app_compliance_evaluation_time #=> Time
resp.app.last_drift_evaluation_time #=> Time
resp.app.last_resiliency_score_evaluation_time #=> Time
resp.app.name #=> String
resp.app.permission_model. #=> Array
resp.app.permission_model.[0] #=> String
resp.app.permission_model.invoker_role_name #=> String
resp.app.permission_model.type #=> String, one of "LegacyIAMUser", "RoleBased"
resp.app.policy_arn #=> String
resp.app.resiliency_score #=> Float
resp.app.rpo_in_secs #=> Integer
resp.app.rto_in_secs #=> Integer
resp.app.status #=> String, one of "Active", "Deleting"
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :assessment_schedule (String)

    Assessment execution schedule with 'Daily' or 'Disabled' values.

  • :clear_resiliency_policy_arn (Boolean)

    Specifies if the resiliency policy ARN should be cleared.

  • :description (String)

    The optional description for an app.

  • :event_subscriptions (Array<Types::EventSubscription>)

    The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

  • :permission_model (Types::PermissionModel)

    Defines the roles and credentials that Resilience Hub would use while creating an application, importing its resources, and running an assessment.

  • :policy_arn (String)

    Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



4551
4552
4553
4554
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4551

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

#update_app_version(params = {}) ⇒ Types::UpdateAppVersionResponse

Updates the Resilience Hub application version.

This API updates the Resilience Hub application draft version. To use this information for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Examples:

Request syntax with placeholder values


resp = client.update_app_version({
  additional_info: {
    "String128WithoutWhitespace" => ["String1024"],
  },
  app_arn: "Arn", # required
})

Response structure


resp.additional_info #=> Hash
resp.additional_info["String128WithoutWhitespace"] #=> Array
resp.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_arn #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :additional_info (Hash<String,Array>)

    Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

    Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

    Key: "failover-regions"

    Value: "[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

Returns:

See Also:



4622
4623
4624
4625
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4622

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

#update_app_version_app_component(params = {}) ⇒ Types::UpdateAppVersionAppComponentResponse

Updates an existing Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Examples:

Request syntax with placeholder values


resp = client.update_app_version_app_component({
  additional_info: {
    "String128WithoutWhitespace" => ["String1024"],
  },
  app_arn: "Arn", # required
  id: "String255", # required
  name: "String255",
  type: "String255",
})

Response structure


resp.app_arn #=> String
resp.app_component.additional_info #=> Hash
resp.app_component.additional_info["String128WithoutWhitespace"] #=> Array
resp.app_component.additional_info["String128WithoutWhitespace"][0] #=> String
resp.app_component.id #=> String
resp.app_component.name #=> String
resp.app_component.type #=> String
resp.app_version #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :additional_info (Hash<String,Array>)

    Currently, there is no supported additional information for Application Components.

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :id (required, String)

    Identifier of the Application Component.

  • :name (String)

    Name of the Application Component.

  • :type (String)

    Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

Returns:

See Also:



4698
4699
4700
4701
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4698

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

#update_app_version_resource(params = {}) ⇒ Types::UpdateAppVersionResourceResponse

Updates the resource details in the Resilience Hub application.

* This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

Examples:

Request syntax with placeholder values


resp = client.update_app_version_resource({
  additional_info: {
    "String128WithoutWhitespace" => ["String1024"],
  },
  app_arn: "Arn", # required
  app_components: ["String255"],
  aws_account_id: "CustomerId",
  aws_region: "AwsRegion",
  excluded: false,
  logical_resource_id: {
    eks_source_name: "String255",
    identifier: "String255", # required
    logical_stack_name: "String255",
    resource_group_name: "EntityName",
    terraform_source_name: "String255",
  },
  physical_resource_id: "String2048",
  resource_name: "EntityName",
  resource_type: "String255",
})

Response structure


resp.app_arn #=> String
resp.app_version #=> String
resp.physical_resource.additional_info #=> Hash
resp.physical_resource.additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components #=> Array
resp.physical_resource.app_components[0].additional_info #=> Hash
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"] #=> Array
resp.physical_resource.app_components[0].additional_info["String128WithoutWhitespace"][0] #=> String
resp.physical_resource.app_components[0].id #=> String
resp.physical_resource.app_components[0].name #=> String
resp.physical_resource.app_components[0].type #=> String
resp.physical_resource.excluded #=> Boolean
resp.physical_resource.logical_resource_id.eks_source_name #=> String
resp.physical_resource.logical_resource_id.identifier #=> String
resp.physical_resource.logical_resource_id.logical_stack_name #=> String
resp.physical_resource.logical_resource_id.resource_group_name #=> String
resp.physical_resource.logical_resource_id.terraform_source_name #=> String
resp.physical_resource.parent_resource_name #=> String
resp.physical_resource.physical_resource_id. #=> String
resp.physical_resource.physical_resource_id.aws_region #=> String
resp.physical_resource.physical_resource_id.identifier #=> String
resp.physical_resource.physical_resource_id.type #=> String, one of "Arn", "Native"
resp.physical_resource.resource_name #=> String
resp.physical_resource.resource_type #=> String
resp.physical_resource.source_type #=> String, one of "AppTemplate", "Discovered"

Parameters:

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

    ({})

Options Hash (params):

  • :additional_info (Hash<String,Array>)

    Currently, there is no supported additional information for resources.

  • :app_arn (required, String)

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :app_components (Array<String>)

    List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

  • :aws_account_id (String)

    Amazon Web Services account that owns the physical resource.

  • :aws_region (String)

    Amazon Web Services region that owns the physical resource.

  • :excluded (Boolean)

    Indicates if a resource is excluded from an Resilience Hub application.

    You can exclude only imported resources from an Resilience Hub application.

  • :logical_resource_id (Types::LogicalResourceId)

    Logical identifier of the resource.

  • :physical_resource_id (String)

    Physical identifier of the resource.

  • :resource_name (String)

    Name of the resource.

  • :resource_type (String)

    Type of resource.

Returns:

See Also:



4825
4826
4827
4828
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4825

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

#update_resiliency_policy(params = {}) ⇒ Types::UpdateResiliencyPolicyResponse

Updates a resiliency policy.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

Examples:

Request syntax with placeholder values


resp = client.update_resiliency_policy({
  data_location_constraint: "AnyLocation", # accepts AnyLocation, SameContinent, SameCountry
  policy: {
    "Software" => {
      rpo_in_secs: 1, # required
      rto_in_secs: 1, # required
    },
  },
  policy_arn: "Arn", # required
  policy_description: "EntityDescription",
  policy_name: "EntityName",
  tier: "MissionCritical", # accepts MissionCritical, Critical, Important, CoreServices, NonCritical, NotApplicable
})

Response structure


resp.policy.creation_time #=> Time
resp.policy.data_location_constraint #=> String, one of "AnyLocation", "SameContinent", "SameCountry"
resp.policy.estimated_cost_tier #=> String, one of "L1", "L2", "L3", "L4"
resp.policy.policy #=> Hash
resp.policy.policy["DisruptionType"].rpo_in_secs #=> Integer
resp.policy.policy["DisruptionType"].rto_in_secs #=> Integer
resp.policy.policy_arn #=> String
resp.policy.policy_description #=> String
resp.policy.policy_name #=> String
resp.policy.tags #=> Hash
resp.policy.tags["TagKey"] #=> String
resp.policy.tier #=> String, one of "MissionCritical", "Critical", "Important", "CoreServices", "NonCritical", "NotApplicable"

Parameters:

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

    ({})

Options Hash (params):

  • :data_location_constraint (String)

    Specifies a high-level geographical location constraint for where your resilience policy data can be stored.

  • :policy (Hash<String,Types::FailurePolicy>)

    The type of resiliency policy to be created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

  • :policy_arn (required, String)

    Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: arn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • :policy_description (String)

    The description for the policy.

  • :policy_name (String)

    The name of the policy

  • :tier (String)

    The tier for this resiliency policy, ranging from the highest severity (MissionCritical) to lowest (NonCritical).

Returns:

See Also:



4910
4911
4912
4913
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/client.rb', line 4910

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