aws-sdk-drs 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 651e72261df86a49e58c6cf387389caaeb7c7e18e8c2a1557e4712a0794104a6
4
- data.tar.gz: f81ebd7a7a7b249c7d957ba2fd39e113a39c42a710072fc9d8568c64765630bd
3
+ metadata.gz: 780696c964422166a982f187b8a9bb59d6a63a637ec0bdf66e89eea640bf1513
4
+ data.tar.gz: 2e4196718632bfa1f8f915ec62fa11ad266d3bda11f1f2678239882e96fc1392
5
5
  SHA512:
6
- metadata.gz: 25adf5cb95675add7d9f532d089c4136ec6edd8cf115cb2bc301e7a40d407b1e442922e77a43398c33879e312a4575c8c878523ec22a4da2bbb947d3c8b35141
7
- data.tar.gz: 4515303b0428d4c58677b1cc493b8a002fc6b3cc393cc44f4e68baa49973fcf6bf9369b243d2681ba2ac9b38dd47f0b05b95d20f3be6bc8d8ebd013bbf430bee
6
+ metadata.gz: b6efde2db0ab951665b7f8bd150f0d76b2dd09bbea2bbd57c6def3bd6b33e4b33e615e503a038bb5be97d76fad3c993fcb193ca761d8b04f0a08b6457b0a748c
7
+ data.tar.gz: c2ee6e026ca05eb27b886727d9050f5a2b1237f531943d40ed9ada16ec1933251e9c82ff676923c5d94ea02307ae2faf552ec4c139343c2d72fca9e4a6df5e75
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.9.0 (2022-11-28)
5
+ ------------------
6
+
7
+ * Feature - Non breaking changes to existing APIs, and additional APIs added to support in-AWS failing back using AWS Elastic Disaster Recovery.
8
+
9
+ 1.8.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.7.0 (2022-09-13)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.7.0
1
+ 1.9.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:drs)
@@ -79,8 +79,9 @@ module Aws::Drs
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::RestJson)
84
+ add_plugin(Aws::Drs::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::Drs
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::Drs
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::Drs::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Drs::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -402,6 +419,11 @@ module Aws::Drs
402
419
  # resp.source_server.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
403
420
  # resp.source_server.life_cycle.last_seen_by_service_date_time #=> String
404
421
  # resp.source_server.recovery_instance_id #=> String
422
+ # resp.source_server.replication_direction #=> String, one of "FAILOVER", "FAILBACK"
423
+ # resp.source_server.reversed_direction_source_server_arn #=> String
424
+ # resp.source_server.source_cloud_properties.origin_account_id #=> String
425
+ # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
426
+ # resp.source_server.source_cloud_properties.origin_region #=> String
405
427
  # resp.source_server.source_properties.cpus #=> Array
406
428
  # resp.source_server.source_properties.cpus[0].cores #=> Integer
407
429
  # resp.source_server.source_properties.cpus[0].model_name #=> String
@@ -816,13 +838,13 @@ module Aws::Drs
816
838
  #
817
839
  # resp.items #=> Array
818
840
  # resp.items[0].arn #=> String
819
- # resp.items[0].data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "FAILBACK_CLIENT_NOT_SEEN", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", "FAILED_TO_CONFIGURE_REPLICATION_SOFTWARE", "FAILED_TO_PAIR_AGENT_WITH_REPLICATION_SOFTWARE", "FAILED_TO_ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION"
841
+ # resp.items[0].data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "FAILBACK_CLIENT_NOT_SEEN", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", "FAILED_TO_CONFIGURE_REPLICATION_SOFTWARE", "FAILED_TO_PAIR_AGENT_WITH_REPLICATION_SOFTWARE", "FAILED_TO_ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION", "FAILED_GETTING_REPLICATION_STATE", "SNAPSHOTS_FAILURE", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
820
842
  # resp.items[0].data_replication_info.data_replication_error.raw_error #=> String
821
843
  # resp.items[0].data_replication_info.data_replication_initiation.start_date_time #=> String
822
844
  # resp.items[0].data_replication_info.data_replication_initiation.steps #=> Array
823
- # resp.items[0].data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "LINK_FAILBACK_CLIENT_WITH_RECOVERY_INSTANCE", "COMPLETE_VOLUME_MAPPING", "ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", "DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", "CONFIGURE_REPLICATION_SOFTWARE", "PAIR_AGENT_WITH_REPLICATION_SOFTWARE", "ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION"
845
+ # resp.items[0].data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "LINK_FAILBACK_CLIENT_WITH_RECOVERY_INSTANCE", "COMPLETE_VOLUME_MAPPING", "ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", "DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", "CONFIGURE_REPLICATION_SOFTWARE", "PAIR_AGENT_WITH_REPLICATION_SOFTWARE", "ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION", "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
824
846
  # resp.items[0].data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
825
- # resp.items[0].data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
847
+ # resp.items[0].data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "REPLICATION_STATE_NOT_AVAILABLE", "NOT_STARTED"
826
848
  # resp.items[0].data_replication_info.eta_date_time #=> String
827
849
  # resp.items[0].data_replication_info.lag_duration #=> String
828
850
  # resp.items[0].data_replication_info.replicated_disks #=> Array
@@ -839,11 +861,13 @@ module Aws::Drs
839
861
  # resp.items[0].failback.failback_client_last_seen_by_service_date_time #=> String
840
862
  # resp.items[0].failback.failback_initiation_time #=> String
841
863
  # resp.items[0].failback.failback_job_id #=> String
864
+ # resp.items[0].failback.failback_launch_type #=> String, one of "RECOVERY", "DRILL"
842
865
  # resp.items[0].failback.failback_to_original_server #=> Boolean
843
866
  # resp.items[0].failback.first_byte_date_time #=> String
844
- # resp.items[0].failback.state #=> String, one of "FAILBACK_NOT_STARTED", "FAILBACK_IN_PROGRESS", "FAILBACK_READY_FOR_LAUNCH", "FAILBACK_COMPLETED", "FAILBACK_ERROR"
867
+ # resp.items[0].failback.state #=> String, one of "FAILBACK_NOT_STARTED", "FAILBACK_IN_PROGRESS", "FAILBACK_READY_FOR_LAUNCH", "FAILBACK_COMPLETED", "FAILBACK_ERROR", "FAILBACK_NOT_READY_FOR_LAUNCH", "FAILBACK_LAUNCH_STATE_NOT_AVAILABLE"
845
868
  # resp.items[0].is_drill #=> Boolean
846
869
  # resp.items[0].job_id #=> String
870
+ # resp.items[0].origin_environment #=> String, one of "ON_PREMISES", "AWS"
847
871
  # resp.items[0].point_in_time_snapshot_date_time #=> String
848
872
  # resp.items[0].recovery_instance_id #=> String
849
873
  # resp.items[0].recovery_instance_properties.cpus #=> Array
@@ -1061,6 +1085,11 @@ module Aws::Drs
1061
1085
  # resp.items[0].life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
1062
1086
  # resp.items[0].life_cycle.last_seen_by_service_date_time #=> String
1063
1087
  # resp.items[0].recovery_instance_id #=> String
1088
+ # resp.items[0].replication_direction #=> String, one of "FAILOVER", "FAILBACK"
1089
+ # resp.items[0].reversed_direction_source_server_arn #=> String
1090
+ # resp.items[0].source_cloud_properties.origin_account_id #=> String
1091
+ # resp.items[0].source_cloud_properties.origin_availability_zone #=> String
1092
+ # resp.items[0].source_cloud_properties.origin_region #=> String
1064
1093
  # resp.items[0].source_properties.cpus #=> Array
1065
1094
  # resp.items[0].source_properties.cpus[0].cores #=> Integer
1066
1095
  # resp.items[0].source_properties.cpus[0].model_name #=> String
@@ -1157,6 +1186,9 @@ module Aws::Drs
1157
1186
  # * {Types::SourceServer#last_launch_result #last_launch_result} => String
1158
1187
  # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
1159
1188
  # * {Types::SourceServer#recovery_instance_id #recovery_instance_id} => String
1189
+ # * {Types::SourceServer#replication_direction #replication_direction} => String
1190
+ # * {Types::SourceServer#reversed_direction_source_server_arn #reversed_direction_source_server_arn} => String
1191
+ # * {Types::SourceServer#source_cloud_properties #source_cloud_properties} => Types::SourceCloudProperties
1160
1192
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1161
1193
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1162
1194
  # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
@@ -1196,6 +1228,11 @@ module Aws::Drs
1196
1228
  # resp.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
1197
1229
  # resp.life_cycle.last_seen_by_service_date_time #=> String
1198
1230
  # resp.recovery_instance_id #=> String
1231
+ # resp.replication_direction #=> String, one of "FAILOVER", "FAILBACK"
1232
+ # resp.reversed_direction_source_server_arn #=> String
1233
+ # resp.source_cloud_properties.origin_account_id #=> String
1234
+ # resp.source_cloud_properties.origin_availability_zone #=> String
1235
+ # resp.source_cloud_properties.origin_region #=> String
1199
1236
  # resp.source_properties.cpus #=> Array
1200
1237
  # resp.source_properties.cpus[0].cores #=> Integer
1201
1238
  # resp.source_properties.cpus[0].model_name #=> String
@@ -1525,6 +1562,9 @@ module Aws::Drs
1525
1562
  # * {Types::SourceServer#last_launch_result #last_launch_result} => String
1526
1563
  # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
1527
1564
  # * {Types::SourceServer#recovery_instance_id #recovery_instance_id} => String
1565
+ # * {Types::SourceServer#replication_direction #replication_direction} => String
1566
+ # * {Types::SourceServer#reversed_direction_source_server_arn #reversed_direction_source_server_arn} => String
1567
+ # * {Types::SourceServer#source_cloud_properties #source_cloud_properties} => Types::SourceCloudProperties
1528
1568
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1529
1569
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1530
1570
  # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
@@ -1564,6 +1604,11 @@ module Aws::Drs
1564
1604
  # resp.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
1565
1605
  # resp.life_cycle.last_seen_by_service_date_time #=> String
1566
1606
  # resp.recovery_instance_id #=> String
1607
+ # resp.replication_direction #=> String, one of "FAILOVER", "FAILBACK"
1608
+ # resp.reversed_direction_source_server_arn #=> String
1609
+ # resp.source_cloud_properties.origin_account_id #=> String
1610
+ # resp.source_cloud_properties.origin_availability_zone #=> String
1611
+ # resp.source_cloud_properties.origin_region #=> String
1567
1612
  # resp.source_properties.cpus #=> Array
1568
1613
  # resp.source_properties.cpus[0].cores #=> Integer
1569
1614
  # resp.source_properties.cpus[0].model_name #=> String
@@ -1600,6 +1645,39 @@ module Aws::Drs
1600
1645
  req.send_request(options)
1601
1646
  end
1602
1647
 
1648
+ # Start replication to origin / target region - applies only to
1649
+ # protected instances that originated in EC2. For recovery instances on
1650
+ # target region - starts replication back to origin region. For failback
1651
+ # instances on origin region - starts replication to target region to
1652
+ # re-protect them.
1653
+ #
1654
+ # @option params [required, String] :recovery_instance_id
1655
+ # The ID of the Recovery Instance that we want to reverse the
1656
+ # replication for.
1657
+ #
1658
+ # @return [Types::ReverseReplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1659
+ #
1660
+ # * {Types::ReverseReplicationResponse#reversed_direction_source_server_arn #reversed_direction_source_server_arn} => String
1661
+ #
1662
+ # @example Request syntax with placeholder values
1663
+ #
1664
+ # resp = client.reverse_replication({
1665
+ # recovery_instance_id: "RecoveryInstanceID", # required
1666
+ # })
1667
+ #
1668
+ # @example Response structure
1669
+ #
1670
+ # resp.reversed_direction_source_server_arn #=> String
1671
+ #
1672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ReverseReplication AWS API Documentation
1673
+ #
1674
+ # @overload reverse_replication(params = {})
1675
+ # @param [Hash] params ({})
1676
+ def reverse_replication(params = {}, options = {})
1677
+ req = build_request(:reverse_replication, params)
1678
+ req.send_request(options)
1679
+ end
1680
+
1603
1681
  # Initiates a Job for launching the machine that is being failed back to
1604
1682
  # from the specified Recovery Instance. This will run conversion on the
1605
1683
  # failback client and will reboot your machine, thus completing the
@@ -1707,6 +1785,91 @@ module Aws::Drs
1707
1785
  req.send_request(options)
1708
1786
  end
1709
1787
 
1788
+ # Starts replication for a stopped Source Server. This action would make
1789
+ # the Source Server protected again and restart billing for it.
1790
+ #
1791
+ # @option params [required, String] :source_server_id
1792
+ # The ID of the Source Server to start replication for.
1793
+ #
1794
+ # @return [Types::StartReplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1795
+ #
1796
+ # * {Types::StartReplicationResponse#source_server #source_server} => Types::SourceServer
1797
+ #
1798
+ # @example Request syntax with placeholder values
1799
+ #
1800
+ # resp = client.start_replication({
1801
+ # source_server_id: "SourceServerID", # required
1802
+ # })
1803
+ #
1804
+ # @example Response structure
1805
+ #
1806
+ # resp.source_server.arn #=> String
1807
+ # resp.source_server.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
1808
+ # resp.source_server.data_replication_info.data_replication_error.raw_error #=> String
1809
+ # resp.source_server.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
1810
+ # resp.source_server.data_replication_info.data_replication_initiation.start_date_time #=> String
1811
+ # resp.source_server.data_replication_info.data_replication_initiation.steps #=> Array
1812
+ # resp.source_server.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
1813
+ # resp.source_server.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
1814
+ # resp.source_server.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
1815
+ # resp.source_server.data_replication_info.eta_date_time #=> String
1816
+ # resp.source_server.data_replication_info.lag_duration #=> String
1817
+ # resp.source_server.data_replication_info.replicated_disks #=> Array
1818
+ # resp.source_server.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
1819
+ # resp.source_server.data_replication_info.replicated_disks[0].device_name #=> String
1820
+ # resp.source_server.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
1821
+ # resp.source_server.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
1822
+ # resp.source_server.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
1823
+ # resp.source_server.last_launch_result #=> String, one of "NOT_STARTED", "PENDING", "SUCCEEDED", "FAILED"
1824
+ # resp.source_server.life_cycle.added_to_service_date_time #=> String
1825
+ # resp.source_server.life_cycle.elapsed_replication_duration #=> String
1826
+ # resp.source_server.life_cycle.first_byte_date_time #=> String
1827
+ # resp.source_server.life_cycle.last_launch.initiated.api_call_date_time #=> String
1828
+ # resp.source_server.life_cycle.last_launch.initiated.job_id #=> String
1829
+ # resp.source_server.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
1830
+ # resp.source_server.life_cycle.last_seen_by_service_date_time #=> String
1831
+ # resp.source_server.recovery_instance_id #=> String
1832
+ # resp.source_server.replication_direction #=> String, one of "FAILOVER", "FAILBACK"
1833
+ # resp.source_server.reversed_direction_source_server_arn #=> String
1834
+ # resp.source_server.source_cloud_properties.origin_account_id #=> String
1835
+ # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
1836
+ # resp.source_server.source_cloud_properties.origin_region #=> String
1837
+ # resp.source_server.source_properties.cpus #=> Array
1838
+ # resp.source_server.source_properties.cpus[0].cores #=> Integer
1839
+ # resp.source_server.source_properties.cpus[0].model_name #=> String
1840
+ # resp.source_server.source_properties.disks #=> Array
1841
+ # resp.source_server.source_properties.disks[0].bytes #=> Integer
1842
+ # resp.source_server.source_properties.disks[0].device_name #=> String
1843
+ # resp.source_server.source_properties.identification_hints.aws_instance_id #=> String
1844
+ # resp.source_server.source_properties.identification_hints.fqdn #=> String
1845
+ # resp.source_server.source_properties.identification_hints.hostname #=> String
1846
+ # resp.source_server.source_properties.identification_hints.vm_ware_uuid #=> String
1847
+ # resp.source_server.source_properties.last_updated_date_time #=> String
1848
+ # resp.source_server.source_properties.network_interfaces #=> Array
1849
+ # resp.source_server.source_properties.network_interfaces[0].ips #=> Array
1850
+ # resp.source_server.source_properties.network_interfaces[0].ips[0] #=> String
1851
+ # resp.source_server.source_properties.network_interfaces[0].is_primary #=> Boolean
1852
+ # resp.source_server.source_properties.network_interfaces[0].mac_address #=> String
1853
+ # resp.source_server.source_properties.os.full_string #=> String
1854
+ # resp.source_server.source_properties.ram_bytes #=> Integer
1855
+ # resp.source_server.source_properties.recommended_instance_type #=> String
1856
+ # resp.source_server.source_server_id #=> String
1857
+ # resp.source_server.staging_area.error_message #=> String
1858
+ # resp.source_server.staging_area.staging_account_id #=> String
1859
+ # resp.source_server.staging_area.staging_source_server_arn #=> String
1860
+ # resp.source_server.staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
1861
+ # resp.source_server.tags #=> Hash
1862
+ # resp.source_server.tags["TagKey"] #=> String
1863
+ #
1864
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StartReplication AWS API Documentation
1865
+ #
1866
+ # @overload start_replication(params = {})
1867
+ # @param [Hash] params ({})
1868
+ def start_replication(params = {}, options = {})
1869
+ req = build_request(:start_replication, params)
1870
+ req.send_request(options)
1871
+ end
1872
+
1710
1873
  # Stops the failback process for a specified Recovery Instance. This
1711
1874
  # changes the Failback State of the Recovery Instance back to
1712
1875
  # FAILBACK\_NOT\_STARTED.
@@ -1731,6 +1894,92 @@ module Aws::Drs
1731
1894
  req.send_request(options)
1732
1895
  end
1733
1896
 
1897
+ # Stops replication for a Source Server. This action would make the
1898
+ # Source Server unprotected, delete its existing snapshots and stop
1899
+ # billing for it.
1900
+ #
1901
+ # @option params [required, String] :source_server_id
1902
+ # The ID of the Source Server to stop replication for.
1903
+ #
1904
+ # @return [Types::StopReplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1905
+ #
1906
+ # * {Types::StopReplicationResponse#source_server #source_server} => Types::SourceServer
1907
+ #
1908
+ # @example Request syntax with placeholder values
1909
+ #
1910
+ # resp = client.stop_replication({
1911
+ # source_server_id: "SourceServerID", # required
1912
+ # })
1913
+ #
1914
+ # @example Response structure
1915
+ #
1916
+ # resp.source_server.arn #=> String
1917
+ # resp.source_server.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
1918
+ # resp.source_server.data_replication_info.data_replication_error.raw_error #=> String
1919
+ # resp.source_server.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
1920
+ # resp.source_server.data_replication_info.data_replication_initiation.start_date_time #=> String
1921
+ # resp.source_server.data_replication_info.data_replication_initiation.steps #=> Array
1922
+ # resp.source_server.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
1923
+ # resp.source_server.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
1924
+ # resp.source_server.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
1925
+ # resp.source_server.data_replication_info.eta_date_time #=> String
1926
+ # resp.source_server.data_replication_info.lag_duration #=> String
1927
+ # resp.source_server.data_replication_info.replicated_disks #=> Array
1928
+ # resp.source_server.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
1929
+ # resp.source_server.data_replication_info.replicated_disks[0].device_name #=> String
1930
+ # resp.source_server.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
1931
+ # resp.source_server.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
1932
+ # resp.source_server.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
1933
+ # resp.source_server.last_launch_result #=> String, one of "NOT_STARTED", "PENDING", "SUCCEEDED", "FAILED"
1934
+ # resp.source_server.life_cycle.added_to_service_date_time #=> String
1935
+ # resp.source_server.life_cycle.elapsed_replication_duration #=> String
1936
+ # resp.source_server.life_cycle.first_byte_date_time #=> String
1937
+ # resp.source_server.life_cycle.last_launch.initiated.api_call_date_time #=> String
1938
+ # resp.source_server.life_cycle.last_launch.initiated.job_id #=> String
1939
+ # resp.source_server.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
1940
+ # resp.source_server.life_cycle.last_seen_by_service_date_time #=> String
1941
+ # resp.source_server.recovery_instance_id #=> String
1942
+ # resp.source_server.replication_direction #=> String, one of "FAILOVER", "FAILBACK"
1943
+ # resp.source_server.reversed_direction_source_server_arn #=> String
1944
+ # resp.source_server.source_cloud_properties.origin_account_id #=> String
1945
+ # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
1946
+ # resp.source_server.source_cloud_properties.origin_region #=> String
1947
+ # resp.source_server.source_properties.cpus #=> Array
1948
+ # resp.source_server.source_properties.cpus[0].cores #=> Integer
1949
+ # resp.source_server.source_properties.cpus[0].model_name #=> String
1950
+ # resp.source_server.source_properties.disks #=> Array
1951
+ # resp.source_server.source_properties.disks[0].bytes #=> Integer
1952
+ # resp.source_server.source_properties.disks[0].device_name #=> String
1953
+ # resp.source_server.source_properties.identification_hints.aws_instance_id #=> String
1954
+ # resp.source_server.source_properties.identification_hints.fqdn #=> String
1955
+ # resp.source_server.source_properties.identification_hints.hostname #=> String
1956
+ # resp.source_server.source_properties.identification_hints.vm_ware_uuid #=> String
1957
+ # resp.source_server.source_properties.last_updated_date_time #=> String
1958
+ # resp.source_server.source_properties.network_interfaces #=> Array
1959
+ # resp.source_server.source_properties.network_interfaces[0].ips #=> Array
1960
+ # resp.source_server.source_properties.network_interfaces[0].ips[0] #=> String
1961
+ # resp.source_server.source_properties.network_interfaces[0].is_primary #=> Boolean
1962
+ # resp.source_server.source_properties.network_interfaces[0].mac_address #=> String
1963
+ # resp.source_server.source_properties.os.full_string #=> String
1964
+ # resp.source_server.source_properties.ram_bytes #=> Integer
1965
+ # resp.source_server.source_properties.recommended_instance_type #=> String
1966
+ # resp.source_server.source_server_id #=> String
1967
+ # resp.source_server.staging_area.error_message #=> String
1968
+ # resp.source_server.staging_area.staging_account_id #=> String
1969
+ # resp.source_server.staging_area.staging_source_server_arn #=> String
1970
+ # resp.source_server.staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
1971
+ # resp.source_server.tags #=> Hash
1972
+ # resp.source_server.tags["TagKey"] #=> String
1973
+ #
1974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StopReplication AWS API Documentation
1975
+ #
1976
+ # @overload stop_replication(params = {})
1977
+ # @param [Hash] params ({})
1978
+ def stop_replication(params = {}, options = {})
1979
+ req = build_request(:stop_replication, params)
1980
+ req.send_request(options)
1981
+ end
1982
+
1734
1983
  # Adds or overwrites only the specified tags for the specified Elastic
1735
1984
  # Disaster Recovery resource or resources. When you specify an existing
1736
1985
  # tag key, the value is overwritten with the new value. Each resource
@@ -2250,7 +2499,7 @@ module Aws::Drs
2250
2499
  params: params,
2251
2500
  config: config)
2252
2501
  context[:gem_name] = 'aws-sdk-drs'
2253
- context[:gem_version] = '1.7.0'
2502
+ context[:gem_version] = '1.9.0'
2254
2503
  Seahorse::Client::Request.new(handlers, context)
2255
2504
  end
2256
2505
 
@@ -19,6 +19,8 @@ module Aws::Drs
19
19
  AccountID = Shapes::StringShape.new(name: 'AccountID')
20
20
  AccountIDs = Shapes::ListShape.new(name: 'AccountIDs')
21
21
  Accounts = Shapes::ListShape.new(name: 'Accounts')
22
+ AwsAvailabilityZone = Shapes::StringShape.new(name: 'AwsAvailabilityZone')
23
+ AwsRegion = Shapes::StringShape.new(name: 'AwsRegion')
22
24
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
23
25
  BoundedString = Shapes::StringShape.new(name: 'BoundedString')
24
26
  CPU = Shapes::StructureShape.new(name: 'CPU')
@@ -76,6 +78,7 @@ module Aws::Drs
76
78
  EbsSnapshotsList = Shapes::ListShape.new(name: 'EbsSnapshotsList')
77
79
  EbsVolumeID = Shapes::StringShape.new(name: 'EbsVolumeID')
78
80
  ExtensionStatus = Shapes::StringShape.new(name: 'ExtensionStatus')
81
+ FailbackLaunchType = Shapes::StringShape.new(name: 'FailbackLaunchType')
79
82
  FailbackReplicationError = Shapes::StringShape.new(name: 'FailbackReplicationError')
80
83
  FailbackState = Shapes::StringShape.new(name: 'FailbackState')
81
84
  GetFailbackReplicationConfigurationRequest = Shapes::StructureShape.new(name: 'GetFailbackReplicationConfigurationRequest')
@@ -120,6 +123,7 @@ module Aws::Drs
120
123
  NetworkInterface = Shapes::StructureShape.new(name: 'NetworkInterface')
121
124
  NetworkInterfaces = Shapes::ListShape.new(name: 'NetworkInterfaces')
122
125
  OS = Shapes::StructureShape.new(name: 'OS')
126
+ OriginEnvironment = Shapes::StringShape.new(name: 'OriginEnvironment')
123
127
  PITPolicy = Shapes::ListShape.new(name: 'PITPolicy')
124
128
  PITPolicyRule = Shapes::StructureShape.new(name: 'PITPolicyRule')
125
129
  PITPolicyRuleUnits = Shapes::StringShape.new(name: 'PITPolicyRuleUnits')
@@ -160,12 +164,16 @@ module Aws::Drs
160
164
  ReplicationConfigurationTemplateID = Shapes::StringShape.new(name: 'ReplicationConfigurationTemplateID')
161
165
  ReplicationConfigurationTemplateIDs = Shapes::ListShape.new(name: 'ReplicationConfigurationTemplateIDs')
162
166
  ReplicationConfigurationTemplates = Shapes::ListShape.new(name: 'ReplicationConfigurationTemplates')
167
+ ReplicationDirection = Shapes::StringShape.new(name: 'ReplicationDirection')
163
168
  ReplicationServersSecurityGroupsIDs = Shapes::ListShape.new(name: 'ReplicationServersSecurityGroupsIDs')
164
169
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
165
170
  RetryDataReplicationRequest = Shapes::StructureShape.new(name: 'RetryDataReplicationRequest')
171
+ ReverseReplicationRequest = Shapes::StructureShape.new(name: 'ReverseReplicationRequest')
172
+ ReverseReplicationResponse = Shapes::StructureShape.new(name: 'ReverseReplicationResponse')
166
173
  SecurityGroupID = Shapes::StringShape.new(name: 'SecurityGroupID')
167
174
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
168
175
  SmallBoundedString = Shapes::StringShape.new(name: 'SmallBoundedString')
176
+ SourceCloudProperties = Shapes::StructureShape.new(name: 'SourceCloudProperties')
169
177
  SourceProperties = Shapes::StructureShape.new(name: 'SourceProperties')
170
178
  SourceServer = Shapes::StructureShape.new(name: 'SourceServer')
171
179
  SourceServerARN = Shapes::StringShape.new(name: 'SourceServerARN')
@@ -182,7 +190,11 @@ module Aws::Drs
182
190
  StartRecoveryRequestSourceServer = Shapes::StructureShape.new(name: 'StartRecoveryRequestSourceServer')
183
191
  StartRecoveryRequestSourceServers = Shapes::ListShape.new(name: 'StartRecoveryRequestSourceServers')
184
192
  StartRecoveryResponse = Shapes::StructureShape.new(name: 'StartRecoveryResponse')
193
+ StartReplicationRequest = Shapes::StructureShape.new(name: 'StartReplicationRequest')
194
+ StartReplicationResponse = Shapes::StructureShape.new(name: 'StartReplicationResponse')
185
195
  StopFailbackRequest = Shapes::StructureShape.new(name: 'StopFailbackRequest')
196
+ StopReplicationRequest = Shapes::StructureShape.new(name: 'StopReplicationRequest')
197
+ StopReplicationResponse = Shapes::StructureShape.new(name: 'StopReplicationResponse')
186
198
  StrictlyPositiveInteger = Shapes::IntegerShape.new(name: 'StrictlyPositiveInteger')
187
199
  SubnetID = Shapes::StringShape.new(name: 'SubnetID')
188
200
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -550,6 +562,7 @@ module Aws::Drs
550
562
  RecoveryInstance.add_member(:failback, Shapes::ShapeRef.new(shape: RecoveryInstanceFailback, location_name: "failback"))
551
563
  RecoveryInstance.add_member(:is_drill, Shapes::ShapeRef.new(shape: Boolean, location_name: "isDrill"))
552
564
  RecoveryInstance.add_member(:job_id, Shapes::ShapeRef.new(shape: JobID, location_name: "jobID"))
565
+ RecoveryInstance.add_member(:origin_environment, Shapes::ShapeRef.new(shape: OriginEnvironment, location_name: "originEnvironment"))
553
566
  RecoveryInstance.add_member(:point_in_time_snapshot_date_time, Shapes::ShapeRef.new(shape: ISO8601DatetimeString, location_name: "pointInTimeSnapshotDateTime"))
554
567
  RecoveryInstance.add_member(:recovery_instance_id, Shapes::ShapeRef.new(shape: RecoveryInstanceID, location_name: "recoveryInstanceID"))
555
568
  RecoveryInstance.add_member(:recovery_instance_properties, Shapes::ShapeRef.new(shape: RecoveryInstanceProperties, location_name: "recoveryInstanceProperties"))
@@ -601,6 +614,7 @@ module Aws::Drs
601
614
  RecoveryInstanceFailback.add_member(:failback_client_last_seen_by_service_date_time, Shapes::ShapeRef.new(shape: ISO8601DatetimeString, location_name: "failbackClientLastSeenByServiceDateTime"))
602
615
  RecoveryInstanceFailback.add_member(:failback_initiation_time, Shapes::ShapeRef.new(shape: ISO8601DatetimeString, location_name: "failbackInitiationTime"))
603
616
  RecoveryInstanceFailback.add_member(:failback_job_id, Shapes::ShapeRef.new(shape: JobID, location_name: "failbackJobID"))
617
+ RecoveryInstanceFailback.add_member(:failback_launch_type, Shapes::ShapeRef.new(shape: FailbackLaunchType, location_name: "failbackLaunchType"))
604
618
  RecoveryInstanceFailback.add_member(:failback_to_original_server, Shapes::ShapeRef.new(shape: Boolean, location_name: "failbackToOriginalServer"))
605
619
  RecoveryInstanceFailback.add_member(:first_byte_date_time, Shapes::ShapeRef.new(shape: ISO8601DatetimeString, location_name: "firstByteDateTime"))
606
620
  RecoveryInstanceFailback.add_member(:state, Shapes::ShapeRef.new(shape: FailbackState, location_name: "state"))
@@ -689,6 +703,12 @@ module Aws::Drs
689
703
  RetryDataReplicationRequest.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, required: true, location_name: "sourceServerID"))
690
704
  RetryDataReplicationRequest.struct_class = Types::RetryDataReplicationRequest
691
705
 
706
+ ReverseReplicationRequest.add_member(:recovery_instance_id, Shapes::ShapeRef.new(shape: RecoveryInstanceID, required: true, location_name: "recoveryInstanceID"))
707
+ ReverseReplicationRequest.struct_class = Types::ReverseReplicationRequest
708
+
709
+ ReverseReplicationResponse.add_member(:reversed_direction_source_server_arn, Shapes::ShapeRef.new(shape: SourceServerARN, location_name: "reversedDirectionSourceServerArn"))
710
+ ReverseReplicationResponse.struct_class = Types::ReverseReplicationResponse
711
+
692
712
  ServiceQuotaExceededException.add_member(:code, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "code"))
693
713
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "message"))
694
714
  ServiceQuotaExceededException.add_member(:quota_code, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "quotaCode"))
@@ -697,6 +717,11 @@ module Aws::Drs
697
717
  ServiceQuotaExceededException.add_member(:service_code, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "serviceCode"))
698
718
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
699
719
 
720
+ SourceCloudProperties.add_member(:origin_account_id, Shapes::ShapeRef.new(shape: AccountID, location_name: "originAccountID"))
721
+ SourceCloudProperties.add_member(:origin_availability_zone, Shapes::ShapeRef.new(shape: AwsAvailabilityZone, location_name: "originAvailabilityZone"))
722
+ SourceCloudProperties.add_member(:origin_region, Shapes::ShapeRef.new(shape: AwsRegion, location_name: "originRegion"))
723
+ SourceCloudProperties.struct_class = Types::SourceCloudProperties
724
+
700
725
  SourceProperties.add_member(:cpus, Shapes::ShapeRef.new(shape: Cpus, location_name: "cpus"))
701
726
  SourceProperties.add_member(:disks, Shapes::ShapeRef.new(shape: Disks, location_name: "disks"))
702
727
  SourceProperties.add_member(:identification_hints, Shapes::ShapeRef.new(shape: IdentificationHints, location_name: "identificationHints"))
@@ -712,6 +737,9 @@ module Aws::Drs
712
737
  SourceServer.add_member(:last_launch_result, Shapes::ShapeRef.new(shape: LastLaunchResult, location_name: "lastLaunchResult"))
713
738
  SourceServer.add_member(:life_cycle, Shapes::ShapeRef.new(shape: LifeCycle, location_name: "lifeCycle"))
714
739
  SourceServer.add_member(:recovery_instance_id, Shapes::ShapeRef.new(shape: RecoveryInstanceID, location_name: "recoveryInstanceId"))
740
+ SourceServer.add_member(:replication_direction, Shapes::ShapeRef.new(shape: ReplicationDirection, location_name: "replicationDirection"))
741
+ SourceServer.add_member(:reversed_direction_source_server_arn, Shapes::ShapeRef.new(shape: SourceServerARN, location_name: "reversedDirectionSourceServerArn"))
742
+ SourceServer.add_member(:source_cloud_properties, Shapes::ShapeRef.new(shape: SourceCloudProperties, location_name: "sourceCloudProperties"))
715
743
  SourceServer.add_member(:source_properties, Shapes::ShapeRef.new(shape: SourceProperties, location_name: "sourceProperties"))
716
744
  SourceServer.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, location_name: "sourceServerID"))
717
745
  SourceServer.add_member(:staging_area, Shapes::ShapeRef.new(shape: StagingArea, location_name: "stagingArea"))
@@ -758,9 +786,21 @@ module Aws::Drs
758
786
  StartRecoveryResponse.add_member(:job, Shapes::ShapeRef.new(shape: Job, location_name: "job"))
759
787
  StartRecoveryResponse.struct_class = Types::StartRecoveryResponse
760
788
 
789
+ StartReplicationRequest.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, required: true, location_name: "sourceServerID"))
790
+ StartReplicationRequest.struct_class = Types::StartReplicationRequest
791
+
792
+ StartReplicationResponse.add_member(:source_server, Shapes::ShapeRef.new(shape: SourceServer, location_name: "sourceServer"))
793
+ StartReplicationResponse.struct_class = Types::StartReplicationResponse
794
+
761
795
  StopFailbackRequest.add_member(:recovery_instance_id, Shapes::ShapeRef.new(shape: RecoveryInstanceID, required: true, location_name: "recoveryInstanceID"))
762
796
  StopFailbackRequest.struct_class = Types::StopFailbackRequest
763
797
 
798
+ StopReplicationRequest.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, required: true, location_name: "sourceServerID"))
799
+ StopReplicationRequest.struct_class = Types::StopReplicationRequest
800
+
801
+ StopReplicationResponse.add_member(:source_server, Shapes::ShapeRef.new(shape: SourceServer, location_name: "sourceServer"))
802
+ StopReplicationResponse.struct_class = Types::StopReplicationResponse
803
+
764
804
  TagKeys.member = Shapes::ShapeRef.new(shape: TagKey)
765
805
 
766
806
  TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "resourceArn"))
@@ -1208,6 +1248,21 @@ module Aws::Drs
1208
1248
  o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1209
1249
  end)
1210
1250
 
1251
+ api.add_operation(:reverse_replication, Seahorse::Model::Operation.new.tap do |o|
1252
+ o.name = "ReverseReplication"
1253
+ o.http_method = "POST"
1254
+ o.http_request_uri = "/ReverseReplication"
1255
+ o.input = Shapes::ShapeRef.new(shape: ReverseReplicationRequest)
1256
+ o.output = Shapes::ShapeRef.new(shape: ReverseReplicationResponse)
1257
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1258
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1259
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1260
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1261
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1262
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1263
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1264
+ end)
1265
+
1211
1266
  api.add_operation(:start_failback_launch, Seahorse::Model::Operation.new.tap do |o|
1212
1267
  o.name = "StartFailbackLaunch"
1213
1268
  o.http_method = "POST"
@@ -1235,6 +1290,19 @@ module Aws::Drs
1235
1290
  o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1236
1291
  end)
1237
1292
 
1293
+ api.add_operation(:start_replication, Seahorse::Model::Operation.new.tap do |o|
1294
+ o.name = "StartReplication"
1295
+ o.http_method = "POST"
1296
+ o.http_request_uri = "/StartReplication"
1297
+ o.input = Shapes::ShapeRef.new(shape: StartReplicationRequest)
1298
+ o.output = Shapes::ShapeRef.new(shape: StartReplicationResponse)
1299
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1300
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1301
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1302
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1303
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1304
+ end)
1305
+
1238
1306
  api.add_operation(:stop_failback, Seahorse::Model::Operation.new.tap do |o|
1239
1307
  o.name = "StopFailback"
1240
1308
  o.http_method = "POST"
@@ -1247,6 +1315,19 @@ module Aws::Drs
1247
1315
  o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1248
1316
  end)
1249
1317
 
1318
+ api.add_operation(:stop_replication, Seahorse::Model::Operation.new.tap do |o|
1319
+ o.name = "StopReplication"
1320
+ o.http_method = "POST"
1321
+ o.http_request_uri = "/StopReplication"
1322
+ o.input = Shapes::ShapeRef.new(shape: StopReplicationRequest)
1323
+ o.output = Shapes::ShapeRef.new(shape: StopReplicationResponse)
1324
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1325
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1326
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1327
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1328
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1329
+ end)
1330
+
1250
1331
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1251
1332
  o.name = "TagResource"
1252
1333
  o.http_method = "POST"