aws-sdk-drs 1.14.0 → 1.15.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.
@@ -373,6 +373,55 @@ module Aws::Drs
373
373
 
374
374
  # @!group API Operations
375
375
 
376
+ # Associate a Source Network to an existing CloudFormation Stack and
377
+ # modify launch templates to use this network. Can be used for reverting
378
+ # to previously deployed CloudFormation stacks.
379
+ #
380
+ # @option params [required, String] :cfn_stack_name
381
+ # CloudFormation template to associate with a Source Network.
382
+ #
383
+ # @option params [required, String] :source_network_id
384
+ # The Source Network ID to associate with CloudFormation template.
385
+ #
386
+ # @return [Types::AssociateSourceNetworkStackResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
387
+ #
388
+ # * {Types::AssociateSourceNetworkStackResponse#job #job} => Types::Job
389
+ #
390
+ # @example Request syntax with placeholder values
391
+ #
392
+ # resp = client.associate_source_network_stack({
393
+ # cfn_stack_name: "CfnStackName", # required
394
+ # source_network_id: "SourceNetworkID", # required
395
+ # })
396
+ #
397
+ # @example Response structure
398
+ #
399
+ # resp.job.arn #=> String
400
+ # resp.job.creation_date_time #=> String
401
+ # resp.job.end_date_time #=> String
402
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
403
+ # resp.job.job_id #=> String
404
+ # resp.job.participating_resources #=> Array
405
+ # resp.job.participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
406
+ # resp.job.participating_resources[0].participating_resource_id.source_network_id #=> String
407
+ # resp.job.participating_servers #=> Array
408
+ # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
409
+ # resp.job.participating_servers[0].recovery_instance_id #=> String
410
+ # resp.job.participating_servers[0].source_server_id #=> String
411
+ # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
412
+ # resp.job.tags #=> Hash
413
+ # resp.job.tags["TagKey"] #=> String
414
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/AssociateSourceNetworkStack AWS API Documentation
417
+ #
418
+ # @overload associate_source_network_stack(params = {})
419
+ # @param [Hash] params ({})
420
+ def associate_source_network_stack(params = {}, options = {})
421
+ req = build_request(:associate_source_network_stack, params)
422
+ req.send_request(options)
423
+ end
424
+
376
425
  # Create an extended source server in the target Account based on the
377
426
  # source server in staging account.
378
427
  #
@@ -431,6 +480,7 @@ module Aws::Drs
431
480
  # resp.source_server.source_cloud_properties.origin_account_id #=> String
432
481
  # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
433
482
  # resp.source_server.source_cloud_properties.origin_region #=> String
483
+ # resp.source_server.source_network_id #=> String
434
484
  # resp.source_server.source_properties.cpus #=> Array
435
485
  # resp.source_server.source_properties.cpus[0].cores #=> Integer
436
486
  # resp.source_server.source_properties.cpus[0].model_name #=> String
@@ -476,6 +526,9 @@ module Aws::Drs
476
526
  # @option params [Boolean] :copy_tags
477
527
  # Copy tags.
478
528
  #
529
+ # @option params [String] :export_bucket_arn
530
+ # S3 bucket ARN to export Source Network templates.
531
+ #
479
532
  # @option params [String] :launch_disposition
480
533
  # Launch disposition.
481
534
  #
@@ -498,6 +551,7 @@ module Aws::Drs
498
551
  # resp = client.create_launch_configuration_template({
499
552
  # copy_private_ip: false,
500
553
  # copy_tags: false,
554
+ # export_bucket_arn: "ARN",
501
555
  # launch_disposition: "STOPPED", # accepts STOPPED, STARTED
502
556
  # licensing: {
503
557
  # os_byol: false,
@@ -513,6 +567,7 @@ module Aws::Drs
513
567
  # resp.launch_configuration_template.arn #=> String
514
568
  # resp.launch_configuration_template.copy_private_ip #=> Boolean
515
569
  # resp.launch_configuration_template.copy_tags #=> Boolean
570
+ # resp.launch_configuration_template.export_bucket_arn #=> String
516
571
  # resp.launch_configuration_template.launch_configuration_template_id #=> String
517
572
  # resp.launch_configuration_template.launch_disposition #=> String, one of "STOPPED", "STARTED"
518
573
  # resp.launch_configuration_template.licensing.os_byol #=> Boolean
@@ -613,7 +668,7 @@ module Aws::Drs
613
668
  # create_public_ip: false, # required
614
669
  # data_plane_routing: "PRIVATE_IP", # required, accepts PRIVATE_IP, PUBLIC_IP
615
670
  # default_large_staging_disk_type: "GP2", # required, accepts GP2, GP3, ST1, AUTO
616
- # ebs_encryption: "DEFAULT", # required, accepts DEFAULT, CUSTOM
671
+ # ebs_encryption: "DEFAULT", # required, accepts DEFAULT, CUSTOM, NONE
617
672
  # ebs_encryption_key_arn: "ARN",
618
673
  # pit_policy: [ # required
619
674
  # {
@@ -645,7 +700,7 @@ module Aws::Drs
645
700
  # resp.create_public_ip #=> Boolean
646
701
  # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
647
702
  # resp.default_large_staging_disk_type #=> String, one of "GP2", "GP3", "ST1", "AUTO"
648
- # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
703
+ # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM", "NONE"
649
704
  # resp.ebs_encryption_key_arn #=> String
650
705
  # resp.pit_policy #=> Array
651
706
  # resp.pit_policy[0].enabled #=> Boolean
@@ -673,6 +728,48 @@ module Aws::Drs
673
728
  req.send_request(options)
674
729
  end
675
730
 
731
+ # Create a new Source Network resource for a provided VPC ID.
732
+ #
733
+ # @option params [required, String] :origin_account_id
734
+ # Account containing the VPC to protect.
735
+ #
736
+ # @option params [required, String] :origin_region
737
+ # Region containing the VPC to protect.
738
+ #
739
+ # @option params [Hash<String,String>] :tags
740
+ # A set of tags to be associated with the Source Network resource.
741
+ #
742
+ # @option params [required, String] :vpc_id
743
+ # Which VPC ID to protect.
744
+ #
745
+ # @return [Types::CreateSourceNetworkResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
746
+ #
747
+ # * {Types::CreateSourceNetworkResponse#source_network_id #source_network_id} => String
748
+ #
749
+ # @example Request syntax with placeholder values
750
+ #
751
+ # resp = client.create_source_network({
752
+ # origin_account_id: "AccountID", # required
753
+ # origin_region: "AwsRegion", # required
754
+ # tags: {
755
+ # "TagKey" => "TagValue",
756
+ # },
757
+ # vpc_id: "VpcID", # required
758
+ # })
759
+ #
760
+ # @example Response structure
761
+ #
762
+ # resp.source_network_id #=> String
763
+ #
764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/CreateSourceNetwork AWS API Documentation
765
+ #
766
+ # @overload create_source_network(params = {})
767
+ # @param [Hash] params ({})
768
+ def create_source_network(params = {}, options = {})
769
+ req = build_request(:create_source_network, params)
770
+ req.send_request(options)
771
+ end
772
+
676
773
  # Deletes a single Job by ID.
677
774
  #
678
775
  # @option params [required, String] :job_id
@@ -763,6 +860,28 @@ module Aws::Drs
763
860
  req.send_request(options)
764
861
  end
765
862
 
863
+ # Delete Source Network resource.
864
+ #
865
+ # @option params [required, String] :source_network_id
866
+ # ID of the Source Network to delete.
867
+ #
868
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
869
+ #
870
+ # @example Request syntax with placeholder values
871
+ #
872
+ # resp = client.delete_source_network({
873
+ # source_network_id: "SourceNetworkID", # required
874
+ # })
875
+ #
876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DeleteSourceNetwork AWS API Documentation
877
+ #
878
+ # @overload delete_source_network(params = {})
879
+ # @param [Hash] params ({})
880
+ def delete_source_network(params = {}, options = {})
881
+ req = build_request(:delete_source_network, params)
882
+ req.send_request(options)
883
+ end
884
+
766
885
  # Deletes a single Source Server by ID. The Source Server must be
767
886
  # disconnected first.
768
887
  #
@@ -815,7 +934,7 @@ module Aws::Drs
815
934
  # @example Response structure
816
935
  #
817
936
  # resp.items #=> Array
818
- # 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"
937
+ # 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", "DEPLOY_NETWORK_CONFIGURATION_START", "DEPLOY_NETWORK_CONFIGURATION_END", "DEPLOY_NETWORK_CONFIGURATION_FAILED", "UPDATE_NETWORK_CONFIGURATION_START", "UPDATE_NETWORK_CONFIGURATION_END", "UPDATE_NETWORK_CONFIGURATION_FAILED", "UPDATE_LAUNCH_TEMPLATE_START", "UPDATE_LAUNCH_TEMPLATE_END", "UPDATE_LAUNCH_TEMPLATE_FAILED", "NETWORK_RECOVERY_FAIL"
819
938
  # resp.items[0].event_data.conversion_properties.data_timestamp #=> String
820
939
  # resp.items[0].event_data.conversion_properties.force_uefi #=> Boolean
821
940
  # resp.items[0].event_data.conversion_properties.root_volume_name #=> String
@@ -825,6 +944,10 @@ module Aws::Drs
825
944
  # resp.items[0].event_data.conversion_properties.volume_to_volume_size #=> Hash
826
945
  # resp.items[0].event_data.conversion_properties.volume_to_volume_size["LargeBoundedString"] #=> Integer
827
946
  # resp.items[0].event_data.conversion_server_id #=> String
947
+ # resp.items[0].event_data.event_resource_data.source_network_data.source_network_id #=> String
948
+ # resp.items[0].event_data.event_resource_data.source_network_data.source_vpc #=> String
949
+ # resp.items[0].event_data.event_resource_data.source_network_data.stack_name #=> String
950
+ # resp.items[0].event_data.event_resource_data.source_network_data.target_vpc #=> String
828
951
  # resp.items[0].event_data.raw_error #=> String
829
952
  # resp.items[0].event_data.source_server_id #=> String
830
953
  # resp.items[0].event_data.target_instance_id #=> String
@@ -882,8 +1005,11 @@ module Aws::Drs
882
1005
  # resp.items[0].arn #=> String
883
1006
  # resp.items[0].creation_date_time #=> String
884
1007
  # resp.items[0].end_date_time #=> String
885
- # resp.items[0].initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
1008
+ # resp.items[0].initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
886
1009
  # resp.items[0].job_id #=> String
1010
+ # resp.items[0].participating_resources #=> Array
1011
+ # resp.items[0].participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1012
+ # resp.items[0].participating_resources[0].participating_resource_id.source_network_id #=> String
887
1013
  # resp.items[0].participating_servers #=> Array
888
1014
  # resp.items[0].participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
889
1015
  # resp.items[0].participating_servers[0].recovery_instance_id #=> String
@@ -938,6 +1064,7 @@ module Aws::Drs
938
1064
  # resp.items[0].arn #=> String
939
1065
  # resp.items[0].copy_private_ip #=> Boolean
940
1066
  # resp.items[0].copy_tags #=> Boolean
1067
+ # resp.items[0].export_bucket_arn #=> String
941
1068
  # resp.items[0].launch_configuration_template_id #=> String
942
1069
  # resp.items[0].launch_disposition #=> String, one of "STOPPED", "STARTED"
943
1070
  # resp.items[0].licensing.os_byol #=> Boolean
@@ -1150,7 +1277,7 @@ module Aws::Drs
1150
1277
  # resp.items[0].create_public_ip #=> Boolean
1151
1278
  # resp.items[0].data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
1152
1279
  # resp.items[0].default_large_staging_disk_type #=> String, one of "GP2", "GP3", "ST1", "AUTO"
1153
- # resp.items[0].ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
1280
+ # resp.items[0].ebs_encryption #=> String, one of "DEFAULT", "CUSTOM", "NONE"
1154
1281
  # resp.items[0].ebs_encryption_key_arn #=> String
1155
1282
  # resp.items[0].pit_policy #=> Array
1156
1283
  # resp.items[0].pit_policy[0].enabled #=> Boolean
@@ -1179,6 +1306,64 @@ module Aws::Drs
1179
1306
  req.send_request(options)
1180
1307
  end
1181
1308
 
1309
+ # Lists all Source Networks or multiple Source Networks filtered by ID.
1310
+ #
1311
+ # @option params [Types::DescribeSourceNetworksRequestFilters] :filters
1312
+ # A set of filters by which to return Source Networks.
1313
+ #
1314
+ # @option params [Integer] :max_results
1315
+ # Maximum number of Source Networks to retrieve.
1316
+ #
1317
+ # @option params [String] :next_token
1318
+ # The token of the next Source Networks to retrieve.
1319
+ #
1320
+ # @return [Types::DescribeSourceNetworksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1321
+ #
1322
+ # * {Types::DescribeSourceNetworksResponse#items #items} => Array&lt;Types::SourceNetwork&gt;
1323
+ # * {Types::DescribeSourceNetworksResponse#next_token #next_token} => String
1324
+ #
1325
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1326
+ #
1327
+ # @example Request syntax with placeholder values
1328
+ #
1329
+ # resp = client.describe_source_networks({
1330
+ # filters: {
1331
+ # origin_account_id: "AccountID",
1332
+ # origin_region: "AwsRegion",
1333
+ # source_network_i_ds: ["SourceNetworkID"],
1334
+ # },
1335
+ # max_results: 1,
1336
+ # next_token: "PaginationToken",
1337
+ # })
1338
+ #
1339
+ # @example Response structure
1340
+ #
1341
+ # resp.items #=> Array
1342
+ # resp.items[0].arn #=> String
1343
+ # resp.items[0].cfn_stack_name #=> String
1344
+ # resp.items[0].last_recovery.api_call_date_time #=> Time
1345
+ # resp.items[0].last_recovery.job_id #=> String
1346
+ # resp.items[0].last_recovery.last_recovery_result #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCESS", "FAIL", "PARTIAL_SUCCESS", "ASSOCIATE_SUCCESS", "ASSOCIATE_FAIL"
1347
+ # resp.items[0].launched_vpc_id #=> String
1348
+ # resp.items[0].replication_status #=> String, one of "STOPPED", "IN_PROGRESS", "PROTECTED", "ERROR"
1349
+ # resp.items[0].replication_status_details #=> String
1350
+ # resp.items[0].source_account_id #=> String
1351
+ # resp.items[0].source_network_id #=> String
1352
+ # resp.items[0].source_region #=> String
1353
+ # resp.items[0].source_vpc_id #=> String
1354
+ # resp.items[0].tags #=> Hash
1355
+ # resp.items[0].tags["TagKey"] #=> String
1356
+ # resp.next_token #=> String
1357
+ #
1358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/DescribeSourceNetworks AWS API Documentation
1359
+ #
1360
+ # @overload describe_source_networks(params = {})
1361
+ # @param [Hash] params ({})
1362
+ def describe_source_networks(params = {}, options = {})
1363
+ req = build_request(:describe_source_networks, params)
1364
+ req.send_request(options)
1365
+ end
1366
+
1182
1367
  # Lists all Source Servers or multiple Source Servers filtered by ID.
1183
1368
  #
1184
1369
  # @option params [Types::DescribeSourceServersRequestFilters] :filters
@@ -1245,6 +1430,7 @@ module Aws::Drs
1245
1430
  # resp.items[0].source_cloud_properties.origin_account_id #=> String
1246
1431
  # resp.items[0].source_cloud_properties.origin_availability_zone #=> String
1247
1432
  # resp.items[0].source_cloud_properties.origin_region #=> String
1433
+ # resp.items[0].source_network_id #=> String
1248
1434
  # resp.items[0].source_properties.cpus #=> Array
1249
1435
  # resp.items[0].source_properties.cpus[0].cores #=> Integer
1250
1436
  # resp.items[0].source_properties.cpus[0].model_name #=> String
@@ -1345,6 +1531,7 @@ module Aws::Drs
1345
1531
  # * {Types::SourceServer#replication_direction #replication_direction} => String
1346
1532
  # * {Types::SourceServer#reversed_direction_source_server_arn #reversed_direction_source_server_arn} => String
1347
1533
  # * {Types::SourceServer#source_cloud_properties #source_cloud_properties} => Types::SourceCloudProperties
1534
+ # * {Types::SourceServer#source_network_id #source_network_id} => String
1348
1535
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1349
1536
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1350
1537
  # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
@@ -1391,6 +1578,7 @@ module Aws::Drs
1391
1578
  # resp.source_cloud_properties.origin_account_id #=> String
1392
1579
  # resp.source_cloud_properties.origin_availability_zone #=> String
1393
1580
  # resp.source_cloud_properties.origin_region #=> String
1581
+ # resp.source_network_id #=> String
1394
1582
  # resp.source_properties.cpus #=> Array
1395
1583
  # resp.source_properties.cpus[0].cores #=> Integer
1396
1584
  # resp.source_properties.cpus[0].model_name #=> String
@@ -1428,6 +1616,35 @@ module Aws::Drs
1428
1616
  req.send_request(options)
1429
1617
  end
1430
1618
 
1619
+ # Export the Source Network CloudFormation template to an S3 bucket.
1620
+ #
1621
+ # @option params [required, String] :source_network_id
1622
+ # The Source Network ID to export its CloudFormation template to an S3
1623
+ # bucket.
1624
+ #
1625
+ # @return [Types::ExportSourceNetworkCfnTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1626
+ #
1627
+ # * {Types::ExportSourceNetworkCfnTemplateResponse#s3_destination_url #s3_destination_url} => String
1628
+ #
1629
+ # @example Request syntax with placeholder values
1630
+ #
1631
+ # resp = client.export_source_network_cfn_template({
1632
+ # source_network_id: "SourceNetworkID", # required
1633
+ # })
1634
+ #
1635
+ # @example Response structure
1636
+ #
1637
+ # resp.s3_destination_url #=> String
1638
+ #
1639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/ExportSourceNetworkCfnTemplate AWS API Documentation
1640
+ #
1641
+ # @overload export_source_network_cfn_template(params = {})
1642
+ # @param [Hash] params ({})
1643
+ def export_source_network_cfn_template(params = {}, options = {})
1644
+ req = build_request(:export_source_network_cfn_template, params)
1645
+ req.send_request(options)
1646
+ end
1647
+
1431
1648
  # Lists all Failback ReplicationConfigurations, filtered by Recovery
1432
1649
  # Instance ID.
1433
1650
  #
@@ -1546,7 +1763,7 @@ module Aws::Drs
1546
1763
  # resp.create_public_ip #=> Boolean
1547
1764
  # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
1548
1765
  # resp.default_large_staging_disk_type #=> String, one of "GP2", "GP3", "ST1", "AUTO"
1549
- # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
1766
+ # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM", "NONE"
1550
1767
  # resp.ebs_encryption_key_arn #=> String
1551
1768
  # resp.name #=> String
1552
1769
  # resp.pit_policy #=> Array
@@ -1727,6 +1944,7 @@ module Aws::Drs
1727
1944
  # * {Types::SourceServer#replication_direction #replication_direction} => String
1728
1945
  # * {Types::SourceServer#reversed_direction_source_server_arn #reversed_direction_source_server_arn} => String
1729
1946
  # * {Types::SourceServer#source_cloud_properties #source_cloud_properties} => Types::SourceCloudProperties
1947
+ # * {Types::SourceServer#source_network_id #source_network_id} => String
1730
1948
  # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1731
1949
  # * {Types::SourceServer#source_server_id #source_server_id} => String
1732
1950
  # * {Types::SourceServer#staging_area #staging_area} => Types::StagingArea
@@ -1773,6 +1991,7 @@ module Aws::Drs
1773
1991
  # resp.source_cloud_properties.origin_account_id #=> String
1774
1992
  # resp.source_cloud_properties.origin_availability_zone #=> String
1775
1993
  # resp.source_cloud_properties.origin_region #=> String
1994
+ # resp.source_network_id #=> String
1776
1995
  # resp.source_properties.cpus #=> Array
1777
1996
  # resp.source_properties.cpus[0].cores #=> Integer
1778
1997
  # resp.source_properties.cpus[0].model_name #=> String
@@ -1873,8 +2092,11 @@ module Aws::Drs
1873
2092
  # resp.job.arn #=> String
1874
2093
  # resp.job.creation_date_time #=> String
1875
2094
  # resp.job.end_date_time #=> String
1876
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
2095
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
1877
2096
  # resp.job.job_id #=> String
2097
+ # resp.job.participating_resources #=> Array
2098
+ # resp.job.participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2099
+ # resp.job.participating_resources[0].participating_resource_id.source_network_id #=> String
1878
2100
  # resp.job.participating_servers #=> Array
1879
2101
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1880
2102
  # resp.job.participating_servers[0].recovery_instance_id #=> String
@@ -1930,8 +2152,11 @@ module Aws::Drs
1930
2152
  # resp.job.arn #=> String
1931
2153
  # resp.job.creation_date_time #=> String
1932
2154
  # resp.job.end_date_time #=> String
1933
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
2155
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
1934
2156
  # resp.job.job_id #=> String
2157
+ # resp.job.participating_resources #=> Array
2158
+ # resp.job.participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2159
+ # resp.job.participating_resources[0].participating_resource_id.source_network_id #=> String
1935
2160
  # resp.job.participating_servers #=> Array
1936
2161
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1937
2162
  # resp.job.participating_servers[0].recovery_instance_id #=> String
@@ -2001,6 +2226,7 @@ module Aws::Drs
2001
2226
  # resp.source_server.source_cloud_properties.origin_account_id #=> String
2002
2227
  # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
2003
2228
  # resp.source_server.source_cloud_properties.origin_region #=> String
2229
+ # resp.source_server.source_network_id #=> String
2004
2230
  # resp.source_server.source_properties.cpus #=> Array
2005
2231
  # resp.source_server.source_properties.cpus[0].cores #=> Integer
2006
2232
  # resp.source_server.source_properties.cpus[0].model_name #=> String
@@ -2038,6 +2264,109 @@ module Aws::Drs
2038
2264
  req.send_request(options)
2039
2265
  end
2040
2266
 
2267
+ # Deploy VPC for the specified Source Network and modify launch
2268
+ # templates to use this network. The VPC will be deployed using a
2269
+ # dedicated CloudFormation stack.
2270
+ #
2271
+ # @option params [Boolean] :deploy_as_new
2272
+ # Don't update existing CloudFormation Stack, recover the network using
2273
+ # a new stack.
2274
+ #
2275
+ # @option params [required, Array<Types::StartSourceNetworkRecoveryRequestNetworkEntry>] :source_networks
2276
+ # The Source Networks that we want to start a Recovery Job for.
2277
+ #
2278
+ # @option params [Hash<String,String>] :tags
2279
+ # The tags to be associated with the Source Network recovery Job.
2280
+ #
2281
+ # @return [Types::StartSourceNetworkRecoveryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2282
+ #
2283
+ # * {Types::StartSourceNetworkRecoveryResponse#job #job} => Types::Job
2284
+ #
2285
+ # @example Request syntax with placeholder values
2286
+ #
2287
+ # resp = client.start_source_network_recovery({
2288
+ # deploy_as_new: false,
2289
+ # source_networks: [ # required
2290
+ # {
2291
+ # cfn_stack_name: "CfnStackName",
2292
+ # source_network_id: "SourceNetworkID", # required
2293
+ # },
2294
+ # ],
2295
+ # tags: {
2296
+ # "TagKey" => "TagValue",
2297
+ # },
2298
+ # })
2299
+ #
2300
+ # @example Response structure
2301
+ #
2302
+ # resp.job.arn #=> String
2303
+ # resp.job.creation_date_time #=> String
2304
+ # resp.job.end_date_time #=> String
2305
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
2306
+ # resp.job.job_id #=> String
2307
+ # resp.job.participating_resources #=> Array
2308
+ # resp.job.participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2309
+ # resp.job.participating_resources[0].participating_resource_id.source_network_id #=> String
2310
+ # resp.job.participating_servers #=> Array
2311
+ # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2312
+ # resp.job.participating_servers[0].recovery_instance_id #=> String
2313
+ # resp.job.participating_servers[0].source_server_id #=> String
2314
+ # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
2315
+ # resp.job.tags #=> Hash
2316
+ # resp.job.tags["TagKey"] #=> String
2317
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE", "CREATE_CONVERTED_SNAPSHOT"
2318
+ #
2319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StartSourceNetworkRecovery AWS API Documentation
2320
+ #
2321
+ # @overload start_source_network_recovery(params = {})
2322
+ # @param [Hash] params ({})
2323
+ def start_source_network_recovery(params = {}, options = {})
2324
+ req = build_request(:start_source_network_recovery, params)
2325
+ req.send_request(options)
2326
+ end
2327
+
2328
+ # Starts replication for a Source Network. This action would make the
2329
+ # Source Network protected.
2330
+ #
2331
+ # @option params [required, String] :source_network_id
2332
+ # ID of the Source Network to replicate.
2333
+ #
2334
+ # @return [Types::StartSourceNetworkReplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2335
+ #
2336
+ # * {Types::StartSourceNetworkReplicationResponse#source_network #source_network} => Types::SourceNetwork
2337
+ #
2338
+ # @example Request syntax with placeholder values
2339
+ #
2340
+ # resp = client.start_source_network_replication({
2341
+ # source_network_id: "SourceNetworkID", # required
2342
+ # })
2343
+ #
2344
+ # @example Response structure
2345
+ #
2346
+ # resp.source_network.arn #=> String
2347
+ # resp.source_network.cfn_stack_name #=> String
2348
+ # resp.source_network.last_recovery.api_call_date_time #=> Time
2349
+ # resp.source_network.last_recovery.job_id #=> String
2350
+ # resp.source_network.last_recovery.last_recovery_result #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCESS", "FAIL", "PARTIAL_SUCCESS", "ASSOCIATE_SUCCESS", "ASSOCIATE_FAIL"
2351
+ # resp.source_network.launched_vpc_id #=> String
2352
+ # resp.source_network.replication_status #=> String, one of "STOPPED", "IN_PROGRESS", "PROTECTED", "ERROR"
2353
+ # resp.source_network.replication_status_details #=> String
2354
+ # resp.source_network.source_account_id #=> String
2355
+ # resp.source_network.source_network_id #=> String
2356
+ # resp.source_network.source_region #=> String
2357
+ # resp.source_network.source_vpc_id #=> String
2358
+ # resp.source_network.tags #=> Hash
2359
+ # resp.source_network.tags["TagKey"] #=> String
2360
+ #
2361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StartSourceNetworkReplication AWS API Documentation
2362
+ #
2363
+ # @overload start_source_network_replication(params = {})
2364
+ # @param [Hash] params ({})
2365
+ def start_source_network_replication(params = {}, options = {})
2366
+ req = build_request(:start_source_network_replication, params)
2367
+ req.send_request(options)
2368
+ end
2369
+
2041
2370
  # Stops the failback process for a specified Recovery Instance. This
2042
2371
  # changes the Failback State of the Recovery Instance back to
2043
2372
  # FAILBACK\_NOT\_STARTED.
@@ -2114,6 +2443,7 @@ module Aws::Drs
2114
2443
  # resp.source_server.source_cloud_properties.origin_account_id #=> String
2115
2444
  # resp.source_server.source_cloud_properties.origin_availability_zone #=> String
2116
2445
  # resp.source_server.source_cloud_properties.origin_region #=> String
2446
+ # resp.source_server.source_network_id #=> String
2117
2447
  # resp.source_server.source_properties.cpus #=> Array
2118
2448
  # resp.source_server.source_properties.cpus[0].cores #=> Integer
2119
2449
  # resp.source_server.source_properties.cpus[0].model_name #=> String
@@ -2151,6 +2481,48 @@ module Aws::Drs
2151
2481
  req.send_request(options)
2152
2482
  end
2153
2483
 
2484
+ # Stops replication for a Source Network. This action would make the
2485
+ # Source Network unprotected.
2486
+ #
2487
+ # @option params [required, String] :source_network_id
2488
+ # ID of the Source Network to stop replication.
2489
+ #
2490
+ # @return [Types::StopSourceNetworkReplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2491
+ #
2492
+ # * {Types::StopSourceNetworkReplicationResponse#source_network #source_network} => Types::SourceNetwork
2493
+ #
2494
+ # @example Request syntax with placeholder values
2495
+ #
2496
+ # resp = client.stop_source_network_replication({
2497
+ # source_network_id: "SourceNetworkID", # required
2498
+ # })
2499
+ #
2500
+ # @example Response structure
2501
+ #
2502
+ # resp.source_network.arn #=> String
2503
+ # resp.source_network.cfn_stack_name #=> String
2504
+ # resp.source_network.last_recovery.api_call_date_time #=> Time
2505
+ # resp.source_network.last_recovery.job_id #=> String
2506
+ # resp.source_network.last_recovery.last_recovery_result #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCESS", "FAIL", "PARTIAL_SUCCESS", "ASSOCIATE_SUCCESS", "ASSOCIATE_FAIL"
2507
+ # resp.source_network.launched_vpc_id #=> String
2508
+ # resp.source_network.replication_status #=> String, one of "STOPPED", "IN_PROGRESS", "PROTECTED", "ERROR"
2509
+ # resp.source_network.replication_status_details #=> String
2510
+ # resp.source_network.source_account_id #=> String
2511
+ # resp.source_network.source_network_id #=> String
2512
+ # resp.source_network.source_region #=> String
2513
+ # resp.source_network.source_vpc_id #=> String
2514
+ # resp.source_network.tags #=> Hash
2515
+ # resp.source_network.tags["TagKey"] #=> String
2516
+ #
2517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/drs-2020-02-26/StopSourceNetworkReplication AWS API Documentation
2518
+ #
2519
+ # @overload stop_source_network_replication(params = {})
2520
+ # @param [Hash] params ({})
2521
+ def stop_source_network_replication(params = {}, options = {})
2522
+ req = build_request(:stop_source_network_replication, params)
2523
+ req.send_request(options)
2524
+ end
2525
+
2154
2526
  # Adds or overwrites only the specified tags for the specified Elastic
2155
2527
  # Disaster Recovery resource or resources. When you specify an existing
2156
2528
  # tag key, the value is overwritten with the new value. Each resource
@@ -2205,8 +2577,11 @@ module Aws::Drs
2205
2577
  # resp.job.arn #=> String
2206
2578
  # resp.job.creation_date_time #=> String
2207
2579
  # resp.job.end_date_time #=> String
2208
- # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT"
2580
+ # resp.job.initiated_by #=> String, one of "START_RECOVERY", "START_DRILL", "FAILBACK", "DIAGNOSTIC", "TERMINATE_RECOVERY_INSTANCES", "TARGET_ACCOUNT", "CREATE_NETWORK_RECOVERY", "UPDATE_NETWORK_RECOVERY", "ASSOCIATE_NETWORK_RECOVERY"
2209
2581
  # resp.job.job_id #=> String
2582
+ # resp.job.participating_resources #=> Array
2583
+ # resp.job.participating_resources[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2584
+ # resp.job.participating_resources[0].participating_resource_id.source_network_id #=> String
2210
2585
  # resp.job.participating_servers #=> Array
2211
2586
  # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
2212
2587
  # resp.job.participating_servers[0].recovery_instance_id #=> String
@@ -2371,6 +2746,9 @@ module Aws::Drs
2371
2746
  # @option params [Boolean] :copy_tags
2372
2747
  # Copy tags.
2373
2748
  #
2749
+ # @option params [String] :export_bucket_arn
2750
+ # S3 bucket ARN to export Source Network templates.
2751
+ #
2374
2752
  # @option params [required, String] :launch_configuration_template_id
2375
2753
  # Launch Configuration Template ID.
2376
2754
  #
@@ -2392,6 +2770,7 @@ module Aws::Drs
2392
2770
  # resp = client.update_launch_configuration_template({
2393
2771
  # copy_private_ip: false,
2394
2772
  # copy_tags: false,
2773
+ # export_bucket_arn: "ARN",
2395
2774
  # launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
2396
2775
  # launch_disposition: "STOPPED", # accepts STOPPED, STARTED
2397
2776
  # licensing: {
@@ -2405,6 +2784,7 @@ module Aws::Drs
2405
2784
  # resp.launch_configuration_template.arn #=> String
2406
2785
  # resp.launch_configuration_template.copy_private_ip #=> Boolean
2407
2786
  # resp.launch_configuration_template.copy_tags #=> Boolean
2787
+ # resp.launch_configuration_template.export_bucket_arn #=> String
2408
2788
  # resp.launch_configuration_template.launch_configuration_template_id #=> String
2409
2789
  # resp.launch_configuration_template.launch_disposition #=> String, one of "STOPPED", "STARTED"
2410
2790
  # resp.launch_configuration_template.licensing.os_byol #=> Boolean
@@ -2510,7 +2890,7 @@ module Aws::Drs
2510
2890
  # create_public_ip: false,
2511
2891
  # data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
2512
2892
  # default_large_staging_disk_type: "GP2", # accepts GP2, GP3, ST1, AUTO
2513
- # ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM
2893
+ # ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM, NONE
2514
2894
  # ebs_encryption_key_arn: "ARN",
2515
2895
  # name: "SmallBoundedString",
2516
2896
  # pit_policy: [
@@ -2550,7 +2930,7 @@ module Aws::Drs
2550
2930
  # resp.create_public_ip #=> Boolean
2551
2931
  # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
2552
2932
  # resp.default_large_staging_disk_type #=> String, one of "GP2", "GP3", "ST1", "AUTO"
2553
- # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
2933
+ # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM", "NONE"
2554
2934
  # resp.ebs_encryption_key_arn #=> String
2555
2935
  # resp.name #=> String
2556
2936
  # resp.pit_policy #=> Array
@@ -2671,7 +3051,7 @@ module Aws::Drs
2671
3051
  # create_public_ip: false,
2672
3052
  # data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
2673
3053
  # default_large_staging_disk_type: "GP2", # accepts GP2, GP3, ST1, AUTO
2674
- # ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM
3054
+ # ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM, NONE
2675
3055
  # ebs_encryption_key_arn: "ARN",
2676
3056
  # pit_policy: [
2677
3057
  # {
@@ -2701,7 +3081,7 @@ module Aws::Drs
2701
3081
  # resp.create_public_ip #=> Boolean
2702
3082
  # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
2703
3083
  # resp.default_large_staging_disk_type #=> String, one of "GP2", "GP3", "ST1", "AUTO"
2704
- # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
3084
+ # resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM", "NONE"
2705
3085
  # resp.ebs_encryption_key_arn #=> String
2706
3086
  # resp.pit_policy #=> Array
2707
3087
  # resp.pit_policy[0].enabled #=> Boolean
@@ -2742,7 +3122,7 @@ module Aws::Drs
2742
3122
  params: params,
2743
3123
  config: config)
2744
3124
  context[:gem_name] = 'aws-sdk-drs'
2745
- context[:gem_version] = '1.14.0'
3125
+ context[:gem_version] = '1.15.0'
2746
3126
  Seahorse::Client::Request.new(handlers, context)
2747
3127
  end
2748
3128