You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::SMS::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::SMS::Client
- Defined in:
- (unknown)
Overview
An API client for AWS Server Migration Service. To construct a client, you need to configure a :region
and :credentials
.
sms = Aws::SMS::Client.new(
region: region_name,
credentials: credentials,
# ...
)
See #initialize for a full list of supported configuration options.
Region
You can configure a default region in the following locations:
ENV['AWS_REGION']
Aws.config[:region]
Go here for a list of supported regions.
Credentials
Default credentials are loaded automatically from the following locations:
ENV['AWS_ACCESS_KEY_ID']
andENV['AWS_SECRET_ACCESS_KEY']
Aws.config[:credentials]
- The shared credentials ini file at
~/.aws/credentials
(more information) - From an instance profile when running on EC2
You can also construct a credentials object from one of the following classes:
Alternatively, you configure credentials with :access_key_id
and
:secret_access_key
:
# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))
Aws::SMS::Client.new(
access_key_id: creds['access_key_id'],
secret_access_key: creds['secret_access_key']
)
Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
Constructor collapse
-
#initialize(options = {}) ⇒ Aws::SMS::Client
constructor
Constructs an API client.
API Operations collapse
-
#create_app(options = {}) ⇒ Types::CreateAppResponse
Creates an application.
-
#create_replication_job(options = {}) ⇒ Types::CreateReplicationJobResponse
Creates a replication job.
-
#delete_app(options = {}) ⇒ Struct
Deletes the specified application.
-
#delete_app_launch_configuration(options = {}) ⇒ Struct
Deletes the launch configuration for the specified application.
.
-
#delete_app_replication_configuration(options = {}) ⇒ Struct
Deletes the replication configuration for the specified application.
.
-
#delete_app_validation_configuration(options = {}) ⇒ Struct
Deletes the validation configuration for the specified application.
.
-
#delete_replication_job(options = {}) ⇒ Struct
Deletes the specified replication job.
After you delete a replication job, there are no further replication runs.
-
#delete_server_catalog(options = {}) ⇒ Struct
Deletes all servers from your server catalog.
.
-
#disassociate_connector(options = {}) ⇒ Struct
Disassociates the specified connector from AWS SMS.
After you disassociate a connector, it is no longer available to support replication jobs.
. -
#generate_change_set(options = {}) ⇒ Types::GenerateChangeSetResponse
Generates a target change set for a currently launched stack and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.
.
-
#generate_template(options = {}) ⇒ Types::GenerateTemplateResponse
Generates an AWS CloudFormation template based on the current launch configuration and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.
.
-
#get_app(options = {}) ⇒ Types::GetAppResponse
Retrieve information about the specified application.
.
-
#get_app_launch_configuration(options = {}) ⇒ Types::GetAppLaunchConfigurationResponse
Retrieves the application launch configuration associated with the specified application.
.
-
#get_app_replication_configuration(options = {}) ⇒ Types::GetAppReplicationConfigurationResponse
Retrieves the application replication configuration associated with the specified application.
.
-
#get_app_validation_configuration(options = {}) ⇒ Types::GetAppValidationConfigurationResponse
Retrieves information about a configuration for validating an application.
.
-
#get_app_validation_output(options = {}) ⇒ Types::GetAppValidationOutputResponse
Retrieves output from validating an application.
.
-
#get_connectors(options = {}) ⇒ Types::GetConnectorsResponse
Describes the connectors registered with the AWS SMS.
.
-
#get_replication_jobs(options = {}) ⇒ Types::GetReplicationJobsResponse
Describes the specified replication job or all of your replication jobs.
.
-
#get_replication_runs(options = {}) ⇒ Types::GetReplicationRunsResponse
Describes the replication runs for the specified replication job.
.
-
#get_servers(options = {}) ⇒ Types::GetServersResponse
Describes the servers in your server catalog.
Before you can describe your servers, you must import them using ImportServerCatalog.
. -
#import_app_catalog(options = {}) ⇒ Struct
Allows application import from AWS Migration Hub.
.
-
#import_server_catalog(options = {}) ⇒ Struct
Gathers a complete list of on-premises servers.
-
#launch_app(options = {}) ⇒ Struct
Launches the specified application as a stack in AWS CloudFormation.
.
-
#list_apps(options = {}) ⇒ Types::ListAppsResponse
Retrieves summaries for all applications.
.
-
#notify_app_validation_output(options = {}) ⇒ Struct
Provides information to AWS SMS about whether application validation is successful.
.
-
#put_app_launch_configuration(options = {}) ⇒ Struct
Creates or updates the launch configuration for the specified application.
.
-
#put_app_replication_configuration(options = {}) ⇒ Struct
Creates or updates the replication configuration for the specified application.
.
-
#put_app_validation_configuration(options = {}) ⇒ Struct
Creates or updates a validation configuration for the specified application.
.
-
#start_app_replication(options = {}) ⇒ Struct
Starts replicating the specified application by creating replication jobs for each server in the application.
.
-
#start_on_demand_app_replication(options = {}) ⇒ Struct
Starts an on-demand replication run for the specified application.
.
-
#start_on_demand_replication_run(options = {}) ⇒ Types::StartOnDemandReplicationRunResponse
Starts an on-demand replication run for the specified replication job.
-
#stop_app_replication(options = {}) ⇒ Struct
Stops replicating the specified application by deleting the replication job for each server in the application.
.
-
#terminate_app(options = {}) ⇒ Struct
Terminates the stack for the specified application.
.
-
#update_app(options = {}) ⇒ Types::UpdateAppResponse
Updates the specified application.
.
-
#update_replication_job(options = {}) ⇒ Struct
Updates the specified settings for the specified replication job.
.
Instance Method Summary collapse
-
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
-
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters.
Methods inherited from Seahorse::Client::Base
add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options = {}) ⇒ Aws::SMS::Client
Constructs an API client.
Instance Method Details
#create_app(options = {}) ⇒ Types::CreateAppResponse
Creates an application. An application consists of one or more server groups. Each server group contain one or more servers.
#create_replication_job(options = {}) ⇒ Types::CreateReplicationJobResponse
Creates a replication job. The replication job schedules periodic replication runs to replicate your server to AWS. Each replication run creates an Amazon Machine Image (AMI).
#delete_app(options = {}) ⇒ Struct
Deletes the specified application. Optionally deletes the launched stack associated with the application and all AWS SMS replication jobs for servers in the application.
#delete_app_launch_configuration(options = {}) ⇒ Struct
Deletes the launch configuration for the specified application.
#delete_app_replication_configuration(options = {}) ⇒ Struct
Deletes the replication configuration for the specified application.
#delete_app_validation_configuration(options = {}) ⇒ Struct
Deletes the validation configuration for the specified application.
#delete_replication_job(options = {}) ⇒ Struct
Deletes the specified replication job.
After you delete a replication job, there are no further replication runs. AWS deletes the contents of the Amazon S3 bucket used to store AWS SMS artifacts. The AMIs created by the replication runs are not deleted.
#delete_server_catalog(options = {}) ⇒ Struct
Deletes all servers from your server catalog.
#disassociate_connector(options = {}) ⇒ Struct
Disassociates the specified connector from AWS SMS.
After you disassociate a connector, it is no longer available to support replication jobs.
#generate_change_set(options = {}) ⇒ Types::GenerateChangeSetResponse
Generates a target change set for a currently launched stack and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.
#generate_template(options = {}) ⇒ Types::GenerateTemplateResponse
Generates an AWS CloudFormation template based on the current launch configuration and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.
#get_app(options = {}) ⇒ Types::GetAppResponse
Retrieve information about the specified application.
#get_app_launch_configuration(options = {}) ⇒ Types::GetAppLaunchConfigurationResponse
Retrieves the application launch configuration associated with the specified application.
#get_app_replication_configuration(options = {}) ⇒ Types::GetAppReplicationConfigurationResponse
Retrieves the application replication configuration associated with the specified application.
#get_app_validation_configuration(options = {}) ⇒ Types::GetAppValidationConfigurationResponse
Retrieves information about a configuration for validating an application.
#get_app_validation_output(options = {}) ⇒ Types::GetAppValidationOutputResponse
Retrieves output from validating an application.
#get_connectors(options = {}) ⇒ Types::GetConnectorsResponse
Describes the connectors registered with the AWS SMS.
#get_replication_jobs(options = {}) ⇒ Types::GetReplicationJobsResponse
Describes the specified replication job or all of your replication jobs.
#get_replication_runs(options = {}) ⇒ Types::GetReplicationRunsResponse
Describes the replication runs for the specified replication job.
#get_servers(options = {}) ⇒ Types::GetServersResponse
Describes the servers in your server catalog.
Before you can describe your servers, you must import them using ImportServerCatalog.
#import_app_catalog(options = {}) ⇒ Struct
Allows application import from AWS Migration Hub.
#import_server_catalog(options = {}) ⇒ Struct
Gathers a complete list of on-premises servers. Connectors must be installed and monitoring all servers to import.
This call returns immediately, but might take additional time to retrieve all the servers.
#launch_app(options = {}) ⇒ Struct
Launches the specified application as a stack in AWS CloudFormation.
#list_apps(options = {}) ⇒ Types::ListAppsResponse
Retrieves summaries for all applications.
#notify_app_validation_output(options = {}) ⇒ Struct
Provides information to AWS SMS about whether application validation is successful.
#put_app_launch_configuration(options = {}) ⇒ Struct
Creates or updates the launch configuration for the specified application.
#put_app_replication_configuration(options = {}) ⇒ Struct
Creates or updates the replication configuration for the specified application.
#put_app_validation_configuration(options = {}) ⇒ Struct
Creates or updates a validation configuration for the specified application.
#start_app_replication(options = {}) ⇒ Struct
Starts replicating the specified application by creating replication jobs for each server in the application.
#start_on_demand_app_replication(options = {}) ⇒ Struct
Starts an on-demand replication run for the specified application.
#start_on_demand_replication_run(options = {}) ⇒ Types::StartOnDemandReplicationRunResponse
Starts an on-demand replication run for the specified replication job. This replication run starts immediately. This replication run is in addition to the ones already scheduled.
There is a limit on the number of on-demand replications runs that you can request in a 24-hour period.
#stop_app_replication(options = {}) ⇒ Struct
Stops replicating the specified application by deleting the replication job for each server in the application.
#terminate_app(options = {}) ⇒ Struct
Terminates the stack for the specified application.
#update_app(options = {}) ⇒ Types::UpdateAppResponse
Updates the specified application.
#update_replication_job(options = {}) ⇒ Struct
Updates the specified settings for the specified replication job.
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
Basic Usage
Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)
Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:
# poll for ~25 seconds
client.wait_until(...) do |w|
w.max_attempts = 5
w.delay = 5
end
Callbacks
You can be notified before each polling attempt and before each
delay. If you throw :success
or :failure
from these callbacks,
it will terminate the waiter.
started_at = Time.now
client.wait_until(...) do |w|
# disable max attempts
w.max_attempts = nil
# poll for 1 hour, instead of a number of attempts
w.before_wait do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
end
Handling Errors
When a waiter is successful, it returns true
. When a waiter
fails, it raises an error. All errors raised extend from
Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:
Waiter Name | Client Method | Default Delay: | Default Max Attempts: |
---|