aws-sdk-drs 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
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