/*******************************************************************************
* Copyright 2012-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use
* this file except in compliance with the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file.
* This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
* *****************************************************************************
*
* AWS Tools for Windows (TM) PowerShell (TM)
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Management.Automation;
using System.Text;
using Amazon.PowerShell.Common;
using Amazon.Runtime;
using Amazon.EC2;
using Amazon.EC2.Model;
namespace Amazon.PowerShell.Cmdlets.EC2
{
///
/// Calculates the Spot placement score for a Region or Availability Zone based on the
/// specified target capacity and compute requirements.
///
///
///
/// You can specify your compute requirements either by using InstanceRequirementsWithMetadata
/// and letting Amazon EC2 choose the optimal instance types to fulfill your Spot request,
/// or you can specify the instance types by using InstanceTypes
.
///
/// For more information, see Spot
/// placement score in the Amazon EC2 User Guide.
///
This cmdlet automatically pages all available results to the pipeline - parameters related to iteration are only needed if you want to manually control the paginated output. To disable autopagination, use -NoAutoIteration.
///
[Cmdlet("Get", "EC2SpotPlacementScore")]
[OutputType("Amazon.EC2.Model.SpotPlacementScore")]
[AWSCmdlet("Calls the Amazon Elastic Compute Cloud (EC2) GetSpotPlacementScores API operation.", Operation = new[] {"GetSpotPlacementScores"}, SelectReturnType = typeof(Amazon.EC2.Model.GetSpotPlacementScoresResponse))]
[AWSCmdletOutput("Amazon.EC2.Model.SpotPlacementScore or Amazon.EC2.Model.GetSpotPlacementScoresResponse",
"This cmdlet returns a collection of Amazon.EC2.Model.SpotPlacementScore objects.",
"The service call response (type Amazon.EC2.Model.GetSpotPlacementScoresResponse) can also be referenced from properties attached to the cmdlet entry in the $AWSHistory stack."
)]
public partial class GetEC2SpotPlacementScoreCmdlet : AmazonEC2ClientCmdlet, IExecutor
{
#region Parameter InstanceRequirements_AcceleratorManufacturer
///
///
/// Indicates whether instance types must have accelerators by specific manufacturers.- For instance types with NVIDIA devices, specify
nvidia
. - For instance types with AMD devices, specify
amd
. - For instance types with Amazon Web Services devices, specify
amazon-web-services
. - For instance types with Xilinx devices, specify
xilinx
.
Default: Any manufacturer
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorManufacturers")]
public System.String[] InstanceRequirements_AcceleratorManufacturer { get; set; }
#endregion
#region Parameter InstanceRequirements_AcceleratorName
///
///
/// The accelerators that must be on the instance type.- For instance types with NVIDIA A100 GPUs, specify
a100
. - For instance types with NVIDIA V100 GPUs, specify
v100
. - For instance types with NVIDIA K80 GPUs, specify
k80
. - For instance types with NVIDIA T4 GPUs, specify
t4
. - For instance types with NVIDIA M60 GPUs, specify
m60
. - For instance types with AMD Radeon Pro V520 GPUs, specify
radeon-pro-v520
. - For instance types with Xilinx VU9P FPGAs, specify
vu9p
. - For instance types with Amazon Web Services Inferentia chips, specify
inferentia
. - For instance types with NVIDIA GRID K520 GPUs, specify
k520
.
Default: Any accelerator
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorNames")]
public System.String[] InstanceRequirements_AcceleratorName { get; set; }
#endregion
#region Parameter InstanceRequirements_AcceleratorType
///
///
/// The accelerator types that must be on the instance type.- To include instance types with GPU hardware, specify
gpu
. - To include instance types with FPGA hardware, specify
fpga
. - To include instance types with inference hardware, specify
inference
.
Default: Any accelerator type
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTypes")]
public System.String[] InstanceRequirements_AcceleratorType { get; set; }
#endregion
#region Parameter InstanceRequirements_AllowedInstanceType
///
///
/// The instance types to apply your specified attributes against. All other instance
/// types are ignored, even if they match your specified attributes.You can use strings with one or more wild cards, represented by an asterisk (*
),
/// to allow an instance type, size, or generation. The following are examples: m5.8xlarge
,
/// c5*.*
, m5a.*
, r*
, *3*
.For example, if you specify c5*
,Amazon EC2 will allow the entire C5 instance
/// family, which includes all C5a and C5n instance types. If you specify m5a.*
,
/// Amazon EC2 will allow all the M5a instance types, but not the M5n instance types.If you specify AllowedInstanceTypes
, you can't specify ExcludedInstanceTypes
.Default: All instance types
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AllowedInstanceTypes")]
public System.String[] InstanceRequirements_AllowedInstanceType { get; set; }
#endregion
#region Parameter InstanceRequirementsWithMetadata_ArchitectureType
///
///
/// The architecture type.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_ArchitectureTypes")]
public System.String[] InstanceRequirementsWithMetadata_ArchitectureType { get; set; }
#endregion
#region Parameter InstanceRequirements_BareMetal
///
///
/// Indicates whether bare metal instance types must be included, excluded, or required.- To include bare metal instance types, specify
included
. - To require only bare metal instance types, specify
required
. - To exclude bare metal instance types, specify
excluded
.
Default: excluded
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BareMetal")]
[AWSConstantClassSource("Amazon.EC2.BareMetal")]
public Amazon.EC2.BareMetal InstanceRequirements_BareMetal { get; set; }
#endregion
#region Parameter InstanceRequirements_BurstablePerformance
///
///
/// Indicates whether burstable performance T instance types are included, excluded, or
/// required. For more information, see Burstable
/// performance instances.- To include burstable performance instance types, specify
included
. - To require only burstable performance instance types, specify
required
. - To exclude burstable performance instance types, specify
excluded
.
Default: excluded
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BurstablePerformance")]
[AWSConstantClassSource("Amazon.EC2.BurstablePerformance")]
public Amazon.EC2.BurstablePerformance InstanceRequirements_BurstablePerformance { get; set; }
#endregion
#region Parameter InstanceRequirements_CpuManufacturer
///
///
/// The CPU manufacturers to include.- For instance types with Intel CPUs, specify
intel
. - For instance types with AMD CPUs, specify
amd
. - For instance types with Amazon Web Services CPUs, specify
amazon-web-services
.
Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched
/// with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you
/// specify in your launch template.Default: Any manufacturer
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_CpuManufacturers")]
public System.String[] InstanceRequirements_CpuManufacturer { get; set; }
#endregion
#region Parameter InstanceRequirements_ExcludedInstanceType
///
///
/// The instance types to exclude.You can use strings with one or more wild cards, represented by an asterisk (*
),
/// to exclude an instance family, type, size, or generation. The following are examples:
/// m5.8xlarge
, c5*.*
, m5a.*
, r*
,
/// *3*
.For example, if you specify c5*
,Amazon EC2 will exclude the entire C5
/// instance family, which includes all C5a and C5n instance types. If you specify m5a.*
,
/// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.If you specify ExcludedInstanceTypes
, you can't specify AllowedInstanceTypes
.Default: No excluded instance types
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_ExcludedInstanceTypes")]
public System.String[] InstanceRequirements_ExcludedInstanceType { get; set; }
#endregion
#region Parameter InstanceRequirements_InstanceGeneration
///
///
/// Indicates whether current or previous generation instance types are included. The
/// current generation instance types are recommended for use. Current generation instance
/// types are typically the latest two to three generations in each instance family. For
/// more information, see Instance
/// types in the Amazon EC2 User Guide.For current generation instance types, specify current
.For previous generation instance types, specify previous
.Default: Current and previous generation instance types
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_InstanceGenerations")]
public System.String[] InstanceRequirements_InstanceGeneration { get; set; }
#endregion
#region Parameter InstanceType
///
///
/// The instance types. We recommend that you specify at least three instance types. If
/// you specify one or two instance types, or specify variations of a single instance
/// type (for example, an m3.xlarge
with and without instance storage), the
/// returned placement score will always be low. If you specify InstanceTypes
, you can't specify InstanceRequirementsWithMetadata
.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceTypes")]
public System.String[] InstanceType { get; set; }
#endregion
#region Parameter InstanceRequirements_LocalStorage
///
///
/// Indicates whether instance types with instance store volumes are included, excluded,
/// or required. For more information, Amazon
/// EC2 instance store in the Amazon EC2 User Guide.- To include instance types with instance store volumes, specify
included
. - To require only instance types with instance store volumes, specify
required
. - To exclude instance types with instance store volumes, specify
excluded
.
Default: included
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_LocalStorage")]
[AWSConstantClassSource("Amazon.EC2.LocalStorage")]
public Amazon.EC2.LocalStorage InstanceRequirements_LocalStorage { get; set; }
#endregion
#region Parameter InstanceRequirements_LocalStorageType
///
///
/// The type of local storage that is required.- For instance types with hard disk drive (HDD) storage, specify
hdd
. - For instance types with solid state drive (SSD) storage, specify
ssd
.
Default: hdd
and ssd
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_LocalStorageTypes")]
public System.String[] InstanceRequirements_LocalStorageType { get; set; }
#endregion
#region Parameter AcceleratorCount_Max
///
///
/// The maximum number of accelerators. To specify no maximum limit, omit this parameter.
/// To exclude accelerator-enabled instance types, set Max
to 0
.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_Max")]
public System.Int32? AcceleratorCount_Max { get; set; }
#endregion
#region Parameter AcceleratorTotalMemoryMiB_Max
///
///
/// The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_Max")]
public System.Int32? AcceleratorTotalMemoryMiB_Max { get; set; }
#endregion
#region Parameter BaselineEbsBandwidthMbps_Max
///
///
/// The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_Max")]
public System.Int32? BaselineEbsBandwidthMbps_Max { get; set; }
#endregion
#region Parameter MemoryGiBPerVCpu_Max
///
///
/// The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this
/// parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_Max")]
public System.Double? MemoryGiBPerVCpu_Max { get; set; }
#endregion
#region Parameter MemoryMiB_Max
///
///
/// The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_Max")]
public System.Int32? MemoryMiB_Max { get; set; }
#endregion
#region Parameter NetworkBandwidthGbps_Max
///
///
/// The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_Max")]
public System.Double? NetworkBandwidthGbps_Max { get; set; }
#endregion
#region Parameter NetworkInterfaceCount_Max
///
///
/// The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_Max")]
public System.Int32? NetworkInterfaceCount_Max { get; set; }
#endregion
#region Parameter TotalLocalStorageGB_Max
///
///
/// The maximum amount of total local storage, in GB. To specify no maximum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_Max")]
public System.Double? TotalLocalStorageGB_Max { get; set; }
#endregion
#region Parameter VCpuCount_Max
///
///
/// The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_Max")]
public System.Int32? VCpuCount_Max { get; set; }
#endregion
#region Parameter AcceleratorCount_Min
///
///
/// The minimum number of accelerators. To specify no minimum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_Min")]
public System.Int32? AcceleratorCount_Min { get; set; }
#endregion
#region Parameter AcceleratorTotalMemoryMiB_Min
///
///
/// The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_Min")]
public System.Int32? AcceleratorTotalMemoryMiB_Min { get; set; }
#endregion
#region Parameter BaselineEbsBandwidthMbps_Min
///
///
/// The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_Min")]
public System.Int32? BaselineEbsBandwidthMbps_Min { get; set; }
#endregion
#region Parameter MemoryGiBPerVCpu_Min
///
///
/// The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this
/// parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_Min")]
public System.Double? MemoryGiBPerVCpu_Min { get; set; }
#endregion
#region Parameter MemoryMiB_Min
///
///
/// The minimum amount of memory, in MiB. To specify no minimum limit, specify 0
.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_Min")]
public System.Int32? MemoryMiB_Min { get; set; }
#endregion
#region Parameter NetworkBandwidthGbps_Min
///
///
/// The minimum amount of network bandwidth, in Gbps. To specify no minimum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_Min")]
public System.Double? NetworkBandwidthGbps_Min { get; set; }
#endregion
#region Parameter NetworkInterfaceCount_Min
///
///
/// The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_Min")]
public System.Int32? NetworkInterfaceCount_Min { get; set; }
#endregion
#region Parameter TotalLocalStorageGB_Min
///
///
/// The minimum amount of total local storage, in GB. To specify no minimum limit, omit
/// this parameter.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_Min")]
public System.Double? TotalLocalStorageGB_Min { get; set; }
#endregion
#region Parameter VCpuCount_Min
///
///
/// The minimum number of vCPUs. To specify no minimum limit, specify 0
.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_Min")]
public System.Int32? VCpuCount_Min { get; set; }
#endregion
#region Parameter InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice
///
///
/// The price protection threshold for On-Demand Instances. This is the maximum you’ll
/// pay for an On-Demand Instance, expressed as a percentage above the least expensive
/// current generation M, C, or R instance type with your specified attributes. When Amazon
/// EC2 selects instance types with your attributes, it excludes instance types priced
/// above your threshold.The parameter accepts an integer, which Amazon EC2 interprets as a percentage.To turn off price protection, specify a high value, such as 999999
.This parameter is not supported for GetSpotPlacementScores
/// and GetInstanceTypesFromInstanceRequirements.If you set TargetCapacityUnitType
to vcpu
or memory-mib
,
/// the price protection threshold is applied based on the per-vCPU or per-memory price
/// instead of the per-instance price.Default: 20
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice")]
public System.Int32? InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice { get; set; }
#endregion
#region Parameter RegionName
///
///
/// The Regions used to narrow down the list of Regions to be scored. Enter the Region
/// code, for example, us-east-1
.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("RegionNames")]
public System.String[] RegionName { get; set; }
#endregion
#region Parameter InstanceRequirements_RequireHibernateSupport
///
///
/// Indicates whether instance types must support hibernation for On-Demand Instances.This parameter is not supported for GetSpotPlacementScores.Default: false
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_RequireHibernateSupport")]
public System.Boolean? InstanceRequirements_RequireHibernateSupport { get; set; }
#endregion
#region Parameter SingleAvailabilityZone
///
///
/// Specify true
so that the response returns a list of scored Availability
/// Zones. Otherwise, the response returns a list of scored Regions.A list of scored Availability Zones is useful if you want to launch all of your Spot
/// capacity into a single Availability Zone.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
public System.Boolean? SingleAvailabilityZone { get; set; }
#endregion
#region Parameter InstanceRequirements_SpotMaxPricePercentageOverLowestPrice
///
///
/// The price protection threshold for Spot Instance. This is the maximum you’ll pay for
/// an Spot Instance, expressed as a percentage above the least expensive current generation
/// M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance
/// types with your attributes, it excludes instance types priced above your threshold.The parameter accepts an integer, which Amazon EC2 interprets as a percentage.To turn off price protection, specify a high value, such as 999999
.This parameter is not supported for GetSpotPlacementScores
/// and GetInstanceTypesFromInstanceRequirements.If you set TargetCapacityUnitType
to vcpu
or memory-mib
,
/// the price protection threshold is applied based on the per-vCPU or per-memory price
/// instead of the per-instance price.Default: 100
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_InstanceRequirements_SpotMaxPricePercentageOverLowestPrice")]
public System.Int32? InstanceRequirements_SpotMaxPricePercentageOverLowestPrice { get; set; }
#endregion
#region Parameter TargetCapacity
///
///
/// The target capacity.
///
///
#if !MODULAR
[System.Management.Automation.Parameter(Position = 0, ValueFromPipelineByPropertyName = true, ValueFromPipeline = true)]
#else
[System.Management.Automation.Parameter(Position = 0, ValueFromPipelineByPropertyName = true, ValueFromPipeline = true, Mandatory = true)]
[System.Management.Automation.AllowNull]
#endif
[Amazon.PowerShell.Common.AWSRequiredParameter]
public System.Int32? TargetCapacity { get; set; }
#endregion
#region Parameter TargetCapacityUnitType
///
///
/// The unit for the target capacity.Default: units
(translates to number of instances)
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[AWSConstantClassSource("Amazon.EC2.TargetCapacityUnitType")]
public Amazon.EC2.TargetCapacityUnitType TargetCapacityUnitType { get; set; }
#endregion
#region Parameter InstanceRequirementsWithMetadata_VirtualizationType
///
///
/// The virtualization type.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("InstanceRequirementsWithMetadata_VirtualizationTypes")]
public System.String[] InstanceRequirementsWithMetadata_VirtualizationType { get; set; }
#endregion
#region Parameter MaxResult
///
///
/// The maximum number of items to return for this request. To get the next page of items,
/// make another request with the token returned in the output. For more information,
/// see Pagination.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
[Alias("MaxResults")]
public System.Int32? MaxResult { get; set; }
#endregion
#region Parameter NextToken
///
///
/// The token returned from a previous paginated request. Pagination continues from the
/// end of the items returned by the previous request.
///
///
///
Note: This parameter is only used if you are manually controlling output pagination of the service API call.
///
In order to manually control output pagination, use '-NextToken $null' for the first call and '-NextToken $AWSHistory.LastServiceResponse.NextToken' for subsequent calls.
///
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
public System.String NextToken { get; set; }
#endregion
#region Parameter Select
///
/// Use the -Select parameter to control the cmdlet output. The default value is 'SpotPlacementScores'.
/// Specifying -Select '*' will result in the cmdlet returning the whole service response (Amazon.EC2.Model.GetSpotPlacementScoresResponse).
/// Specifying the name of a property of type Amazon.EC2.Model.GetSpotPlacementScoresResponse will result in that property being returned.
/// Specifying -Select '^ParameterName' will result in the cmdlet returning the selected cmdlet parameter value.
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
public string Select { get; set; } = "SpotPlacementScores";
#endregion
#region Parameter PassThru
///
/// Changes the cmdlet behavior to return the value passed to the TargetCapacity parameter.
/// The -PassThru parameter is deprecated, use -Select '^TargetCapacity' instead. This parameter will be removed in a future version.
///
[System.Obsolete("The -PassThru parameter is deprecated, use -Select '^TargetCapacity' instead. This parameter will be removed in a future version.")]
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
public SwitchParameter PassThru { get; set; }
#endregion
#region Parameter NoAutoIteration
///
/// By default the cmdlet will auto-iterate and retrieve all results to the pipeline by performing multiple
/// service calls. If set, the cmdlet will retrieve only the next 'page' of results using the value of NextToken
/// as the start point.
///
[System.Management.Automation.Parameter(ValueFromPipelineByPropertyName = true)]
public SwitchParameter NoAutoIteration { get; set; }
#endregion
protected override void ProcessRecord()
{
this._AWSSignerType = "v4";
base.ProcessRecord();
var context = new CmdletContext();
// allow for manipulation of parameters prior to loading into context
PreExecutionContextLoad(context);
#pragma warning disable CS0618, CS0612 //A class member was marked with the Obsolete attribute
if (ParameterWasBound(nameof(this.Select)))
{
context.Select = CreateSelectDelegate(Select) ??
throw new System.ArgumentException("Invalid value for -Select parameter.", nameof(this.Select));
if (this.PassThru.IsPresent)
{
throw new System.ArgumentException("-PassThru cannot be used when -Select is specified.", nameof(this.Select));
}
}
else if (this.PassThru.IsPresent)
{
context.Select = (response, cmdlet) => this.TargetCapacity;
}
#pragma warning restore CS0618, CS0612 //A class member was marked with the Obsolete attribute
if (this.InstanceRequirementsWithMetadata_ArchitectureType != null)
{
context.InstanceRequirementsWithMetadata_ArchitectureType = new List(this.InstanceRequirementsWithMetadata_ArchitectureType);
}
context.AcceleratorCount_Max = this.AcceleratorCount_Max;
context.AcceleratorCount_Min = this.AcceleratorCount_Min;
if (this.InstanceRequirements_AcceleratorManufacturer != null)
{
context.InstanceRequirements_AcceleratorManufacturer = new List(this.InstanceRequirements_AcceleratorManufacturer);
}
if (this.InstanceRequirements_AcceleratorName != null)
{
context.InstanceRequirements_AcceleratorName = new List(this.InstanceRequirements_AcceleratorName);
}
context.AcceleratorTotalMemoryMiB_Max = this.AcceleratorTotalMemoryMiB_Max;
context.AcceleratorTotalMemoryMiB_Min = this.AcceleratorTotalMemoryMiB_Min;
if (this.InstanceRequirements_AcceleratorType != null)
{
context.InstanceRequirements_AcceleratorType = new List(this.InstanceRequirements_AcceleratorType);
}
if (this.InstanceRequirements_AllowedInstanceType != null)
{
context.InstanceRequirements_AllowedInstanceType = new List(this.InstanceRequirements_AllowedInstanceType);
}
context.InstanceRequirements_BareMetal = this.InstanceRequirements_BareMetal;
context.BaselineEbsBandwidthMbps_Max = this.BaselineEbsBandwidthMbps_Max;
context.BaselineEbsBandwidthMbps_Min = this.BaselineEbsBandwidthMbps_Min;
context.InstanceRequirements_BurstablePerformance = this.InstanceRequirements_BurstablePerformance;
if (this.InstanceRequirements_CpuManufacturer != null)
{
context.InstanceRequirements_CpuManufacturer = new List(this.InstanceRequirements_CpuManufacturer);
}
if (this.InstanceRequirements_ExcludedInstanceType != null)
{
context.InstanceRequirements_ExcludedInstanceType = new List(this.InstanceRequirements_ExcludedInstanceType);
}
if (this.InstanceRequirements_InstanceGeneration != null)
{
context.InstanceRequirements_InstanceGeneration = new List(this.InstanceRequirements_InstanceGeneration);
}
context.InstanceRequirements_LocalStorage = this.InstanceRequirements_LocalStorage;
if (this.InstanceRequirements_LocalStorageType != null)
{
context.InstanceRequirements_LocalStorageType = new List(this.InstanceRequirements_LocalStorageType);
}
context.MemoryGiBPerVCpu_Max = this.MemoryGiBPerVCpu_Max;
context.MemoryGiBPerVCpu_Min = this.MemoryGiBPerVCpu_Min;
context.MemoryMiB_Max = this.MemoryMiB_Max;
context.MemoryMiB_Min = this.MemoryMiB_Min;
context.NetworkBandwidthGbps_Max = this.NetworkBandwidthGbps_Max;
context.NetworkBandwidthGbps_Min = this.NetworkBandwidthGbps_Min;
context.NetworkInterfaceCount_Max = this.NetworkInterfaceCount_Max;
context.NetworkInterfaceCount_Min = this.NetworkInterfaceCount_Min;
context.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = this.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice;
context.InstanceRequirements_RequireHibernateSupport = this.InstanceRequirements_RequireHibernateSupport;
context.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice = this.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice;
context.TotalLocalStorageGB_Max = this.TotalLocalStorageGB_Max;
context.TotalLocalStorageGB_Min = this.TotalLocalStorageGB_Min;
context.VCpuCount_Max = this.VCpuCount_Max;
context.VCpuCount_Min = this.VCpuCount_Min;
if (this.InstanceRequirementsWithMetadata_VirtualizationType != null)
{
context.InstanceRequirementsWithMetadata_VirtualizationType = new List(this.InstanceRequirementsWithMetadata_VirtualizationType);
}
if (this.InstanceType != null)
{
context.InstanceType = new List(this.InstanceType);
}
context.MaxResult = this.MaxResult;
context.NextToken = this.NextToken;
if (this.RegionName != null)
{
context.RegionName = new List(this.RegionName);
}
context.SingleAvailabilityZone = this.SingleAvailabilityZone;
context.TargetCapacity = this.TargetCapacity;
#if MODULAR
if (this.TargetCapacity == null && ParameterWasBound(nameof(this.TargetCapacity)))
{
WriteWarning("You are passing $null as a value for parameter TargetCapacity which is marked as required. In case you believe this parameter was incorrectly marked as required, report this by opening an issue at https://github.com/aws/aws-tools-for-powershell/issues.");
}
#endif
context.TargetCapacityUnitType = this.TargetCapacityUnitType;
// allow further manipulation of loaded context prior to processing
PostExecutionContextLoad(context);
var output = Execute(context) as CmdletOutput;
ProcessOutput(output);
}
#region IExecutor Members
public object Execute(ExecutorContext context)
{
var cmdletContext = context as CmdletContext;
#pragma warning disable CS0618, CS0612 //A class member was marked with the Obsolete attribute
var useParameterSelect = this.Select.StartsWith("^") || this.PassThru.IsPresent;
#pragma warning restore CS0618, CS0612 //A class member was marked with the Obsolete attribute
// create request and set iteration invariants
var request = new Amazon.EC2.Model.GetSpotPlacementScoresRequest();
// populate InstanceRequirementsWithMetadata
var requestInstanceRequirementsWithMetadataIsNull = true;
request.InstanceRequirementsWithMetadata = new Amazon.EC2.Model.InstanceRequirementsWithMetadataRequest();
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType = null;
if (cmdletContext.InstanceRequirementsWithMetadata_ArchitectureType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType = cmdletContext.InstanceRequirementsWithMetadata_ArchitectureType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType != null)
{
request.InstanceRequirementsWithMetadata.ArchitectureTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_ArchitectureType;
requestInstanceRequirementsWithMetadataIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType = null;
if (cmdletContext.InstanceRequirementsWithMetadata_VirtualizationType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType = cmdletContext.InstanceRequirementsWithMetadata_VirtualizationType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType != null)
{
request.InstanceRequirementsWithMetadata.VirtualizationTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_VirtualizationType;
requestInstanceRequirementsWithMetadataIsNull = false;
}
Amazon.EC2.Model.InstanceRequirementsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = null;
// populate InstanceRequirements
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = new Amazon.EC2.Model.InstanceRequirementsRequest();
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer = null;
if (cmdletContext.InstanceRequirements_AcceleratorManufacturer != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer = cmdletContext.InstanceRequirements_AcceleratorManufacturer;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorManufacturers = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorManufacturer;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName = null;
if (cmdletContext.InstanceRequirements_AcceleratorName != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName = cmdletContext.InstanceRequirements_AcceleratorName;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorNames = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorName;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType = null;
if (cmdletContext.InstanceRequirements_AcceleratorType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType = cmdletContext.InstanceRequirements_AcceleratorType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AcceleratorType;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType = null;
if (cmdletContext.InstanceRequirements_AllowedInstanceType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType = cmdletContext.InstanceRequirements_AllowedInstanceType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AllowedInstanceTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_AllowedInstanceType;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.BareMetal requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal = null;
if (cmdletContext.InstanceRequirements_BareMetal != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal = cmdletContext.InstanceRequirements_BareMetal;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BareMetal = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BareMetal;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.BurstablePerformance requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance = null;
if (cmdletContext.InstanceRequirements_BurstablePerformance != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance = cmdletContext.InstanceRequirements_BurstablePerformance;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BurstablePerformance = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_BurstablePerformance;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer = null;
if (cmdletContext.InstanceRequirements_CpuManufacturer != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer = cmdletContext.InstanceRequirements_CpuManufacturer;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.CpuManufacturers = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_CpuManufacturer;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType = null;
if (cmdletContext.InstanceRequirements_ExcludedInstanceType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType = cmdletContext.InstanceRequirements_ExcludedInstanceType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.ExcludedInstanceTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_ExcludedInstanceType;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration = null;
if (cmdletContext.InstanceRequirements_InstanceGeneration != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration = cmdletContext.InstanceRequirements_InstanceGeneration;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.InstanceGenerations = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_InstanceGeneration;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.LocalStorage requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage = null;
if (cmdletContext.InstanceRequirements_LocalStorage != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage = cmdletContext.InstanceRequirements_LocalStorage;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.LocalStorage = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorage;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
List requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType = null;
if (cmdletContext.InstanceRequirements_LocalStorageType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType = cmdletContext.InstanceRequirements_LocalStorageType;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.LocalStorageTypes = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_LocalStorageType;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = null;
if (cmdletContext.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice = cmdletContext.InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.OnDemandMaxPricePercentageOverLowestPrice = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_OnDemandMaxPricePercentageOverLowestPrice.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
System.Boolean? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport = null;
if (cmdletContext.InstanceRequirements_RequireHibernateSupport != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport = cmdletContext.InstanceRequirements_RequireHibernateSupport.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.RequireHibernateSupport = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_RequireHibernateSupport.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice = null;
if (cmdletContext.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice = cmdletContext.InstanceRequirements_SpotMaxPricePercentageOverLowestPrice.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.SpotMaxPricePercentageOverLowestPrice = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirements_SpotMaxPricePercentageOverLowestPrice.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.AcceleratorCountRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = null;
// populate AcceleratorCount
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = new Amazon.EC2.Model.AcceleratorCountRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max = null;
if (cmdletContext.AcceleratorCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max = cmdletContext.AcceleratorCount_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min = null;
if (cmdletContext.AcceleratorCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min = cmdletContext.AcceleratorCount_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount_acceleratorCount_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCountIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorCount;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.AcceleratorTotalMemoryMiBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = null;
// populate AcceleratorTotalMemoryMiB
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = new Amazon.EC2.Model.AcceleratorTotalMemoryMiBRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max = null;
if (cmdletContext.AcceleratorTotalMemoryMiB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max = cmdletContext.AcceleratorTotalMemoryMiB_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min = null;
if (cmdletContext.AcceleratorTotalMemoryMiB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min = cmdletContext.AcceleratorTotalMemoryMiB_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB_acceleratorTotalMemoryMiB_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiBIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.AcceleratorTotalMemoryMiB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_AcceleratorTotalMemoryMiB;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.BaselineEbsBandwidthMbpsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = null;
// populate BaselineEbsBandwidthMbps
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = new Amazon.EC2.Model.BaselineEbsBandwidthMbpsRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max = null;
if (cmdletContext.BaselineEbsBandwidthMbps_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max = cmdletContext.BaselineEbsBandwidthMbps_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min = null;
if (cmdletContext.BaselineEbsBandwidthMbps_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min = cmdletContext.BaselineEbsBandwidthMbps_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps_baselineEbsBandwidthMbps_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbpsIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.BaselineEbsBandwidthMbps = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_BaselineEbsBandwidthMbps;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.MemoryGiBPerVCpuRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = null;
// populate MemoryGiBPerVCpu
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = new Amazon.EC2.Model.MemoryGiBPerVCpuRequest();
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max = null;
if (cmdletContext.MemoryGiBPerVCpu_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max = cmdletContext.MemoryGiBPerVCpu_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = false;
}
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min = null;
if (cmdletContext.MemoryGiBPerVCpu_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min = cmdletContext.MemoryGiBPerVCpu_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu_memoryGiBPerVCpu_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpuIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.MemoryGiBPerVCpu = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryGiBPerVCpu;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.MemoryMiBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = null;
// populate MemoryMiB
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = new Amazon.EC2.Model.MemoryMiBRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max = null;
if (cmdletContext.MemoryMiB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max = cmdletContext.MemoryMiB_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min = null;
if (cmdletContext.MemoryMiB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min = cmdletContext.MemoryMiB_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB_memoryMiB_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiBIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.MemoryMiB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_MemoryMiB;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.NetworkBandwidthGbpsRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = null;
// populate NetworkBandwidthGbps
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = new Amazon.EC2.Model.NetworkBandwidthGbpsRequest();
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max = null;
if (cmdletContext.NetworkBandwidthGbps_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max = cmdletContext.NetworkBandwidthGbps_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = false;
}
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min = null;
if (cmdletContext.NetworkBandwidthGbps_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min = cmdletContext.NetworkBandwidthGbps_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps_networkBandwidthGbps_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbpsIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.NetworkBandwidthGbps = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkBandwidthGbps;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.NetworkInterfaceCountRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = null;
// populate NetworkInterfaceCount
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = new Amazon.EC2.Model.NetworkInterfaceCountRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max = null;
if (cmdletContext.NetworkInterfaceCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max = cmdletContext.NetworkInterfaceCount_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min = null;
if (cmdletContext.NetworkInterfaceCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min = cmdletContext.NetworkInterfaceCount_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount_networkInterfaceCount_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCountIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.NetworkInterfaceCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_NetworkInterfaceCount;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.TotalLocalStorageGBRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = null;
// populate TotalLocalStorageGB
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = new Amazon.EC2.Model.TotalLocalStorageGBRequest();
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max = null;
if (cmdletContext.TotalLocalStorageGB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max = cmdletContext.TotalLocalStorageGB_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = false;
}
System.Double? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min = null;
if (cmdletContext.TotalLocalStorageGB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min = cmdletContext.TotalLocalStorageGB_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB_totalLocalStorageGB_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGBIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.TotalLocalStorageGB = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_TotalLocalStorageGB;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
Amazon.EC2.Model.VCpuCountRangeRequest requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = null;
// populate VCpuCount
var requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = true;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = new Amazon.EC2.Model.VCpuCountRangeRequest();
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max = null;
if (cmdletContext.VCpuCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max = cmdletContext.VCpuCount_Max.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount.Max = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Max.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = false;
}
System.Int32? requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min = null;
if (cmdletContext.VCpuCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min = cmdletContext.VCpuCount_Min.Value;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount.Min = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount_vCpuCount_Min.Value;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCountIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount != null)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements.VCpuCount = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements_instanceRequirementsWithMetadata_InstanceRequirements_VCpuCount;
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull = false;
}
// determine if requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements should be set to null
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirementsIsNull)
{
requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements = null;
}
if (requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements != null)
{
request.InstanceRequirementsWithMetadata.InstanceRequirements = requestInstanceRequirementsWithMetadata_instanceRequirementsWithMetadata_InstanceRequirements;
requestInstanceRequirementsWithMetadataIsNull = false;
}
// determine if request.InstanceRequirementsWithMetadata should be set to null
if (requestInstanceRequirementsWithMetadataIsNull)
{
request.InstanceRequirementsWithMetadata = null;
}
if (cmdletContext.InstanceType != null)
{
request.InstanceTypes = cmdletContext.InstanceType;
}
if (cmdletContext.MaxResult != null)
{
request.MaxResults = cmdletContext.MaxResult.Value;
}
if (cmdletContext.RegionName != null)
{
request.RegionNames = cmdletContext.RegionName;
}
if (cmdletContext.SingleAvailabilityZone != null)
{
request.SingleAvailabilityZone = cmdletContext.SingleAvailabilityZone.Value;
}
if (cmdletContext.TargetCapacity != null)
{
request.TargetCapacity = cmdletContext.TargetCapacity.Value;
}
if (cmdletContext.TargetCapacityUnitType != null)
{
request.TargetCapacityUnitType = cmdletContext.TargetCapacityUnitType;
}
// Initialize loop variant and commence piping
var _nextToken = cmdletContext.NextToken;
var _userControllingPaging = this.NoAutoIteration.IsPresent || ParameterWasBound(nameof(this.NextToken));
var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint);
do
{
request.NextToken = _nextToken;
CmdletOutput output;
try
{
var response = CallAWSServiceOperation(client, request);
object pipelineOutput = null;
if (!useParameterSelect)
{
pipelineOutput = cmdletContext.Select(response, this);
}
output = new CmdletOutput
{
PipelineOutput = pipelineOutput,
ServiceResponse = response
};
_nextToken = response.NextToken;
}
catch (Exception e)
{
output = new CmdletOutput { ErrorResponse = e };
}
ProcessOutput(output);
} while (!_userControllingPaging && AutoIterationHelpers.HasValue(_nextToken));
if (useParameterSelect)
{
WriteObject(cmdletContext.Select(null, this));
}
return null;
}
public ExecutorContext CreateContext()
{
return new CmdletContext();
}
#endregion
#region AWS Service Operation Call
private Amazon.EC2.Model.GetSpotPlacementScoresResponse CallAWSServiceOperation(IAmazonEC2 client, Amazon.EC2.Model.GetSpotPlacementScoresRequest request)
{
Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Elastic Compute Cloud (EC2)", "GetSpotPlacementScores");
try
{
#if DESKTOP
return client.GetSpotPlacementScores(request);
#elif CORECLR
return client.GetSpotPlacementScoresAsync(request).GetAwaiter().GetResult();
#else
#error "Unknown build edition"
#endif
}
catch (AmazonServiceException exc)
{
var webException = exc.InnerException as System.Net.WebException;
if (webException != null)
{
throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException);
}
throw;
}
}
#endregion
internal partial class CmdletContext : ExecutorContext
{
public List InstanceRequirementsWithMetadata_ArchitectureType { get; set; }
public System.Int32? AcceleratorCount_Max { get; set; }
public System.Int32? AcceleratorCount_Min { get; set; }
public List InstanceRequirements_AcceleratorManufacturer { get; set; }
public List InstanceRequirements_AcceleratorName { get; set; }
public System.Int32? AcceleratorTotalMemoryMiB_Max { get; set; }
public System.Int32? AcceleratorTotalMemoryMiB_Min { get; set; }
public List InstanceRequirements_AcceleratorType { get; set; }
public List InstanceRequirements_AllowedInstanceType { get; set; }
public Amazon.EC2.BareMetal InstanceRequirements_BareMetal { get; set; }
public System.Int32? BaselineEbsBandwidthMbps_Max { get; set; }
public System.Int32? BaselineEbsBandwidthMbps_Min { get; set; }
public Amazon.EC2.BurstablePerformance InstanceRequirements_BurstablePerformance { get; set; }
public List InstanceRequirements_CpuManufacturer { get; set; }
public List InstanceRequirements_ExcludedInstanceType { get; set; }
public List InstanceRequirements_InstanceGeneration { get; set; }
public Amazon.EC2.LocalStorage InstanceRequirements_LocalStorage { get; set; }
public List InstanceRequirements_LocalStorageType { get; set; }
public System.Double? MemoryGiBPerVCpu_Max { get; set; }
public System.Double? MemoryGiBPerVCpu_Min { get; set; }
public System.Int32? MemoryMiB_Max { get; set; }
public System.Int32? MemoryMiB_Min { get; set; }
public System.Double? NetworkBandwidthGbps_Max { get; set; }
public System.Double? NetworkBandwidthGbps_Min { get; set; }
public System.Int32? NetworkInterfaceCount_Max { get; set; }
public System.Int32? NetworkInterfaceCount_Min { get; set; }
public System.Int32? InstanceRequirements_OnDemandMaxPricePercentageOverLowestPrice { get; set; }
public System.Boolean? InstanceRequirements_RequireHibernateSupport { get; set; }
public System.Int32? InstanceRequirements_SpotMaxPricePercentageOverLowestPrice { get; set; }
public System.Double? TotalLocalStorageGB_Max { get; set; }
public System.Double? TotalLocalStorageGB_Min { get; set; }
public System.Int32? VCpuCount_Max { get; set; }
public System.Int32? VCpuCount_Min { get; set; }
public List InstanceRequirementsWithMetadata_VirtualizationType { get; set; }
public List InstanceType { get; set; }
public System.Int32? MaxResult { get; set; }
public System.String NextToken { get; set; }
public List RegionName { get; set; }
public System.Boolean? SingleAvailabilityZone { get; set; }
public System.Int32? TargetCapacity { get; set; }
public Amazon.EC2.TargetCapacityUnitType TargetCapacityUnitType { get; set; }
public System.Func Select { get; set; } =
(response, cmdlet) => response.SpotPlacementScores;
}
}
}