Skip to content

Commit 795b870

Browse files
This release expands the ModifyInstanceMaintenanceOptions API to enable or disable instance migration during customer-initiated reboots for EC2 Scheduled Reboot Events.
1 parent b634b59 commit 795b870

20 files changed

+520
-15
lines changed

generator/ServiceModels/ec2/ec2-2016-11-15.api.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29972,6 +29972,10 @@
2997229972
"AutoRecovery":{
2997329973
"shape":"InstanceAutoRecoveryState",
2997429974
"locationName":"autoRecovery"
29975+
},
29976+
"RebootMigration":{
29977+
"shape":"InstanceRebootMigrationState",
29978+
"locationName":"rebootMigration"
2997529979
}
2997629980
}
2997729981
},
@@ -30387,6 +30391,13 @@
3038730391
"locationName":"item"
3038830392
}
3038930393
},
30394+
"InstanceRebootMigrationState":{
30395+
"type":"string",
30396+
"enum":[
30397+
"disabled",
30398+
"default"
30399+
]
30400+
},
3039030401
"InstanceRequirements":{
3039130402
"type":"structure",
3039230403
"members":{
@@ -31854,6 +31865,10 @@
3185431865
"PhcSupport":{
3185531866
"shape":"PhcSupport",
3185631867
"locationName":"phcSupport"
31868+
},
31869+
"RebootMigrationSupport":{
31870+
"shape":"RebootMigrationSupport",
31871+
"locationName":"rebootMigrationSupport"
3185731872
}
3185831873
}
3185931874
},
@@ -36464,6 +36479,7 @@
3646436479
"members":{
3646536480
"InstanceId":{"shape":"InstanceId"},
3646636481
"AutoRecovery":{"shape":"InstanceAutoRecoveryState"},
36482+
"RebootMigration":{"shape":"InstanceRebootMigrationState"},
3646736483
"DryRun":{"shape":"Boolean"}
3646836484
}
3646936485
},
@@ -36477,6 +36493,10 @@
3647736493
"AutoRecovery":{
3647836494
"shape":"InstanceAutoRecoveryState",
3647936495
"locationName":"autoRecovery"
36496+
},
36497+
"RebootMigration":{
36498+
"shape":"InstanceRebootMigrationState",
36499+
"locationName":"rebootMigration"
3648036500
}
3648136501
}
3648236502
},
@@ -41185,6 +41205,13 @@
4118541205
}
4118641206
}
4118741207
},
41208+
"RebootMigrationSupport":{
41209+
"type":"string",
41210+
"enum":[
41211+
"unsupported",
41212+
"supported"
41213+
]
41214+
},
4118841215
"RecurringCharge":{
4118941216
"type":"structure",
4119041217
"members":{

generator/ServiceModels/ec2/ec2-2016-11-15.docs.json

Lines changed: 17 additions & 3 deletions
Large diffs are not rendered by default.

generator/ServiceModels/ec2/ec2-2016-11-15.normal.json

Lines changed: 36 additions & 3 deletions
Large diffs are not rendered by default.

sdk/src/Services/EC2/Generated/Model/DescribeInstanceTopologyRequest.cs

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ namespace Amazon.EC2.Model
5858
/// </para>
5959
/// <ul> <li>
6060
/// <para>
61+
/// Returns 3 network nodes in the response
62+
/// </para>
63+
/// <ul> <li>
64+
/// <para>
6165
/// <c>hpc6a.48xlarge</c> | <c>hpc6id.32xlarge</c> | <c>hpc7a.12xlarge</c> | <c>hpc7a.24xlarge</c>
6266
/// | <c>hpc7a.48xlarge</c> | <c>hpc7a.96xlarge</c> | <c>hpc7g.4xlarge</c> | <c>hpc7g.8xlarge</c>
6367
/// | <c>hpc7g.16xlarge</c>
@@ -72,7 +76,15 @@ namespace Amazon.EC2.Model
7276
/// <c>trn1.2xlarge</c> | <c>trn1.32xlarge</c> | <c>trn1n.32xlarge</c> | <c>trn2.48xlarge</c>
7377
/// | <c>trn2u.48xlarge</c>
7478
/// </para>
75-
/// </li> </ul> </li> </ul>
79+
/// </li> </ul> </li> <li>
80+
/// <para>
81+
/// Returns 4 network nodes in the response
82+
/// </para>
83+
/// <ul> <li>
84+
/// <para>
85+
/// <c>p6-b200.48xlarge</c>
86+
/// </para>
87+
/// </li> </ul> </li> </ul> </li> </ul>
7688
/// <para>
7789
/// For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-topology.html">Amazon
7890
/// EC2 instance topology</a> in the <i>Amazon EC2 User Guide</i>.

sdk/src/Services/EC2/Generated/Model/DescribeInstanceTypesRequest.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,11 @@ public partial class DescribeInstanceTypesRequest : AmazonEC2Request
262262
/// </para>
263263
/// </li> <li>
264264
/// <para>
265+
/// <c>reboot-migration-support</c> - Indicates whether enabling reboot migration is
266+
/// supported (<c>supported</c> | <c>unsupported</c>).
267+
/// </para>
268+
/// </li> <li>
269+
/// <para>
265270
/// <c>supported-boot-mode</c> - The boot mode (<c>legacy-bios</c> | <c>uefi</c>).
266271
/// </para>
267272
/// </li> <li>

sdk/src/Services/EC2/Generated/Model/InstanceMaintenanceOptions.cs

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ namespace Amazon.EC2.Model
3535
public partial class InstanceMaintenanceOptions
3636
{
3737
private InstanceAutoRecoveryState _autoRecovery;
38+
private InstanceRebootMigrationState _rebootMigration;
3839

3940
/// <summary>
4041
/// Gets and sets the property AutoRecovery.
@@ -54,5 +55,41 @@ internal bool IsSetAutoRecovery()
5455
return this._autoRecovery != null;
5556
}
5657

58+
/// <summary>
59+
/// Gets and sets the property RebootMigration.
60+
/// <para>
61+
/// Specifies whether to attempt reboot migration during a user-initiated reboot of an
62+
/// instance that has a scheduled <c>system-reboot</c> event:
63+
/// </para>
64+
/// <ul> <li>
65+
/// <para>
66+
/// <c>default</c> - Amazon EC2 attempts to migrate the instance to new hardware (reboot
67+
/// migration). If successful, the <c>system-reboot</c> event is cleared. If unsuccessful,
68+
/// an in-place reboot occurs and the event remains scheduled.
69+
/// </para>
70+
/// </li> <li>
71+
/// <para>
72+
/// <c>disabled</c> - Amazon EC2 keeps the instance on the same hardware (in-place reboot).
73+
/// The <c>system-reboot</c> event remains scheduled.
74+
/// </para>
75+
/// </li> </ul>
76+
/// <para>
77+
/// This setting only applies to supported instances that have a scheduled reboot event.
78+
/// For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/schedevents_actions_reboot.html#reboot-migration">Enable
79+
/// or disable reboot migration</a> in the <i>Amazon EC2 User Guide</i>.
80+
/// </para>
81+
/// </summary>
82+
public InstanceRebootMigrationState RebootMigration
83+
{
84+
get { return this._rebootMigration; }
85+
set { this._rebootMigration = value; }
86+
}
87+
88+
// Check to see if RebootMigration property is set
89+
internal bool IsSetRebootMigration()
90+
{
91+
return this._rebootMigration != null;
92+
}
93+
5794
}
5895
}

sdk/src/Services/EC2/Generated/Model/InstanceTypeInfo.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public partial class InstanceTypeInfo
5959
private PhcSupport _phcSupport;
6060
private PlacementGroupInfo _placementGroupInfo;
6161
private ProcessorInfo _processorInfo;
62+
private RebootMigrationSupport _rebootMigrationSupport;
6263
private List<string> _supportedBootModes = AWSConfigs.InitializeCollections ? new List<string>() : null;
6364
private List<string> _supportedRootDeviceTypes = AWSConfigs.InitializeCollections ? new List<string>() : null;
6465
private List<string> _supportedUsageClasses = AWSConfigs.InitializeCollections ? new List<string>() : null;
@@ -518,6 +519,27 @@ internal bool IsSetProcessorInfo()
518519
return this._processorInfo != null;
519520
}
520521

522+
/// <summary>
523+
/// Gets and sets the property RebootMigrationSupport.
524+
/// <para>
525+
/// Indicates whether reboot migration during a user-initiated reboot is supported for
526+
/// instances that have a scheduled <c>system-reboot</c> event. For more information,
527+
/// see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/schedevents_actions_reboot.html#reboot-migration">Enable
528+
/// or disable reboot migration</a> in the <i>Amazon EC2 User Guide</i>.
529+
/// </para>
530+
/// </summary>
531+
public RebootMigrationSupport RebootMigrationSupport
532+
{
533+
get { return this._rebootMigrationSupport; }
534+
set { this._rebootMigrationSupport = value; }
535+
}
536+
537+
// Check to see if RebootMigrationSupport property is set
538+
internal bool IsSetRebootMigrationSupport()
539+
{
540+
return this._rebootMigrationSupport != null;
541+
}
542+
521543
/// <summary>
522544
/// Gets and sets the property SupportedBootModes.
523545
/// <para>

sdk/src/Services/EC2/Generated/Model/Internal/MarshallTransformations/InstanceMaintenanceOptionsUnmarshaller.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,12 @@ public InstanceMaintenanceOptions Unmarshall(XmlUnmarshallerContext context)
6161
unmarshalledObject.AutoRecovery = unmarshaller.Unmarshall(context);
6262
continue;
6363
}
64+
if (context.TestExpression("rebootMigration", targetDepth))
65+
{
66+
var unmarshaller = StringUnmarshaller.Instance;
67+
unmarshalledObject.RebootMigration = unmarshaller.Unmarshall(context);
68+
continue;
69+
}
6470
}
6571
else if (context.IsEndElement && context.CurrentDepth < originalDepth)
6672
{

sdk/src/Services/EC2/Generated/Model/Internal/MarshallTransformations/InstanceTypeInfoUnmarshaller.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,12 @@ public InstanceTypeInfo Unmarshall(XmlUnmarshallerContext context)
205205
unmarshalledObject.ProcessorInfo = unmarshaller.Unmarshall(context);
206206
continue;
207207
}
208+
if (context.TestExpression("rebootMigrationSupport", targetDepth))
209+
{
210+
var unmarshaller = StringUnmarshaller.Instance;
211+
unmarshalledObject.RebootMigrationSupport = unmarshaller.Unmarshall(context);
212+
continue;
213+
}
208214
if (context.TestExpression("supportedBootModes/item", targetDepth))
209215
{
210216
var unmarshaller = StringUnmarshaller.Instance;

sdk/src/Services/EC2/Generated/Model/Internal/MarshallTransformations/ModifyInstanceMaintenanceOptionsRequestMarshaller.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,10 @@ public IRequest Marshall(ModifyInstanceMaintenanceOptionsRequest publicRequest)
6767
{
6868
request.Parameters.Add("InstanceId", StringUtils.FromString(publicRequest.InstanceId));
6969
}
70+
if(publicRequest.IsSetRebootMigration())
71+
{
72+
request.Parameters.Add("RebootMigration", StringUtils.FromString(publicRequest.RebootMigration));
73+
}
7074
}
7175
return request;
7276
}

0 commit comments

Comments
 (0)