aws-sdk-drs 1.4.0 → 1.5.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: 55867f59f20936397b7e767a637158917b74c6145e3850372cde9d43f3a11ce4
4
- data.tar.gz: 50d9be02112995362b8a0c9a973f31cb3ef75eb2c48f61a41c50f2084b72f149
3
+ metadata.gz: 36d954c3949658a39f4f4c3403b1426446ffa79560a1a26f942b706eba668f5a
4
+ data.tar.gz: e7df3eae54a9452f2cafa4727e5ce8cfd3e20772119490deaa327d772eb219af
5
5
  SHA512:
6
- metadata.gz: 91bd13474923e65f9b58bb1ea7131036c94e13f051c99b168bb6dd37c51f0bacc1fc0291dc84d15d46bbf958748e1efc7a133d895d1d2cd8ad0325c82f369569
7
- data.tar.gz: 70033eb4191fe8219922d91127c8fdfc159d534df3fcd958293f3804d70f763606078113d5eb77fb312ba38306309e134aebacd7d0925c3f1e1f5ea4655f14f0
6
+ metadata.gz: 6f572556ff0d58b2a19caf336bfaeb1cf416093665b6ece62035da22fc481d4c7a8863e2db89c8131ff432b998358ce1f62ef602da05fa6511d8254a07efaf56
7
+ data.tar.gz: f0bc3c566b88d10d0ad8fbda03851736e82a33fb99b4092ac44b5c8e2f6bc7627485c0ab063557e04239368df6f6b07cb131c4c798de047d0bce55875f59f811
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.5.0 (2022-05-31)
5
+ ------------------
6
+
7
+ * Feature - Changed existing APIs and added new APIs to accommodate using multiple AWS accounts with AWS Elastic Disaster Recovery.
8
+
4
9
  1.4.0 (2022-02-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.4.0
1
+ 1.5.0
@@ -351,6 +351,93 @@ module Aws::Drs
351
351
 
352
352
  # @!group API Operations
353
353
 
354
+ # Create an extended source server in the target Account based on the
355
+ # source server in staging account.
356
+ #
357
+ # @option params [required, String] :source_server_arn
358
+ # This defines the ARN of the source server in staging Account based on
359
+ # which you want to create an extended source server.
360
+ #
361
+ # @option params [Hash<String,String>] :tags
362
+ # A list of tags associated with the extended source server.
363
+ #
364
+ # @return [Types::CreateExtendedSourceServerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
365
+ #
366
+ # * {Types::CreateExtendedSourceServerResponse#source_server #source_server} => Types::SourceServer
367
+ #
368
+ # @example Request syntax with placeholder values
369
+ #
370
+ # resp = client.create_extended_source_server({
371
+ # source_server_arn: "SourceServerARN", # required
372
+ # tags: {
373
+ # "TagKey" => "TagValue",
374
+ # },
375
+ # })
376
+ #
377
+ # @example Response structure
378
+ #
379
+ # resp.source_server.arn #=> String
380
+ # 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"
381
+ # resp.source_server.data_replication_info.data_replication_error.raw_error #=> String
382
+ # resp.source_server.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
383
+ # resp.source_server.data_replication_info.data_replication_initiation.start_date_time #=> String
384
+ # resp.source_server.data_replication_info.data_replication_initiation.steps #=> Array
385
+ # 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"
386
+ # resp.source_server.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
387
+ # resp.source_server.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
388
+ # resp.source_server.data_replication_info.eta_date_time #=> String
389
+ # resp.source_server.data_replication_info.lag_duration #=> String
390
+ # resp.source_server.data_replication_info.replicated_disks #=> Array
391
+ # resp.source_server.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
392
+ # resp.source_server.data_replication_info.replicated_disks[0].device_name #=> String
393
+ # resp.source_server.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
394
+ # resp.source_server.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
395
+ # resp.source_server.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
396
+ # resp.source_server.last_launch_result #=> String, one of "NOT_STARTED", "PENDING", "SUCCEEDED", "FAILED"
397
+ # resp.source_server.life_cycle.added_to_service_date_time #=> String
398
+ # resp.source_server.life_cycle.elapsed_replication_duration #=> String
399
+ # resp.source_server.life_cycle.first_byte_date_time #=> String
400
+ # resp.source_server.life_cycle.last_launch.initiated.api_call_date_time #=> String
401
+ # resp.source_server.life_cycle.last_launch.initiated.job_id #=> String
402
+ # resp.source_server.life_cycle.last_launch.initiated.type #=> String, one of "RECOVERY", "DRILL"
403
+ # resp.source_server.life_cycle.last_seen_by_service_date_time #=> String
404
+ # resp.source_server.recovery_instance_id #=> String
405
+ # resp.source_server.source_properties.cpus #=> Array
406
+ # resp.source_server.source_properties.cpus[0].cores #=> Integer
407
+ # resp.source_server.source_properties.cpus[0].model_name #=> String
408
+ # resp.source_server.source_properties.disks #=> Array
409
+ # resp.source_server.source_properties.disks[0].bytes #=> Integer
410
+ # resp.source_server.source_properties.disks[0].device_name #=> String
411
+ # resp.source_server.source_properties.identification_hints.aws_instance_id #=> String
412
+ # resp.source_server.source_properties.identification_hints.fqdn #=> String
413
+ # resp.source_server.source_properties.identification_hints.hostname #=> String
414
+ # resp.source_server.source_properties.identification_hints.vm_ware_uuid #=> String
415
+ # resp.source_server.source_properties.last_updated_date_time #=> String
416
+ # resp.source_server.source_properties.network_interfaces #=> Array
417
+ # resp.source_server.source_properties.network_interfaces[0].ips #=> Array
418
+ # resp.source_server.source_properties.network_interfaces[0].ips[0] #=> String
419
+ # resp.source_server.source_properties.network_interfaces[0].is_primary #=> Boolean
420
+ # resp.source_server.source_properties.network_interfaces[0].mac_address #=> String
421
+ # resp.source_server.source_properties.os.full_string #=> String
422
+ # resp.source_server.source_properties.ram_bytes #=> Integer
423
+ # resp.source_server.source_properties.recommended_instance_type #=> String
424
+ # resp.source_server.source_server_id #=> String
425
+ # resp.source_server.staging_area.error_message #=> String
426
+ # resp.source_server.staging_area.staging_account_id #=> String
427
+ # resp.source_server.staging_area.staging_source_server_arn #=> String
428
+ # resp.source_server.staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
429
+ # resp.source_server.tags #=> Hash
430
+ # resp.source_server.tags["TagKey"] #=> String
431
+ #
432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/CreateExtendedSourceServer AWS API Documentation
433
+ #
434
+ # @overload create_extended_source_server(params = {})
435
+ # @param [Hash] params ({})
436
+ def create_extended_source_server(params = {}, options = {})
437
+ req = build_request(:create_extended_source_server, params)
438
+ req.send_request(options)
439
+ end
440
+
354
441
  # Creates a new ReplicationConfigurationTemplate.
355
442
  #
356
443
  # @option params [required, Boolean] :associate_default_security_group
@@ -609,6 +696,14 @@ module Aws::Drs
609
696
  #
610
697
  # resp.items #=> Array
611
698
  # resp.items[0].event #=> String, one of "JOB_START", "SERVER_SKIPPED", "CLEANUP_START", "CLEANUP_END", "CLEANUP_FAIL", "SNAPSHOT_START", "SNAPSHOT_END", "SNAPSHOT_FAIL", "USING_PREVIOUS_SNAPSHOT", "USING_PREVIOUS_SNAPSHOT_FAILED", "CONVERSION_START", "CONVERSION_END", "CONVERSION_FAIL", "LAUNCH_START", "LAUNCH_FAILED", "JOB_CANCEL", "JOB_END"
699
+ # resp.items[0].event_data.conversion_properties.data_timestamp #=> String
700
+ # resp.items[0].event_data.conversion_properties.force_uefi #=> Boolean
701
+ # resp.items[0].event_data.conversion_properties.root_volume_name #=> String
702
+ # resp.items[0].event_data.conversion_properties.volume_to_conversion_map #=> Hash
703
+ # resp.items[0].event_data.conversion_properties.volume_to_conversion_map["LargeBoundedString"] #=> Hash
704
+ # resp.items[0].event_data.conversion_properties.volume_to_conversion_map["LargeBoundedString"]["ebsSnapshot"] #=> String
705
+ # resp.items[0].event_data.conversion_properties.volume_to_volume_size #=> Hash
706
+ # resp.items[0].event_data.conversion_properties.volume_to_volume_size["LargeBoundedString"] #=> Integer
612
707
  # resp.items[0].event_data.conversion_server_id #=> String
613
708
  # resp.items[0].event_data.raw_error #=> String
614
709
  # resp.items[0].event_data.source_server_id #=> String
@@ -633,7 +728,7 @@ module Aws::Drs
633
728
  # TerminateDiagnosticInstances, which are APIs available only to
634
729
  # *Support* and only used in response to relevant support tickets.
635
730
  #
636
- # @option params [required, Types::DescribeJobsRequestFilters] :filters
731
+ # @option params [Types::DescribeJobsRequestFilters] :filters
637
732
  # A set of filters by which to return Jobs.
638
733
  #
639
734
  # @option params [Integer] :max_results
@@ -652,7 +747,7 @@ module Aws::Drs
652
747
  # @example Request syntax with placeholder values
653
748
  #
654
749
  # resp = client.describe_jobs({
655
- # filters: { # required
750
+ # filters: {
656
751
  # from_date: "ISO8601DatetimeString",
657
752
  # job_i_ds: ["JobID"],
658
753
  # to_date: "ISO8601DatetimeString",
@@ -667,7 +762,7 @@ module Aws::Drs
667
762
  # resp.items[0].arn #=> String
668
763
  # resp.items[0].creation_date_time #=> String
669
764
  # resp.items[0].end_date_time #=> String
670
- # resp.items[0].initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES"
765
+ # resp.items[0].initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
671
766
  # resp.items[0].job_id #=> String
672
767
  # resp.items[0].participating_servers #=> Array
673
768
  # resp.items[0].participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
@@ -676,7 +771,7 @@ module Aws::Drs
676
771
  # resp.items[0].status #=> String, one of "PENDING", "STARTED", "COMPLETED"
677
772
  # resp.items[0].tags #=> Hash
678
773
  # resp.items[0].tags["TagKey"] #=> String
679
- # resp.items[0].type #=> String, one of "LAUNCH", "TERMINATE"
774
+ # resp.items[0].type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
680
775
  # resp.next_token #=> String
681
776
  #
682
777
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DescribeJobs AWS API Documentation
@@ -690,7 +785,7 @@ module Aws::Drs
690
785
 
691
786
  # Lists all Recovery Instances or multiple Recovery Instances by ID.
692
787
  #
693
- # @option params [required, Types::DescribeRecoveryInstancesRequestFilters] :filters
788
+ # @option params [Types::DescribeRecoveryInstancesRequestFilters] :filters
694
789
  # A set of filters by which to return Recovery Instances.
695
790
  #
696
791
  # @option params [Integer] :max_results
@@ -709,7 +804,7 @@ module Aws::Drs
709
804
  # @example Request syntax with placeholder values
710
805
  #
711
806
  # resp = client.describe_recovery_instances({
712
- # filters: { # required
807
+ # filters: {
713
808
  # recovery_instance_i_ds: ["RecoveryInstanceID"],
714
809
  # source_server_i_ds: ["SourceServerID"],
715
810
  # },
@@ -850,7 +945,7 @@ module Aws::Drs
850
945
  # @option params [String] :next_token
851
946
  # The token of the next Replication Configuration Template to retrieve.
852
947
  #
853
- # @option params [required, Array<String>] :replication_configuration_template_i_ds
948
+ # @option params [Array<String>] :replication_configuration_template_i_ds
854
949
  # The IDs of the Replication Configuration Templates to retrieve. An
855
950
  # empty list means all Replication Configuration Templates.
856
951
  #
@@ -866,7 +961,7 @@ module Aws::Drs
866
961
  # resp = client.describe_replication_configuration_templates({
867
962
  # max_results: 1,
868
963
  # next_token: "PaginationToken",
869
- # replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"], # required
964
+ # replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"],
870
965
  # })
871
966
  #
872
967
  # @example Response structure
@@ -909,7 +1004,7 @@ module Aws::Drs
909
1004
 
910
1005
  # Lists all Source Servers or multiple Source Servers filtered by ID.
911
1006
  #
912
- # @option params [required, Types::DescribeSourceServersRequestFilters] :filters
1007
+ # @option params [Types::DescribeSourceServersRequestFilters] :filters
913
1008
  # A set of filters by which to return Source Servers.
914
1009
  #
915
1010
  # @option params [Integer] :max_results
@@ -928,9 +1023,10 @@ module Aws::Drs
928
1023
  # @example Request syntax with placeholder values
929
1024
  #
930
1025
  # resp = client.describe_source_servers({
931
- # filters: { # required
1026
+ # filters: {
932
1027
  # hardware_id: "BoundedString",
933
1028
  # source_server_i_ds: ["SourceServerID"],
1029
+ # staging_account_i_ds: ["AccountID"],
934
1030
  # },
935
1031
  # max_results: 1,
936
1032
  # next_token: "PaginationToken",
@@ -985,6 +1081,10 @@ module Aws::Drs
985
1081
  # resp.items[0].source_properties.ram_bytes #=> Integer
986
1082
  # resp.items[0].source_properties.recommended_instance_type #=> String
987
1083
  # resp.items[0].source_server_id #=> String
1084
+ # resp.items[0].staging_area.error_message #=> String
1085
+ # resp.items[0].staging_area.staging_account_id #=> String
1086
+ # resp.items[0].staging_area.staging_source_server_arn #=> String
1087
+ # resp.items[0].staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
988
1088
  # resp.items[0].tags #=> Hash
989
1089
  # resp.items[0].tags["TagKey"] #=> String
990
1090
  # resp.next_token #=> String
@@ -1059,6 +1159,7 @@ module Aws::Drs
1059
1159
  # * {Types::SourceServer#recovery_instance_id #recovery_instance_id} => String
1060
1160
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1061
1161
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1162
+ # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
1062
1163
  # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
1063
1164
  #
1064
1165
  # @example Request syntax with placeholder values
@@ -1115,6 +1216,10 @@ module Aws::Drs
1115
1216
  # resp.source_properties.ram_bytes #=> Integer
1116
1217
  # resp.source_properties.recommended_instance_type #=> String
1117
1218
  # resp.source_server_id #=> String
1219
+ # resp.staging_area.error_message #=> String
1220
+ # resp.staging_area.staging_account_id #=> String
1221
+ # resp.staging_area.staging_source_server_arn #=> String
1222
+ # resp.staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
1118
1223
  # resp.tags #=> Hash
1119
1224
  # resp.tags["TagKey"] #=> String
1120
1225
  #
@@ -1289,6 +1394,92 @@ module Aws::Drs
1289
1394
  req.send_request(options)
1290
1395
  end
1291
1396
 
1397
+ # Returns a list of source servers on a staging account that are
1398
+ # extensible, which means that: a. The source server is not already
1399
+ # extended into this Account. b. The source server on the Account we’re
1400
+ # reading from is not an extension of another source server.
1401
+ #
1402
+ # @option params [Integer] :max_results
1403
+ # The maximum number of extensible source servers to retrieve.
1404
+ #
1405
+ # @option params [String] :next_token
1406
+ # The token of the next extensible source server to retrieve.
1407
+ #
1408
+ # @option params [required, String] :staging_account_id
1409
+ # The Id of the staging Account to retrieve extensible source servers
1410
+ # from.
1411
+ #
1412
+ # @return [Types::ListExtensibleSourceServersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1413
+ #
1414
+ # * {Types::ListExtensibleSourceServersResponse#items #items} => Array&lt;Types::StagingSourceServer&gt;
1415
+ # * {Types::ListExtensibleSourceServersResponse#next_token #next_token} => String
1416
+ #
1417
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1418
+ #
1419
+ # @example Request syntax with placeholder values
1420
+ #
1421
+ # resp = client.list_extensible_source_servers({
1422
+ # max_results: 1,
1423
+ # next_token: "PaginationToken",
1424
+ # staging_account_id: "AccountID", # required
1425
+ # })
1426
+ #
1427
+ # @example Response structure
1428
+ #
1429
+ # resp.items #=> Array
1430
+ # resp.items[0].arn #=> String
1431
+ # resp.items[0].hostname #=> String
1432
+ # resp.items[0].tags #=> Hash
1433
+ # resp.items[0].tags["TagKey"] #=> String
1434
+ # resp.next_token #=> String
1435
+ #
1436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListExtensibleSourceServers AWS API Documentation
1437
+ #
1438
+ # @overload list_extensible_source_servers(params = {})
1439
+ # @param [Hash] params ({})
1440
+ def list_extensible_source_servers(params = {}, options = {})
1441
+ req = build_request(:list_extensible_source_servers, params)
1442
+ req.send_request(options)
1443
+ end
1444
+
1445
+ # Returns an array of staging accounts for existing extended source
1446
+ # servers.
1447
+ #
1448
+ # @option params [Integer] :max_results
1449
+ # The maximum number of staging Accounts to retrieve.
1450
+ #
1451
+ # @option params [String] :next_token
1452
+ # The token of the next staging Account to retrieve.
1453
+ #
1454
+ # @return [Types::ListStagingAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1455
+ #
1456
+ # * {Types::ListStagingAccountsResponse#accounts #accounts} => Array&lt;Types::Account&gt;
1457
+ # * {Types::ListStagingAccountsResponse#next_token #next_token} => String
1458
+ #
1459
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1460
+ #
1461
+ # @example Request syntax with placeholder values
1462
+ #
1463
+ # resp = client.list_staging_accounts({
1464
+ # max_results: 1,
1465
+ # next_token: "PaginationToken",
1466
+ # })
1467
+ #
1468
+ # @example Response structure
1469
+ #
1470
+ # resp.accounts #=> Array
1471
+ # resp.accounts[0].account_id #=> String
1472
+ # resp.next_token #=> String
1473
+ #
1474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListStagingAccounts AWS API Documentation
1475
+ #
1476
+ # @overload list_staging_accounts(params = {})
1477
+ # @param [Hash] params ({})
1478
+ def list_staging_accounts(params = {}, options = {})
1479
+ req = build_request(:list_staging_accounts, params)
1480
+ req.send_request(options)
1481
+ end
1482
+
1292
1483
  # List all tags for your Elastic Disaster Recovery resources.
1293
1484
  #
1294
1485
  # @option params [required, String] :resource_arn
@@ -1335,6 +1526,7 @@ module Aws::Drs
1335
1526
  # * {Types::SourceServer#recovery_instance_id #recovery_instance_id} => String
1336
1527
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1337
1528
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1529
+ # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
1338
1530
  # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
1339
1531
  #
1340
1532
  # @example Request syntax with placeholder values
@@ -1391,6 +1583,10 @@ module Aws::Drs
1391
1583
  # resp.source_properties.ram_bytes #=> Integer
1392
1584
  # resp.source_properties.recommended_instance_type #=> String
1393
1585
  # resp.source_server_id #=> String
1586
+ # resp.staging_area.error_message #=> String
1587
+ # resp.staging_area.staging_account_id #=> String
1588
+ # resp.staging_area.staging_source_server_arn #=> String
1589
+ # resp.staging_area.status #=> String, one of "EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"
1394
1590
  # resp.tags #=> Hash
1395
1591
  # resp.tags["TagKey"] #=> String
1396
1592
  #
@@ -1433,7 +1629,7 @@ module Aws::Drs
1433
1629
  # resp.job.arn #=> String
1434
1630
  # resp.job.creation_date_time #=> String
1435
1631
  # resp.job.end_date_time #=> String
1436
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES"
1632
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
1437
1633
  # resp.job.job_id #=> String
1438
1634
  # resp.job.participating_servers #=> Array
1439
1635
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
@@ -1442,7 +1638,7 @@ module Aws::Drs
1442
1638
  # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1443
1639
  # resp.job.tags #=> Hash
1444
1640
  # resp.job.tags["TagKey"] #=> String
1445
- # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1641
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
1446
1642
  #
1447
1643
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StartFailbackLaunch AWS API Documentation
1448
1644
  #
@@ -1490,7 +1686,7 @@ module Aws::Drs
1490
1686
  # resp.job.arn #=> String
1491
1687
  # resp.job.creation_date_time #=> String
1492
1688
  # resp.job.end_date_time #=> String
1493
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES"
1689
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
1494
1690
  # resp.job.job_id #=> String
1495
1691
  # resp.job.participating_servers #=> Array
1496
1692
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
@@ -1499,7 +1695,7 @@ module Aws::Drs
1499
1695
  # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1500
1696
  # resp.job.tags #=> Hash
1501
1697
  # resp.job.tags["TagKey"] #=> String
1502
- # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1698
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
1503
1699
  #
1504
1700
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StartRecovery AWS API Documentation
1505
1701
  #
@@ -1588,7 +1784,7 @@ module Aws::Drs
1588
1784
  # resp.job.arn #=> String
1589
1785
  # resp.job.creation_date_time #=> String
1590
1786
  # resp.job.end_date_time #=> String
1591
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES"
1787
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
1592
1788
  # resp.job.job_id #=> String
1593
1789
  # resp.job.participating_servers #=> Array
1594
1790
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
@@ -1597,7 +1793,7 @@ module Aws::Drs
1597
1793
  # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1598
1794
  # resp.job.tags #=> Hash
1599
1795
  # resp.job.tags["TagKey"] #=> String
1600
- # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1796
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
1601
1797
  #
1602
1798
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/TerminateRecoveryInstances AWS API Documentation
1603
1799
  #
@@ -2051,7 +2247,7 @@ module Aws::Drs
2051
2247
  params: params,
2052
2248
  config: config)
2053
2249
  context[:gem_name] = 'aws-sdk-drs'
2054
- context[:gem_version] = '1.4.0'
2250
+ context[:gem_version] = '1.5.0'
2055
2251
  Seahorse::Client::Request.new(handlers, context)
2056
2252
  end
2057
2253
 
@@ -15,11 +15,19 @@ module Aws::Drs
15
15
 
16
16
  ARN = Shapes::StringShape.new(name: 'ARN')
17
17
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
18
+ Account = Shapes::StructureShape.new(name: 'Account')
19
+ AccountID = Shapes::StringShape.new(name: 'AccountID')
20
+ AccountIDs = Shapes::ListShape.new(name: 'AccountIDs')
21
+ Accounts = Shapes::ListShape.new(name: 'Accounts')
18
22
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
19
23
  BoundedString = Shapes::StringShape.new(name: 'BoundedString')
20
24
  CPU = Shapes::StructureShape.new(name: 'CPU')
21
25
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
26
+ ConversionMap = Shapes::MapShape.new(name: 'ConversionMap')
27
+ ConversionProperties = Shapes::StructureShape.new(name: 'ConversionProperties')
22
28
  Cpus = Shapes::ListShape.new(name: 'Cpus')
29
+ CreateExtendedSourceServerRequest = Shapes::StructureShape.new(name: 'CreateExtendedSourceServerRequest')
30
+ CreateExtendedSourceServerResponse = Shapes::StructureShape.new(name: 'CreateExtendedSourceServerResponse')
23
31
  CreateReplicationConfigurationTemplateRequest = Shapes::StructureShape.new(name: 'CreateReplicationConfigurationTemplateRequest')
24
32
  DataReplicationError = Shapes::StructureShape.new(name: 'DataReplicationError')
25
33
  DataReplicationErrorString = Shapes::StringShape.new(name: 'DataReplicationErrorString')
@@ -67,6 +75,7 @@ module Aws::Drs
67
75
  EC2InstanceType = Shapes::StringShape.new(name: 'EC2InstanceType')
68
76
  EbsSnapshotsList = Shapes::ListShape.new(name: 'EbsSnapshotsList')
69
77
  EbsVolumeID = Shapes::StringShape.new(name: 'EbsVolumeID')
78
+ ExtensionStatus = Shapes::StringShape.new(name: 'ExtensionStatus')
70
79
  FailbackReplicationError = Shapes::StringShape.new(name: 'FailbackReplicationError')
71
80
  FailbackState = Shapes::StringShape.new(name: 'FailbackState')
72
81
  GetFailbackReplicationConfigurationRequest = Shapes::StructureShape.new(name: 'GetFailbackReplicationConfigurationRequest')
@@ -99,8 +108,14 @@ module Aws::Drs
99
108
  LifeCycle = Shapes::StructureShape.new(name: 'LifeCycle')
100
109
  LifeCycleLastLaunch = Shapes::StructureShape.new(name: 'LifeCycleLastLaunch')
101
110
  LifeCycleLastLaunchInitiated = Shapes::StructureShape.new(name: 'LifeCycleLastLaunchInitiated')
111
+ ListExtensibleSourceServersRequest = Shapes::StructureShape.new(name: 'ListExtensibleSourceServersRequest')
112
+ ListExtensibleSourceServersResponse = Shapes::StructureShape.new(name: 'ListExtensibleSourceServersResponse')
113
+ ListStagingAccountsRequest = Shapes::StructureShape.new(name: 'ListStagingAccountsRequest')
114
+ ListStagingAccountsRequestMaxResultsInteger = Shapes::IntegerShape.new(name: 'ListStagingAccountsRequestMaxResultsInteger')
115
+ ListStagingAccountsResponse = Shapes::StructureShape.new(name: 'ListStagingAccountsResponse')
102
116
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
103
117
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
118
+ MaxResultsReplicatingSourceServers = Shapes::IntegerShape.new(name: 'MaxResultsReplicatingSourceServers')
104
119
  NetworkInterface = Shapes::StructureShape.new(name: 'NetworkInterface')
105
120
  NetworkInterfaces = Shapes::ListShape.new(name: 'NetworkInterfaces')
106
121
  OS = Shapes::StructureShape.new(name: 'OS')
@@ -152,9 +167,13 @@ module Aws::Drs
152
167
  SmallBoundedString = Shapes::StringShape.new(name: 'SmallBoundedString')
153
168
  SourceProperties = Shapes::StructureShape.new(name: 'SourceProperties')
154
169
  SourceServer = Shapes::StructureShape.new(name: 'SourceServer')
170
+ SourceServerARN = Shapes::StringShape.new(name: 'SourceServerARN')
155
171
  SourceServerID = Shapes::StringShape.new(name: 'SourceServerID')
156
172
  SourceServerIDs = Shapes::ListShape.new(name: 'SourceServerIDs')
157
173
  SourceServersList = Shapes::ListShape.new(name: 'SourceServersList')
174
+ StagingArea = Shapes::StructureShape.new(name: 'StagingArea')
175
+ StagingSourceServer = Shapes::StructureShape.new(name: 'StagingSourceServer')
176
+ StagingSourceServersList = Shapes::ListShape.new(name: 'StagingSourceServersList')
158
177
  StartFailbackLaunchRequest = Shapes::StructureShape.new(name: 'StartFailbackLaunchRequest')
159
178
  StartFailbackLaunchResponse = Shapes::StructureShape.new(name: 'StartFailbackLaunchResponse')
160
179
  StartFailbackRequestRecoveryInstanceIDs = Shapes::ListShape.new(name: 'StartFailbackRequestRecoveryInstanceIDs')
@@ -184,12 +203,21 @@ module Aws::Drs
184
203
  ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
185
204
  ValidationExceptionFieldList = Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
186
205
  ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
206
+ VolumeToConversionMap = Shapes::MapShape.new(name: 'VolumeToConversionMap')
207
+ VolumeToSizeMap = Shapes::MapShape.new(name: 'VolumeToSizeMap')
187
208
  ebsSnapshot = Shapes::StringShape.new(name: 'ebsSnapshot')
188
209
 
189
210
  AccessDeniedException.add_member(:code, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "code"))
190
211
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "message"))
191
212
  AccessDeniedException.struct_class = Types::AccessDeniedException
192
213
 
214
+ Account.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountID, location_name: "accountID"))
215
+ Account.struct_class = Types::Account
216
+
217
+ AccountIDs.member = Shapes::ShapeRef.new(shape: AccountID)
218
+
219
+ Accounts.member = Shapes::ShapeRef.new(shape: Account)
220
+
193
221
  CPU.add_member(:cores, Shapes::ShapeRef.new(shape: PositiveInteger, location_name: "cores"))
194
222
  CPU.add_member(:model_name, Shapes::ShapeRef.new(shape: BoundedString, location_name: "modelName"))
195
223
  CPU.struct_class = Types::CPU
@@ -200,8 +228,25 @@ module Aws::Drs
200
228
  ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "resourceType"))
201
229
  ConflictException.struct_class = Types::ConflictException
202
230
 
231
+ ConversionMap.key = Shapes::ShapeRef.new(shape: ebsSnapshot)
232
+ ConversionMap.value = Shapes::ShapeRef.new(shape: ebsSnapshot)
233
+
234
+ ConversionProperties.add_member(:data_timestamp, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "dataTimestamp"))
235
+ ConversionProperties.add_member(:force_uefi, Shapes::ShapeRef.new(shape: Boolean, location_name: "forceUefi"))
236
+ ConversionProperties.add_member(:root_volume_name, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "rootVolumeName"))
237
+ ConversionProperties.add_member(:volume_to_conversion_map, Shapes::ShapeRef.new(shape: VolumeToConversionMap, location_name: "volumeToConversionMap"))
238
+ ConversionProperties.add_member(:volume_to_volume_size, Shapes::ShapeRef.new(shape: VolumeToSizeMap, location_name: "volumeToVolumeSize"))
239
+ ConversionProperties.struct_class = Types::ConversionProperties
240
+
203
241
  Cpus.member = Shapes::ShapeRef.new(shape: CPU)
204
242
 
243
+ CreateExtendedSourceServerRequest.add_member(:source_server_arn, Shapes::ShapeRef.new(shape: SourceServerARN, required: true, location_name: "sourceServerArn"))
244
+ CreateExtendedSourceServerRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
245
+ CreateExtendedSourceServerRequest.struct_class = Types::CreateExtendedSourceServerRequest
246
+
247
+ CreateExtendedSourceServerResponse.add_member(:source_server, Shapes::ShapeRef.new(shape: SourceServer, location_name: "sourceServer"))
248
+ CreateExtendedSourceServerResponse.struct_class = Types::CreateExtendedSourceServerResponse
249
+
205
250
  CreateReplicationConfigurationTemplateRequest.add_member(:associate_default_security_group, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "associateDefaultSecurityGroup"))
206
251
  CreateReplicationConfigurationTemplateRequest.add_member(:bandwidth_throttling, Shapes::ShapeRef.new(shape: PositiveInteger, required: true, location_name: "bandwidthThrottling"))
207
252
  CreateReplicationConfigurationTemplateRequest.add_member(:create_public_ip, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "createPublicIP"))
@@ -277,7 +322,7 @@ module Aws::Drs
277
322
  DescribeJobLogItemsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
278
323
  DescribeJobLogItemsResponse.struct_class = Types::DescribeJobLogItemsResponse
279
324
 
280
- DescribeJobsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeJobsRequestFilters, required: true, location_name: "filters"))
325
+ DescribeJobsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeJobsRequestFilters, location_name: "filters"))
281
326
  DescribeJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: StrictlyPositiveInteger, location_name: "maxResults"))
282
327
  DescribeJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
283
328
  DescribeJobsRequest.struct_class = Types::DescribeJobsRequest
@@ -295,7 +340,7 @@ module Aws::Drs
295
340
 
296
341
  DescribeRecoveryInstancesItems.member = Shapes::ShapeRef.new(shape: RecoveryInstance)
297
342
 
298
- DescribeRecoveryInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeRecoveryInstancesRequestFilters, required: true, location_name: "filters"))
343
+ DescribeRecoveryInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeRecoveryInstancesRequestFilters, location_name: "filters"))
299
344
  DescribeRecoveryInstancesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: StrictlyPositiveInteger, location_name: "maxResults"))
300
345
  DescribeRecoveryInstancesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
301
346
  DescribeRecoveryInstancesRequest.struct_class = Types::DescribeRecoveryInstancesRequest
@@ -325,20 +370,21 @@ module Aws::Drs
325
370
 
326
371
  DescribeReplicationConfigurationTemplatesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: StrictlyPositiveInteger, location_name: "maxResults"))
327
372
  DescribeReplicationConfigurationTemplatesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
328
- DescribeReplicationConfigurationTemplatesRequest.add_member(:replication_configuration_template_i_ds, Shapes::ShapeRef.new(shape: ReplicationConfigurationTemplateIDs, required: true, location_name: "replicationConfigurationTemplateIDs"))
373
+ DescribeReplicationConfigurationTemplatesRequest.add_member(:replication_configuration_template_i_ds, Shapes::ShapeRef.new(shape: ReplicationConfigurationTemplateIDs, location_name: "replicationConfigurationTemplateIDs"))
329
374
  DescribeReplicationConfigurationTemplatesRequest.struct_class = Types::DescribeReplicationConfigurationTemplatesRequest
330
375
 
331
376
  DescribeReplicationConfigurationTemplatesResponse.add_member(:items, Shapes::ShapeRef.new(shape: ReplicationConfigurationTemplates, location_name: "items"))
332
377
  DescribeReplicationConfigurationTemplatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
333
378
  DescribeReplicationConfigurationTemplatesResponse.struct_class = Types::DescribeReplicationConfigurationTemplatesResponse
334
379
 
335
- DescribeSourceServersRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeSourceServersRequestFilters, required: true, location_name: "filters"))
380
+ DescribeSourceServersRequest.add_member(:filters, Shapes::ShapeRef.new(shape: DescribeSourceServersRequestFilters, location_name: "filters"))
336
381
  DescribeSourceServersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: StrictlyPositiveInteger, location_name: "maxResults"))
337
382
  DescribeSourceServersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
338
383
  DescribeSourceServersRequest.struct_class = Types::DescribeSourceServersRequest
339
384
 
340
385
  DescribeSourceServersRequestFilters.add_member(:hardware_id, Shapes::ShapeRef.new(shape: BoundedString, location_name: "hardwareId"))
341
386
  DescribeSourceServersRequestFilters.add_member(:source_server_i_ds, Shapes::ShapeRef.new(shape: DescribeSourceServersRequestFiltersIDs, location_name: "sourceServerIDs"))
387
+ DescribeSourceServersRequestFilters.add_member(:staging_account_i_ds, Shapes::ShapeRef.new(shape: AccountIDs, location_name: "stagingAccountIDs"))
342
388
  DescribeSourceServersRequestFilters.struct_class = Types::DescribeSourceServersRequestFilters
343
389
 
344
390
  DescribeSourceServersRequestFiltersIDs.member = Shapes::ShapeRef.new(shape: SourceServerID)
@@ -408,6 +454,7 @@ module Aws::Drs
408
454
  JobLog.add_member(:log_date_time, Shapes::ShapeRef.new(shape: ISO8601DatetimeString, location_name: "logDateTime"))
409
455
  JobLog.struct_class = Types::JobLog
410
456
 
457
+ JobLogEventData.add_member(:conversion_properties, Shapes::ShapeRef.new(shape: ConversionProperties, location_name: "conversionProperties"))
411
458
  JobLogEventData.add_member(:conversion_server_id, Shapes::ShapeRef.new(shape: EC2InstanceID, location_name: "conversionServerID"))
412
459
  JobLogEventData.add_member(:raw_error, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "rawError"))
413
460
  JobLogEventData.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, location_name: "sourceServerID"))
@@ -446,6 +493,23 @@ module Aws::Drs
446
493
  LifeCycleLastLaunchInitiated.add_member(:type, Shapes::ShapeRef.new(shape: LastLaunchType, location_name: "type"))
447
494
  LifeCycleLastLaunchInitiated.struct_class = Types::LifeCycleLastLaunchInitiated
448
495
 
496
+ ListExtensibleSourceServersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResultsReplicatingSourceServers, location_name: "maxResults"))
497
+ ListExtensibleSourceServersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
498
+ ListExtensibleSourceServersRequest.add_member(:staging_account_id, Shapes::ShapeRef.new(shape: AccountID, required: true, location_name: "stagingAccountID"))
499
+ ListExtensibleSourceServersRequest.struct_class = Types::ListExtensibleSourceServersRequest
500
+
501
+ ListExtensibleSourceServersResponse.add_member(:items, Shapes::ShapeRef.new(shape: StagingSourceServersList, location_name: "items"))
502
+ ListExtensibleSourceServersResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
503
+ ListExtensibleSourceServersResponse.struct_class = Types::ListExtensibleSourceServersResponse
504
+
505
+ ListStagingAccountsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListStagingAccountsRequestMaxResultsInteger, location: "querystring", location_name: "maxResults"))
506
+ ListStagingAccountsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
507
+ ListStagingAccountsRequest.struct_class = Types::ListStagingAccountsRequest
508
+
509
+ ListStagingAccountsResponse.add_member(:accounts, Shapes::ShapeRef.new(shape: Accounts, location_name: "accounts"))
510
+ ListStagingAccountsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
511
+ ListStagingAccountsResponse.struct_class = Types::ListStagingAccountsResponse
512
+
449
513
  ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location: "uri", location_name: "resourceArn"))
450
514
  ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
451
515
 
@@ -648,6 +712,7 @@ module Aws::Drs
648
712
  SourceServer.add_member(:recovery_instance_id, Shapes::ShapeRef.new(shape: RecoveryInstanceID, location_name: "recoveryInstanceId"))
649
713
  SourceServer.add_member(:source_properties, Shapes::ShapeRef.new(shape: SourceProperties, location_name: "sourceProperties"))
650
714
  SourceServer.add_member(:source_server_id, Shapes::ShapeRef.new(shape: SourceServerID, location_name: "sourceServerID"))
715
+ SourceServer.add_member(:staging_area, Shapes::ShapeRef.new(shape: StagingArea, location_name: "stagingArea"))
651
716
  SourceServer.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
652
717
  SourceServer.struct_class = Types::SourceServer
653
718
 
@@ -655,6 +720,19 @@ module Aws::Drs
655
720
 
656
721
  SourceServersList.member = Shapes::ShapeRef.new(shape: SourceServer)
657
722
 
723
+ StagingArea.add_member(:error_message, Shapes::ShapeRef.new(shape: LargeBoundedString, location_name: "errorMessage"))
724
+ StagingArea.add_member(:staging_account_id, Shapes::ShapeRef.new(shape: AccountID, location_name: "stagingAccountID"))
725
+ StagingArea.add_member(:staging_source_server_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "stagingSourceServerArn"))
726
+ StagingArea.add_member(:status, Shapes::ShapeRef.new(shape: ExtensionStatus, location_name: "status"))
727
+ StagingArea.struct_class = Types::StagingArea
728
+
729
+ StagingSourceServer.add_member(:arn, Shapes::ShapeRef.new(shape: SourceServerARN, location_name: "arn"))
730
+ StagingSourceServer.add_member(:hostname, Shapes::ShapeRef.new(shape: BoundedString, location_name: "hostname"))
731
+ StagingSourceServer.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
732
+ StagingSourceServer.struct_class = Types::StagingSourceServer
733
+
734
+ StagingSourceServersList.member = Shapes::ShapeRef.new(shape: StagingSourceServer)
735
+
658
736
  StartFailbackLaunchRequest.add_member(:recovery_instance_i_ds, Shapes::ShapeRef.new(shape: StartFailbackRequestRecoveryInstanceIDs, required: true, location_name: "recoveryInstanceIDs"))
659
737
  StartFailbackLaunchRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
660
738
  StartFailbackLaunchRequest.struct_class = Types::StartFailbackLaunchRequest
@@ -772,6 +850,12 @@ module Aws::Drs
772
850
 
773
851
  ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
774
852
 
853
+ VolumeToConversionMap.key = Shapes::ShapeRef.new(shape: LargeBoundedString)
854
+ VolumeToConversionMap.value = Shapes::ShapeRef.new(shape: ConversionMap)
855
+
856
+ VolumeToSizeMap.key = Shapes::ShapeRef.new(shape: LargeBoundedString)
857
+ VolumeToSizeMap.value = Shapes::ShapeRef.new(shape: PositiveInteger)
858
+
775
859
 
776
860
  # @api private
777
861
  API = Seahorse::Model::Api.new.tap do |api|
@@ -791,6 +875,21 @@ module Aws::Drs
791
875
  "uid" => "drs-2020-02-26",
792
876
  }
793
877
 
878
+ api.add_operation(:create_extended_source_server, Seahorse::Model::Operation.new.tap do |o|
879
+ o.name = "CreateExtendedSourceServer"
880
+ o.http_method = "POST"
881
+ o.http_request_uri = "/CreateExtendedSourceServer"
882
+ o.input = Shapes::ShapeRef.new(shape: CreateExtendedSourceServerRequest)
883
+ o.output = Shapes::ShapeRef.new(shape: CreateExtendedSourceServerResponse)
884
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
885
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
886
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
887
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
888
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
889
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
890
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
891
+ end)
892
+
794
893
  api.add_operation(:create_replication_configuration_template, Seahorse::Model::Operation.new.tap do |o|
795
894
  o.name = "CreateReplicationConfigurationTemplate"
796
895
  o.http_method = "POST"
@@ -1027,6 +1126,7 @@ module Aws::Drs
1027
1126
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1028
1127
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1029
1128
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1129
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1030
1130
  o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1031
1131
  end)
1032
1132
 
@@ -1042,6 +1142,44 @@ module Aws::Drs
1042
1142
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1043
1143
  end)
1044
1144
 
1145
+ api.add_operation(:list_extensible_source_servers, Seahorse::Model::Operation.new.tap do |o|
1146
+ o.name = "ListExtensibleSourceServers"
1147
+ o.http_method = "POST"
1148
+ o.http_request_uri = "/ListExtensibleSourceServers"
1149
+ o.input = Shapes::ShapeRef.new(shape: ListExtensibleSourceServersRequest)
1150
+ o.output = Shapes::ShapeRef.new(shape: ListExtensibleSourceServersResponse)
1151
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1152
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1153
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1154
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1155
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1156
+ o[:pager] = Aws::Pager.new(
1157
+ limit_key: "max_results",
1158
+ tokens: {
1159
+ "next_token" => "next_token"
1160
+ }
1161
+ )
1162
+ end)
1163
+
1164
+ api.add_operation(:list_staging_accounts, Seahorse::Model::Operation.new.tap do |o|
1165
+ o.name = "ListStagingAccounts"
1166
+ o.http_method = "GET"
1167
+ o.http_request_uri = "/ListStagingAccounts"
1168
+ o.input = Shapes::ShapeRef.new(shape: ListStagingAccountsRequest)
1169
+ o.output = Shapes::ShapeRef.new(shape: ListStagingAccountsResponse)
1170
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1171
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1172
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1173
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1174
+ o.errors << Shapes::ShapeRef.new(shape: UninitializedAccountException)
1175
+ o[:pager] = Aws::Pager.new(
1176
+ limit_key: "max_results",
1177
+ tokens: {
1178
+ "next_token" => "next_token"
1179
+ }
1180
+ )
1181
+ end)
1182
+
1045
1183
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1046
1184
  o.name = "ListTagsForResource"
1047
1185
  o.http_method = "GET"
@@ -10,7 +10,7 @@
10
10
  module Aws::Drs
11
11
  module Types
12
12
 
13
- # TYou do not have sufficient access to perform this action.
13
+ # You do not have sufficient access to perform this action.
14
14
  #
15
15
  # @!attribute [rw] code
16
16
  # @return [String]
@@ -27,6 +27,20 @@ module Aws::Drs
27
27
  include Aws::Structure
28
28
  end
29
29
 
30
+ # AWS account.
31
+ #
32
+ # @!attribute [rw] account_id
33
+ # Account ID of AWS account.
34
+ # @return [String]
35
+ #
36
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/Account AWS API Documentation
37
+ #
38
+ class Account < Struct.new(
39
+ :account_id)
40
+ SENSITIVE = []
41
+ include Aws::Structure
42
+ end
43
+
30
44
  # Information about a server's CPU.
31
45
  #
32
46
  # @!attribute [rw] cores
@@ -74,6 +88,81 @@ module Aws::Drs
74
88
  include Aws::Structure
75
89
  end
76
90
 
91
+ # Properties of a conversion job
92
+ #
93
+ # @!attribute [rw] data_timestamp
94
+ # The timestamp of when the snapshot being converted was taken
95
+ # @return [String]
96
+ #
97
+ # @!attribute [rw] force_uefi
98
+ # Whether the volume being converted uses UEFI or not
99
+ # @return [Boolean]
100
+ #
101
+ # @!attribute [rw] root_volume_name
102
+ # The root volume name of a conversion job
103
+ # @return [String]
104
+ #
105
+ # @!attribute [rw] volume_to_conversion_map
106
+ # A mapping between the volumes being converted and the converted
107
+ # snapshot ids
108
+ # @return [Hash<String,Hash<String,String>>]
109
+ #
110
+ # @!attribute [rw] volume_to_volume_size
111
+ # A mapping between the volumes and their sizes
112
+ # @return [Hash<String,Integer>]
113
+ #
114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ConversionProperties AWS API Documentation
115
+ #
116
+ class ConversionProperties < Struct.new(
117
+ :data_timestamp,
118
+ :force_uefi,
119
+ :root_volume_name,
120
+ :volume_to_conversion_map,
121
+ :volume_to_volume_size)
122
+ SENSITIVE = []
123
+ include Aws::Structure
124
+ end
125
+
126
+ # @note When making an API call, you may pass CreateExtendedSourceServerRequest
127
+ # data as a hash:
128
+ #
129
+ # {
130
+ # source_server_arn: "SourceServerARN", # required
131
+ # tags: {
132
+ # "TagKey" => "TagValue",
133
+ # },
134
+ # }
135
+ #
136
+ # @!attribute [rw] source_server_arn
137
+ # This defines the ARN of the source server in staging Account based
138
+ # on which you want to create an extended source server.
139
+ # @return [String]
140
+ #
141
+ # @!attribute [rw] tags
142
+ # A list of tags associated with the extended source server.
143
+ # @return [Hash<String,String>]
144
+ #
145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/CreateExtendedSourceServerRequest AWS API Documentation
146
+ #
147
+ class CreateExtendedSourceServerRequest < Struct.new(
148
+ :source_server_arn,
149
+ :tags)
150
+ SENSITIVE = [:tags]
151
+ include Aws::Structure
152
+ end
153
+
154
+ # @!attribute [rw] source_server
155
+ # Created extended source server.
156
+ # @return [Types::SourceServer]
157
+ #
158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/CreateExtendedSourceServerResponse AWS API Documentation
159
+ #
160
+ class CreateExtendedSourceServerResponse < Struct.new(
161
+ :source_server)
162
+ SENSITIVE = []
163
+ include Aws::Structure
164
+ end
165
+
77
166
  # @note When making an API call, you may pass CreateReplicationConfigurationTemplateRequest
78
167
  # data as a hash:
79
168
  #
@@ -466,7 +555,7 @@ module Aws::Drs
466
555
  # data as a hash:
467
556
  #
468
557
  # {
469
- # filters: { # required
558
+ # filters: {
470
559
  # from_date: "ISO8601DatetimeString",
471
560
  # job_i_ds: ["JobID"],
472
561
  # to_date: "ISO8601DatetimeString",
@@ -552,7 +641,7 @@ module Aws::Drs
552
641
  # data as a hash:
553
642
  #
554
643
  # {
555
- # filters: { # required
644
+ # filters: {
556
645
  # recovery_instance_i_ds: ["RecoveryInstanceID"],
557
646
  # source_server_i_ds: ["SourceServerID"],
558
647
  # },
@@ -724,7 +813,7 @@ module Aws::Drs
724
813
  # {
725
814
  # max_results: 1,
726
815
  # next_token: "PaginationToken",
727
- # replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"], # required
816
+ # replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"],
728
817
  # }
729
818
  #
730
819
  # @!attribute [rw] max_results
@@ -773,9 +862,10 @@ module Aws::Drs
773
862
  # data as a hash:
774
863
  #
775
864
  # {
776
- # filters: { # required
865
+ # filters: {
777
866
  # hardware_id: "BoundedString",
778
867
  # source_server_i_ds: ["SourceServerID"],
868
+ # staging_account_i_ds: ["AccountID"],
779
869
  # },
780
870
  # max_results: 1,
781
871
  # next_token: "PaginationToken",
@@ -811,6 +901,7 @@ module Aws::Drs
811
901
  # {
812
902
  # hardware_id: "BoundedString",
813
903
  # source_server_i_ds: ["SourceServerID"],
904
+ # staging_account_i_ds: ["AccountID"],
814
905
  # }
815
906
  #
816
907
  # @!attribute [rw] hardware_id
@@ -823,11 +914,17 @@ module Aws::Drs
823
914
  # array means all Source Servers.
824
915
  # @return [Array<String>]
825
916
  #
917
+ # @!attribute [rw] staging_account_i_ds
918
+ # An array of staging account IDs that extended source servers belong
919
+ # to. An empty array means all source servers will be shown.
920
+ # @return [Array<String>]
921
+ #
826
922
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DescribeSourceServersRequestFilters AWS API Documentation
827
923
  #
828
924
  class DescribeSourceServersRequestFilters < Struct.new(
829
925
  :hardware_id,
830
- :source_server_i_ds)
926
+ :source_server_i_ds,
927
+ :staging_account_i_ds)
831
928
  SENSITIVE = []
832
929
  include Aws::Structure
833
930
  end
@@ -1133,6 +1230,10 @@ module Aws::Drs
1133
1230
 
1134
1231
  # Metadata associated with a Job log.
1135
1232
  #
1233
+ # @!attribute [rw] conversion_properties
1234
+ # Properties of a conversion job
1235
+ # @return [Types::ConversionProperties]
1236
+ #
1136
1237
  # @!attribute [rw] conversion_server_id
1137
1238
  # The ID of a conversion server.
1138
1239
  # @return [String]
@@ -1152,6 +1253,7 @@ module Aws::Drs
1152
1253
  # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/JobLogEventData AWS API Documentation
1153
1254
  #
1154
1255
  class JobLogEventData < Struct.new(
1256
+ :conversion_properties,
1155
1257
  :conversion_server_id,
1156
1258
  :raw_error,
1157
1259
  :source_server_id,
@@ -1312,6 +1414,97 @@ module Aws::Drs
1312
1414
  include Aws::Structure
1313
1415
  end
1314
1416
 
1417
+ # @note When making an API call, you may pass ListExtensibleSourceServersRequest
1418
+ # data as a hash:
1419
+ #
1420
+ # {
1421
+ # max_results: 1,
1422
+ # next_token: "PaginationToken",
1423
+ # staging_account_id: "AccountID", # required
1424
+ # }
1425
+ #
1426
+ # @!attribute [rw] max_results
1427
+ # The maximum number of extensible source servers to retrieve.
1428
+ # @return [Integer]
1429
+ #
1430
+ # @!attribute [rw] next_token
1431
+ # The token of the next extensible source server to retrieve.
1432
+ # @return [String]
1433
+ #
1434
+ # @!attribute [rw] staging_account_id
1435
+ # The Id of the staging Account to retrieve extensible source servers
1436
+ # from.
1437
+ # @return [String]
1438
+ #
1439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListExtensibleSourceServersRequest AWS API Documentation
1440
+ #
1441
+ class ListExtensibleSourceServersRequest < Struct.new(
1442
+ :max_results,
1443
+ :next_token,
1444
+ :staging_account_id)
1445
+ SENSITIVE = []
1446
+ include Aws::Structure
1447
+ end
1448
+
1449
+ # @!attribute [rw] items
1450
+ # A list of source servers on a staging Account that are extensible.
1451
+ # @return [Array<Types::StagingSourceServer>]
1452
+ #
1453
+ # @!attribute [rw] next_token
1454
+ # The token of the next extensible source server to retrieve.
1455
+ # @return [String]
1456
+ #
1457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListExtensibleSourceServersResponse AWS API Documentation
1458
+ #
1459
+ class ListExtensibleSourceServersResponse < Struct.new(
1460
+ :items,
1461
+ :next_token)
1462
+ SENSITIVE = []
1463
+ include Aws::Structure
1464
+ end
1465
+
1466
+ # @note When making an API call, you may pass ListStagingAccountsRequest
1467
+ # data as a hash:
1468
+ #
1469
+ # {
1470
+ # max_results: 1,
1471
+ # next_token: "PaginationToken",
1472
+ # }
1473
+ #
1474
+ # @!attribute [rw] max_results
1475
+ # The maximum number of staging Accounts to retrieve.
1476
+ # @return [Integer]
1477
+ #
1478
+ # @!attribute [rw] next_token
1479
+ # The token of the next staging Account to retrieve.
1480
+ # @return [String]
1481
+ #
1482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListStagingAccountsRequest AWS API Documentation
1483
+ #
1484
+ class ListStagingAccountsRequest < Struct.new(
1485
+ :max_results,
1486
+ :next_token)
1487
+ SENSITIVE = []
1488
+ include Aws::Structure
1489
+ end
1490
+
1491
+ # @!attribute [rw] accounts
1492
+ # An array of staging AWS Accounts.
1493
+ # @return [Array<Types::Account>]
1494
+ #
1495
+ # @!attribute [rw] next_token
1496
+ # The token of the next staging Account to retrieve.
1497
+ # @return [String]
1498
+ #
1499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ListStagingAccountsResponse AWS API Documentation
1500
+ #
1501
+ class ListStagingAccountsResponse < Struct.new(
1502
+ :accounts,
1503
+ :next_token)
1504
+ SENSITIVE = []
1505
+ include Aws::Structure
1506
+ end
1507
+
1315
1508
  # @note When making an API call, you may pass ListTagsForResourceRequest
1316
1509
  # data as a hash:
1317
1510
  #
@@ -2217,6 +2410,10 @@ module Aws::Drs
2217
2410
  # The ID of the Source Server.
2218
2411
  # @return [String]
2219
2412
  #
2413
+ # @!attribute [rw] staging_area
2414
+ # The staging area of the source server.
2415
+ # @return [Types::StagingArea]
2416
+ #
2220
2417
  # @!attribute [rw] tags
2221
2418
  # The tags associated with the Source Server.
2222
2419
  # @return [Hash<String,String>]
@@ -2231,6 +2428,72 @@ module Aws::Drs
2231
2428
  :recovery_instance_id,
2232
2429
  :source_properties,
2233
2430
  :source_server_id,
2431
+ :staging_area,
2432
+ :tags)
2433
+ SENSITIVE = [:tags]
2434
+ include Aws::Structure
2435
+ end
2436
+
2437
+ # Staging information related to source server.
2438
+ #
2439
+ # @!attribute [rw] error_message
2440
+ # Shows an error message that occurred when DRS tried to access the
2441
+ # staging source server. In this case StagingArea$status will have
2442
+ # value EXTENSION\_ERROR
2443
+ # @return [String]
2444
+ #
2445
+ # @!attribute [rw] staging_account_id
2446
+ # Account ID of the account to which source server belongs. If this
2447
+ # source server is extended - shows Account ID of staging source
2448
+ # server.
2449
+ # @return [String]
2450
+ #
2451
+ # @!attribute [rw] staging_source_server_arn
2452
+ # Arn of the staging source server if this source server is extended
2453
+ # @return [String]
2454
+ #
2455
+ # @!attribute [rw] status
2456
+ # Status of Source server extension. Possible values: (a)
2457
+ # NOT\_EXTENDED - This is a source server that is replicating in the
2458
+ # current account. (b) EXTENDED - Source server is extended from a
2459
+ # staging source server. In this case, the value of
2460
+ # stagingSourceServerArn is pointing to the Arn of the source server
2461
+ # in the staging account. (c) EXTENSION\_ERROR - Some issue occurred
2462
+ # when accessing staging source server. In this case, errorMessage
2463
+ # field will contain an error message that explains what happened.
2464
+ # @return [String]
2465
+ #
2466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StagingArea AWS API Documentation
2467
+ #
2468
+ class StagingArea < Struct.new(
2469
+ :error_message,
2470
+ :staging_account_id,
2471
+ :staging_source_server_arn,
2472
+ :status)
2473
+ SENSITIVE = []
2474
+ include Aws::Structure
2475
+ end
2476
+
2477
+ # Source server in staging account that extended source server connected
2478
+ # to.
2479
+ #
2480
+ # @!attribute [rw] arn
2481
+ # The ARN of the source server.
2482
+ # @return [String]
2483
+ #
2484
+ # @!attribute [rw] hostname
2485
+ # Hostname of staging source server.
2486
+ # @return [String]
2487
+ #
2488
+ # @!attribute [rw] tags
2489
+ # A list of tags associated with the staging source server.
2490
+ # @return [Hash<String,String>]
2491
+ #
2492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StagingSourceServer AWS API Documentation
2493
+ #
2494
+ class StagingSourceServer < Struct.new(
2495
+ :arn,
2496
+ :hostname,
2234
2497
  :tags)
2235
2498
  SENSITIVE = [:tags]
2236
2499
  include Aws::Structure
data/lib/aws-sdk-drs.rb CHANGED
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-drs/customizations'
28
28
  # structure.
29
29
  #
30
30
  # drs = Aws::Drs::Client.new
31
- # resp = drs.create_replication_configuration_template(params)
31
+ # resp = drs.create_extended_source_server(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-drs/customizations'
48
48
  # @!group service
49
49
  module Aws::Drs
50
50
 
51
- GEM_VERSION = '1.4.0'
51
+ GEM_VERSION = '1.5.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-drs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core