1. Packages
  2. Spotinst
  3. API Docs
  4. aws
  5. Elastigroup
Spotinst v3.70.1 published on Thursday, Mar 28, 2024 by Pulumi

spotinst.aws.Elastigroup

Explore with Pulumi AI

spotinst logo
Spotinst v3.70.1 published on Thursday, Mar 28, 2024 by Pulumi

    Provides a Spotinst AWS group resource.

    Example Usage

    Coming soon!```
    </pulumi-choosable>
    </div>
    <div>
    <pulumi-choosable type="language" values="python">
    

    Coming soon!```

    Coming soon!```
    </pulumi-choosable>
    </div>
    <div>
    <pulumi-choosable type="language" values="csharp">
    

    Coming soon!```

    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.spotinst.aws.Elastigroup;
    import com.pulumi.spotinst.aws.ElastigroupArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupCpuOptionsArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupInstanceTypesWeightArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupLoggingArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupLoggingExportArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupMetadataOptionsArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupResourceRequirementArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupResourceTagSpecificationArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupScalingDownPolicyArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupScalingStrategyArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupScalingUpPolicyArgs;
    import com.pulumi.spotinst.aws.inputs.ElastigroupTagArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_elastigroup = new Elastigroup("default-elastigroup", ElastigroupArgs.builder()        
                .capacityUnit("weight")
                .cpuCredits("unlimited")
                .cpuOptions(ElastigroupCpuOptionsArgs.builder()
                    .threadsPerCore(1)
                    .build())
                .description("created by Pulumi")
                .desiredCapacity(0)
                .ebsOptimized(false)
                .enableMonitoring(false)
                .fallbackToOndemand(false)
                .iamInstanceProfile("iam-profile")
                .imageId("ami-a27d8fda")
                .instanceTypesOndemand("m3.2xlarge")
                .instanceTypesPreferredSpots("m3.xlarge")
                .instanceTypesSpots(            
                    "m3.xlarge",
                    "m3.2xlarge")
                .instanceTypesWeights(            
                    ElastigroupInstanceTypesWeightArgs.builder()
                        .instanceType("m3.xlarge")
                        .weight(10)
                        .build(),
                    ElastigroupInstanceTypesWeightArgs.builder()
                        .instanceType("m3.2xlarge")
                        .weight(16)
                        .build())
                .keyName("my-key.ssh")
                .lifecycle(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                .logging(ElastigroupLoggingArgs.builder()
                    .export(ElastigroupLoggingExportArgs.builder()
                        .s3(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .build())
                .maxSize(0)
                .metadataOptions(ElastigroupMetadataOptionsArgs.builder()
                    .httpPutResponseHopLimit(10)
                    .httpTokens("optional")
                    .instanceMetadataTags("enabled")
                    .build())
                .minSize(0)
                .minimumInstanceLifetime(12)
                .onDemandTypes("c3.large")
                .orientation("balanced")
                .placementTenancy("default")
                .product("Linux/UNIX")
                .region("us-west-2")
                .resourceRequirements(ElastigroupResourceRequirementArgs.builder()
                    .excludedInstanceFamilies(                
                        "a",
                        "m")
                    .excludedInstanceGenerations(                
                        "1",
                        "2")
                    .excludedInstanceTypes("m3.large")
                    .requiredGpuMaximum(16)
                    .requiredGpuMinimum(1)
                    .requiredMemoryMaximum(512)
                    .requiredMemoryMinimum(1)
                    .requiredVcpuMaximum(64)
                    .requiredVcpuMinimum(1)
                    .build())
                .resourceTagSpecifications(ElastigroupResourceTagSpecificationArgs.builder()
                    .shouldTagAmis(true)
                    .shouldTagEnis(true)
                    .shouldTagSnapshots(true)
                    .shouldTagVolumes(true)
                    .build())
                .scalingDownPolicies(ElastigroupScalingDownPolicyArgs.builder()
                    .adjustment(1)
                    .cooldown(300)
                    .evaluationPeriods(10)
                    .metricName("DefaultQueuesDepth")
                    .namespace("custom")
                    .period(60)
                    .policyName("Default Scaling Down Policy")
                    .statistic("average")
                    .threshold(10)
                    .unit("none")
                    .build())
                .scalingStrategies(ElastigroupScalingStrategyArgs.builder()
                    .terminateAtEndOfBillingHour(true)
                    .terminationPolicy("default")
                    .build())
                .scalingUpPolicies(ElastigroupScalingUpPolicyArgs.builder()
                    .adjustment(1)
                    .cooldown(300)
                    .evaluationPeriods(5)
                    .metricName("DefaultQueuesDepth")
                    .namespace("custom")
                    .period(60)
                    .policyName("Default Scaling Up Policy")
                    .statistic("average")
                    .threshold(100)
                    .unit("none")
                    .build())
                .securityGroups("sg-123456")
                .subnetIds(            
                    "sb-123456",
                    "sb-456789")
                .tags(            
                    ElastigroupTagArgs.builder()
                        .key("Env")
                        .value("production")
                        .build(),
                    ElastigroupTagArgs.builder()
                        .key("Name")
                        .value("default-production")
                        .build(),
                    ElastigroupTagArgs.builder()
                        .key("Project")
                        .value("app_v2")
                        .build())
                .userData("echo hello world")
                .waitForCapacity(5)
                .waitForCapacityTimeout(300)
                .build());
    
        }
    }
    
    resources:
      # Create an Elastigroup
      default-elastigroup:
        type: spotinst:aws:Elastigroup
        properties:
          capacityUnit: weight
          cpuCredits: unlimited
          cpuOptions:
            threadsPerCore: 1
          description: created by Pulumi
          desiredCapacity: 0
          ebsOptimized: false
          enableMonitoring: false
          fallbackToOndemand: false
          iamInstanceProfile: iam-profile
          imageId: ami-a27d8fda
          instanceTypesOndemand: m3.2xlarge
          instanceTypesPreferredSpots:
            - m3.xlarge
          instanceTypesSpots:
            - m3.xlarge
            - m3.2xlarge
          instanceTypesWeights:
            - instanceType: m3.xlarge
              weight: 10
            - instanceType: m3.2xlarge
              weight: 16
          keyName: my-key.ssh
          lifecycle:
            ignoreChanges:
              - desiredCapacity
          logging:
            export:
              s3:
                - id: di-123456
          maxSize: 0
          metadataOptions:
            httpPutResponseHopLimit: 10
            httpTokens: optional
            instanceMetadataTags: enabled
          minSize: 0
          minimumInstanceLifetime: 12
          onDemandTypes:
            - c3.large
          orientation: balanced
          placementTenancy: default
          product: Linux/UNIX
          region: us-west-2
          resourceRequirements:
            - excludedInstanceFamilies:
                - a
                - m
              excludedInstanceGenerations:
                - '1'
                - '2'
              excludedInstanceTypes:
                - m3.large
              requiredGpuMaximum: 16
              requiredGpuMinimum: 1
              requiredMemoryMaximum: 512
              requiredMemoryMinimum: 1
              requiredVcpuMaximum: 64
              requiredVcpuMinimum: 1
          resourceTagSpecifications:
            - shouldTagAmis: true
              shouldTagEnis: true
              shouldTagSnapshots: true
              shouldTagVolumes: true
          scalingDownPolicies:
            - adjustment: 1
              cooldown: 300
              evaluationPeriods: 10
              metricName: DefaultQueuesDepth
              namespace: custom
              period: 60
              policyName: Default Scaling Down Policy
              statistic: average
              threshold: 10
              unit: none
          scalingStrategies:
            - terminateAtEndOfBillingHour: true
              terminationPolicy: default
          scalingUpPolicies:
            - adjustment: 1
              cooldown: 300
              evaluationPeriods: 5
              metricName: DefaultQueuesDepth
              namespace: custom
              period: 60
              policyName: Default Scaling Up Policy
              statistic: average
              threshold: 100
              unit: none
          securityGroups:
            - sg-123456
          subnetIds:
            - sb-123456
            - sb-456789
          tags:
            - key: Env
              value: production
            - key: Name
              value: default-production
            - key: Project
              value: app_v2
          userData: echo hello world
          waitForCapacity: 5
          waitForCapacityTimeout: 300
    

    Create Elastigroup Resource

    new Elastigroup(name: string, args: ElastigroupArgs, opts?: CustomResourceOptions);
    @overload
    def Elastigroup(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    availability_zones: Optional[Sequence[str]] = None,
                    block_devices_mode: Optional[str] = None,
                    capacity_unit: Optional[str] = None,
                    consider_od_pricing: Optional[bool] = None,
                    cpu_credits: Optional[str] = None,
                    cpu_options: Optional[ElastigroupCpuOptionsArgs] = None,
                    description: Optional[str] = None,
                    desired_capacity: Optional[int] = None,
                    draining_timeout: Optional[int] = None,
                    ebs_block_devices: Optional[Sequence[ElastigroupEbsBlockDeviceArgs]] = None,
                    ebs_optimized: Optional[bool] = None,
                    elastic_ips: Optional[Sequence[str]] = None,
                    elastic_load_balancers: Optional[Sequence[str]] = None,
                    enable_monitoring: Optional[bool] = None,
                    ephemeral_block_devices: Optional[Sequence[ElastigroupEphemeralBlockDeviceArgs]] = None,
                    fallback_to_ondemand: Optional[bool] = None,
                    health_check_grace_period: Optional[int] = None,
                    health_check_type: Optional[str] = None,
                    health_check_unhealthy_duration_before_replacement: Optional[int] = None,
                    iam_instance_profile: Optional[str] = None,
                    image_id: Optional[str] = None,
                    images: Optional[Sequence[ElastigroupImageArgs]] = None,
                    immediate_od_recover_threshold: Optional[int] = None,
                    instance_types_ondemand: Optional[str] = None,
                    instance_types_preferred_spots: Optional[Sequence[str]] = None,
                    instance_types_spots: Optional[Sequence[str]] = None,
                    instance_types_weights: Optional[Sequence[ElastigroupInstanceTypesWeightArgs]] = None,
                    integration_beanstalk: Optional[ElastigroupIntegrationBeanstalkArgs] = None,
                    integration_codedeploy: Optional[ElastigroupIntegrationCodedeployArgs] = None,
                    integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
                    integration_ecs: Optional[ElastigroupIntegrationEcsArgs] = None,
                    integration_gitlab: Optional[ElastigroupIntegrationGitlabArgs] = None,
                    integration_kubernetes: Optional[ElastigroupIntegrationKubernetesArgs] = None,
                    integration_mesosphere: Optional[ElastigroupIntegrationMesosphereArgs] = None,
                    integration_multai_runtime: Optional[ElastigroupIntegrationMultaiRuntimeArgs] = None,
                    integration_nomad: Optional[ElastigroupIntegrationNomadArgs] = None,
                    integration_rancher: Optional[ElastigroupIntegrationRancherArgs] = None,
                    integration_route53: Optional[ElastigroupIntegrationRoute53Args] = None,
                    itfs: Optional[Sequence[ElastigroupItfArgs]] = None,
                    key_name: Optional[str] = None,
                    lifetime_period: Optional[str] = None,
                    logging: Optional[ElastigroupLoggingArgs] = None,
                    max_size: Optional[int] = None,
                    metadata_options: Optional[ElastigroupMetadataOptionsArgs] = None,
                    min_size: Optional[int] = None,
                    minimum_instance_lifetime: Optional[int] = None,
                    multai_target_sets: Optional[Sequence[ElastigroupMultaiTargetSetArgs]] = None,
                    multiple_metrics: Optional[ElastigroupMultipleMetricsArgs] = None,
                    name: Optional[str] = None,
                    network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
                    on_demand_types: Optional[Sequence[str]] = None,
                    ondemand_count: Optional[int] = None,
                    orientation: Optional[str] = None,
                    persist_block_devices: Optional[bool] = None,
                    persist_private_ip: Optional[bool] = None,
                    persist_root_device: Optional[bool] = None,
                    placement_tenancy: Optional[str] = None,
                    preferred_availability_zones: Optional[Sequence[str]] = None,
                    private_ips: Optional[Sequence[str]] = None,
                    product: Optional[str] = None,
                    region: Optional[str] = None,
                    resource_requirements: Optional[Sequence[ElastigroupResourceRequirementArgs]] = None,
                    resource_tag_specifications: Optional[Sequence[ElastigroupResourceTagSpecificationArgs]] = None,
                    revert_to_spot: Optional[ElastigroupRevertToSpotArgs] = None,
                    scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
                    scaling_strategies: Optional[Sequence[ElastigroupScalingStrategyArgs]] = None,
                    scaling_target_policies: Optional[Sequence[ElastigroupScalingTargetPolicyArgs]] = None,
                    scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
                    scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
                    security_groups: Optional[Sequence[str]] = None,
                    shutdown_script: Optional[str] = None,
                    signals: Optional[Sequence[ElastigroupSignalArgs]] = None,
                    spot_percentage: Optional[int] = None,
                    stateful_deallocation: Optional[ElastigroupStatefulDeallocationArgs] = None,
                    stateful_instance_actions: Optional[Sequence[ElastigroupStatefulInstanceActionArgs]] = None,
                    subnet_ids: Optional[Sequence[str]] = None,
                    tags: Optional[Sequence[ElastigroupTagArgs]] = None,
                    target_group_arns: Optional[Sequence[str]] = None,
                    update_policy: Optional[ElastigroupUpdatePolicyArgs] = None,
                    user_data: Optional[str] = None,
                    utilize_commitments: Optional[bool] = None,
                    utilize_reserved_instances: Optional[bool] = None,
                    wait_for_capacity: Optional[int] = None,
                    wait_for_capacity_timeout: Optional[int] = None)
    @overload
    def Elastigroup(resource_name: str,
                    args: ElastigroupArgs,
                    opts: Optional[ResourceOptions] = None)
    func NewElastigroup(ctx *Context, name string, args ElastigroupArgs, opts ...ResourceOption) (*Elastigroup, error)
    public Elastigroup(string name, ElastigroupArgs args, CustomResourceOptions? opts = null)
    public Elastigroup(String name, ElastigroupArgs args)
    public Elastigroup(String name, ElastigroupArgs args, CustomResourceOptions options)
    
    type: spotinst:aws:Elastigroup
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args ElastigroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ElastigroupArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ElastigroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ElastigroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ElastigroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Elastigroup Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Elastigroup resource accepts the following input properties:

    FallbackToOndemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    Orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    Product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    SecurityGroups List<string>
    A list of associated security group IDS.
    AvailabilityZones List<string>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    BlockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    CapacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    ConsiderOdPricing bool
    CpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    CpuOptions Pulumi.SpotInst.Aws.Inputs.ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    Description string
    The group description.
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsBlockDevices List<Pulumi.SpotInst.Aws.Inputs.ElastigroupEbsBlockDevice>
    EbsOptimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    ElasticIps List<string>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    ElasticLoadBalancers List<string>
    List of Elastic Load Balancers names (ELB).
    EnableMonitoring bool
    Indicates whether monitoring is enabled for the instance.
    EphemeralBlockDevices List<Pulumi.SpotInst.Aws.Inputs.ElastigroupEphemeralBlockDevice>
    HealthCheckGracePeriod int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    IamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    ImageId string
    The ID of the AMI used to launch the instance.
    Images List<Pulumi.SpotInst.Aws.Inputs.ElastigroupImage>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    ImmediateOdRecoverThreshold int
    InstanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    InstanceTypesPreferredSpots List<string>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    InstanceTypesSpots List<string>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    InstanceTypesWeights List<Pulumi.SpotInst.Aws.Inputs.ElastigroupInstanceTypesWeight>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    IntegrationBeanstalk Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    IntegrationCodedeploy Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    IntegrationDockerSwarm Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    IntegrationEcs Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    IntegrationGitlab Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    IntegrationKubernetes Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    IntegrationMesosphere Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    IntegrationMultaiRuntime Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    IntegrationNomad Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationNomad
    Describes the Nomad integration.
    IntegrationRancher Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationRancher
    Describes the Rancher integration.
    IntegrationRoute53 Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    Itfs List<Pulumi.SpotInst.Aws.Inputs.ElastigroupItf>
    KeyName string
    The key name that should be used for the instance.
    LifetimePeriod string
    Logging Pulumi.SpotInst.Aws.Inputs.ElastigroupLogging
    Logging configuration.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MetadataOptions Pulumi.SpotInst.Aws.Inputs.ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    MinSize int
    The minimum number of instances the group should have at any time.
    MinimumInstanceLifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    MultaiTargetSets List<Pulumi.SpotInst.Aws.Inputs.ElastigroupMultaiTargetSet>
    Set of targets to register.
    MultipleMetrics Pulumi.SpotInst.Aws.Inputs.ElastigroupMultipleMetrics
    Name string
    The group name.
    NetworkInterfaces List<Pulumi.SpotInst.Aws.Inputs.ElastigroupNetworkInterface>
    OnDemandTypes List<string>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    OndemandCount int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    PersistBlockDevices bool
    Boolean, should the instance maintain its Data volumes.
    PersistPrivateIp bool
    Boolean, should the instance maintain its private IP.
    PersistRootDevice bool
    Boolean, should the instance maintain its root device volumes.
    PlacementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    PreferredAvailabilityZones List<string>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    PrivateIps List<string>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    ResourceRequirements List<Pulumi.SpotInst.Aws.Inputs.ElastigroupResourceRequirement>
    Required instance attributes. Instance types will be selected based on these requirements.
    ResourceTagSpecifications List<Pulumi.SpotInst.Aws.Inputs.ElastigroupResourceTagSpecification>
    User will specify which resources should be tagged with group tags.
    RevertToSpot Pulumi.SpotInst.Aws.Inputs.ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    ScalingDownPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingDownPolicy>
    ScalingStrategies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingStrategy>
    Set termination policy.
    ScalingTargetPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingTargetPolicy>
    ScalingUpPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingUpPolicy>
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScheduledTask>
    ShutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    Signals List<Pulumi.SpotInst.Aws.Inputs.ElastigroupSignal>
    SpotPercentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    StatefulDeallocation Pulumi.SpotInst.Aws.Inputs.ElastigroupStatefulDeallocation
    StatefulInstanceActions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupStatefulInstanceAction>
    SubnetIds List<string>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    Tags List<Pulumi.SpotInst.Aws.Inputs.ElastigroupTag>
    A key/value mapping of tags to assign to the resource.
    TargetGroupArns List<string>
    List of Target Group ARNs to register the instances to.
    UpdatePolicy Pulumi.SpotInst.Aws.Inputs.ElastigroupUpdatePolicy
    UserData string
    The user data to provide when launching the instance.
    UtilizeCommitments bool
    UtilizeReservedInstances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    WaitForCapacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    WaitForCapacityTimeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    FallbackToOndemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    Orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    Product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    SecurityGroups []string
    A list of associated security group IDS.
    AvailabilityZones []string
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    BlockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    CapacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    ConsiderOdPricing bool
    CpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    CpuOptions ElastigroupCpuOptionsArgs
    The CPU options for the instances that are launched within the group:
    Description string
    The group description.
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsBlockDevices []ElastigroupEbsBlockDeviceArgs
    EbsOptimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    ElasticIps []string
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    ElasticLoadBalancers []string
    List of Elastic Load Balancers names (ELB).
    EnableMonitoring bool
    Indicates whether monitoring is enabled for the instance.
    EphemeralBlockDevices []ElastigroupEphemeralBlockDeviceArgs
    HealthCheckGracePeriod int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    IamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    ImageId string
    The ID of the AMI used to launch the instance.
    Images []ElastigroupImageArgs
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    ImmediateOdRecoverThreshold int
    InstanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    InstanceTypesPreferredSpots []string
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    InstanceTypesSpots []string
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    InstanceTypesWeights []ElastigroupInstanceTypesWeightArgs
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    IntegrationBeanstalk ElastigroupIntegrationBeanstalkArgs
    Describes the Beanstalk integration.
    IntegrationCodedeploy ElastigroupIntegrationCodedeployArgs
    Describes the Code Deploy integration.
    IntegrationDockerSwarm ElastigroupIntegrationDockerSwarmArgs
    Describes the Docker Swarm integration.
    IntegrationEcs ElastigroupIntegrationEcsArgs
    Describes the EC2 Container Service integration.
    IntegrationGitlab ElastigroupIntegrationGitlabArgs
    Describes the Gitlab integration.
    IntegrationKubernetes ElastigroupIntegrationKubernetesArgs
    Describes the Kubernetes integration.
    IntegrationMesosphere ElastigroupIntegrationMesosphereArgs
    Describes the Mesosphere integration.
    IntegrationMultaiRuntime ElastigroupIntegrationMultaiRuntimeArgs
    Describes the Multai Runtime integration.
    IntegrationNomad ElastigroupIntegrationNomadArgs
    Describes the Nomad integration.
    IntegrationRancher ElastigroupIntegrationRancherArgs
    Describes the Rancher integration.
    IntegrationRoute53 ElastigroupIntegrationRoute53Args
    Describes the Route53 integration.
    Itfs []ElastigroupItfArgs
    KeyName string
    The key name that should be used for the instance.
    LifetimePeriod string
    Logging ElastigroupLoggingArgs
    Logging configuration.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MetadataOptions ElastigroupMetadataOptionsArgs
    Data that used to configure or manage the running instances:
    MinSize int
    The minimum number of instances the group should have at any time.
    MinimumInstanceLifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    MultaiTargetSets []ElastigroupMultaiTargetSetArgs
    Set of targets to register.
    MultipleMetrics ElastigroupMultipleMetricsArgs
    Name string
    The group name.
    NetworkInterfaces []ElastigroupNetworkInterfaceArgs
    OnDemandTypes []string
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    OndemandCount int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    PersistBlockDevices bool
    Boolean, should the instance maintain its Data volumes.
    PersistPrivateIp bool
    Boolean, should the instance maintain its private IP.
    PersistRootDevice bool
    Boolean, should the instance maintain its root device volumes.
    PlacementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    PreferredAvailabilityZones []string
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    PrivateIps []string

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    ResourceRequirements []ElastigroupResourceRequirementArgs
    Required instance attributes. Instance types will be selected based on these requirements.
    ResourceTagSpecifications []ElastigroupResourceTagSpecificationArgs
    User will specify which resources should be tagged with group tags.
    RevertToSpot ElastigroupRevertToSpotArgs
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    ScalingDownPolicies []ElastigroupScalingDownPolicyArgs
    ScalingStrategies []ElastigroupScalingStrategyArgs
    Set termination policy.
    ScalingTargetPolicies []ElastigroupScalingTargetPolicyArgs
    ScalingUpPolicies []ElastigroupScalingUpPolicyArgs
    ScheduledTasks []ElastigroupScheduledTaskArgs
    ShutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    Signals []ElastigroupSignalArgs
    SpotPercentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    StatefulDeallocation ElastigroupStatefulDeallocationArgs
    StatefulInstanceActions []ElastigroupStatefulInstanceActionArgs
    SubnetIds []string
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    Tags []ElastigroupTagArgs
    A key/value mapping of tags to assign to the resource.
    TargetGroupArns []string
    List of Target Group ARNs to register the instances to.
    UpdatePolicy ElastigroupUpdatePolicyArgs
    UserData string
    The user data to provide when launching the instance.
    UtilizeCommitments bool
    UtilizeReservedInstances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    WaitForCapacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    WaitForCapacityTimeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    fallbackToOndemand Boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    orientation String
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    product String
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    securityGroups List<String>
    A list of associated security group IDS.
    availabilityZones List<String>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode String
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit String
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing Boolean
    cpuCredits String
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    description String
    The group description.
    desiredCapacity Integer
    The desired number of instances the group should have at any time.
    drainingTimeout Integer
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices List<ElastigroupEbsBlockDevice>
    ebsOptimized Boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps List<String>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers List<String>
    List of Elastic Load Balancers names (ELB).
    enableMonitoring Boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices List<ElastigroupEphemeralBlockDevice>
    healthCheckGracePeriod Integer
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement Integer
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile String
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId String
    The ID of the AMI used to launch the instance.
    images List<ElastigroupImage>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold Integer
    instanceTypesOndemand String
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots List<String>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots List<String>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights List<ElastigroupInstanceTypesWeight>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    integrationCodedeploy ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    integrationDockerSwarm ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    integrationEcs ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    integrationGitlab ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    integrationKubernetes ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    integrationMesosphere ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    integrationMultaiRuntime ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    integrationNomad ElastigroupIntegrationNomad
    Describes the Nomad integration.
    integrationRancher ElastigroupIntegrationRancher
    Describes the Rancher integration.
    integrationRoute53 ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    itfs List<ElastigroupItf>
    keyName String
    The key name that should be used for the instance.
    lifetimePeriod String
    logging ElastigroupLogging
    Logging configuration.
    maxSize Integer
    The maximum number of instances the group should have at any time.
    metadataOptions ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    minSize Integer
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime Integer
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets List<ElastigroupMultaiTargetSet>
    Set of targets to register.
    multipleMetrics ElastigroupMultipleMetrics
    name String
    The group name.
    networkInterfaces List<ElastigroupNetworkInterface>
    onDemandTypes List<String>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount Integer
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    persistBlockDevices Boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp Boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice Boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy String
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones List<String>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps List<String>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    region String
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements List<ElastigroupResourceRequirement>
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications List<ElastigroupResourceTagSpecification>
    User will specify which resources should be tagged with group tags.
    revertToSpot ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies List<ElastigroupScalingDownPolicy>
    scalingStrategies List<ElastigroupScalingStrategy>
    Set termination policy.
    scalingTargetPolicies List<ElastigroupScalingTargetPolicy>
    scalingUpPolicies List<ElastigroupScalingUpPolicy>
    scheduledTasks List<ElastigroupScheduledTask>
    shutdownScript String
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals List<ElastigroupSignal>
    spotPercentage Integer
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation ElastigroupStatefulDeallocation
    statefulInstanceActions List<ElastigroupStatefulInstanceAction>
    subnetIds List<String>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags List<ElastigroupTag>
    A key/value mapping of tags to assign to the resource.
    targetGroupArns List<String>
    List of Target Group ARNs to register the instances to.
    updatePolicy ElastigroupUpdatePolicy
    userData String
    The user data to provide when launching the instance.
    utilizeCommitments Boolean
    utilizeReservedInstances Boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity Integer
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout Integer
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    fallbackToOndemand boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    securityGroups string[]
    A list of associated security group IDS.
    availabilityZones string[]
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing boolean
    cpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    description string
    The group description.
    desiredCapacity number
    The desired number of instances the group should have at any time.
    drainingTimeout number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices ElastigroupEbsBlockDevice[]
    ebsOptimized boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps string[]
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers string[]
    List of Elastic Load Balancers names (ELB).
    enableMonitoring boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices ElastigroupEphemeralBlockDevice[]
    healthCheckGracePeriod number
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement number
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId string
    The ID of the AMI used to launch the instance.
    images ElastigroupImage[]
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold number
    instanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots string[]
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots string[]
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights ElastigroupInstanceTypesWeight[]
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    integrationCodedeploy ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    integrationDockerSwarm ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    integrationEcs ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    integrationGitlab ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    integrationKubernetes ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    integrationMesosphere ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    integrationMultaiRuntime ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    integrationNomad ElastigroupIntegrationNomad
    Describes the Nomad integration.
    integrationRancher ElastigroupIntegrationRancher
    Describes the Rancher integration.
    integrationRoute53 ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    itfs ElastigroupItf[]
    keyName string
    The key name that should be used for the instance.
    lifetimePeriod string
    logging ElastigroupLogging
    Logging configuration.
    maxSize number
    The maximum number of instances the group should have at any time.
    metadataOptions ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    minSize number
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime number
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets ElastigroupMultaiTargetSet[]
    Set of targets to register.
    multipleMetrics ElastigroupMultipleMetrics
    name string
    The group name.
    networkInterfaces ElastigroupNetworkInterface[]
    onDemandTypes string[]
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount number
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    persistBlockDevices boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones string[]
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps string[]

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements ElastigroupResourceRequirement[]
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications ElastigroupResourceTagSpecification[]
    User will specify which resources should be tagged with group tags.
    revertToSpot ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies ElastigroupScalingDownPolicy[]
    scalingStrategies ElastigroupScalingStrategy[]
    Set termination policy.
    scalingTargetPolicies ElastigroupScalingTargetPolicy[]
    scalingUpPolicies ElastigroupScalingUpPolicy[]
    scheduledTasks ElastigroupScheduledTask[]
    shutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals ElastigroupSignal[]
    spotPercentage number
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation ElastigroupStatefulDeallocation
    statefulInstanceActions ElastigroupStatefulInstanceAction[]
    subnetIds string[]
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags ElastigroupTag[]
    A key/value mapping of tags to assign to the resource.
    targetGroupArns string[]
    List of Target Group ARNs to register the instances to.
    updatePolicy ElastigroupUpdatePolicy
    userData string
    The user data to provide when launching the instance.
    utilizeCommitments boolean
    utilizeReservedInstances boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity number
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout number
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    fallback_to_ondemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    orientation str
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    product str
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    security_groups Sequence[str]
    A list of associated security group IDS.
    availability_zones Sequence[str]
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    block_devices_mode str
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacity_unit str
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    consider_od_pricing bool
    cpu_credits str
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpu_options ElastigroupCpuOptionsArgs
    The CPU options for the instances that are launched within the group:
    description str
    The group description.
    desired_capacity int
    The desired number of instances the group should have at any time.
    draining_timeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebs_block_devices Sequence[ElastigroupEbsBlockDeviceArgs]
    ebs_optimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elastic_ips Sequence[str]
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elastic_load_balancers Sequence[str]
    List of Elastic Load Balancers names (ELB).
    enable_monitoring bool
    Indicates whether monitoring is enabled for the instance.
    ephemeral_block_devices Sequence[ElastigroupEphemeralBlockDeviceArgs]
    health_check_grace_period int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    health_check_type str
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    health_check_unhealthy_duration_before_replacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iam_instance_profile str
    The ARN or name of an IAM instance profile to associate with launched instances.
    image_id str
    The ID of the AMI used to launch the instance.
    images Sequence[ElastigroupImageArgs]
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediate_od_recover_threshold int
    instance_types_ondemand str
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instance_types_preferred_spots Sequence[str]
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instance_types_spots Sequence[str]
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instance_types_weights Sequence[ElastigroupInstanceTypesWeightArgs]
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integration_beanstalk ElastigroupIntegrationBeanstalkArgs
    Describes the Beanstalk integration.
    integration_codedeploy ElastigroupIntegrationCodedeployArgs
    Describes the Code Deploy integration.
    integration_docker_swarm ElastigroupIntegrationDockerSwarmArgs
    Describes the Docker Swarm integration.
    integration_ecs ElastigroupIntegrationEcsArgs
    Describes the EC2 Container Service integration.
    integration_gitlab ElastigroupIntegrationGitlabArgs
    Describes the Gitlab integration.
    integration_kubernetes ElastigroupIntegrationKubernetesArgs
    Describes the Kubernetes integration.
    integration_mesosphere ElastigroupIntegrationMesosphereArgs
    Describes the Mesosphere integration.
    integration_multai_runtime ElastigroupIntegrationMultaiRuntimeArgs
    Describes the Multai Runtime integration.
    integration_nomad ElastigroupIntegrationNomadArgs
    Describes the Nomad integration.
    integration_rancher ElastigroupIntegrationRancherArgs
    Describes the Rancher integration.
    integration_route53 ElastigroupIntegrationRoute53Args
    Describes the Route53 integration.
    itfs Sequence[ElastigroupItfArgs]
    key_name str
    The key name that should be used for the instance.
    lifetime_period str
    logging ElastigroupLoggingArgs
    Logging configuration.
    max_size int
    The maximum number of instances the group should have at any time.
    metadata_options ElastigroupMetadataOptionsArgs
    Data that used to configure or manage the running instances:
    min_size int
    The minimum number of instances the group should have at any time.
    minimum_instance_lifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multai_target_sets Sequence[ElastigroupMultaiTargetSetArgs]
    Set of targets to register.
    multiple_metrics ElastigroupMultipleMetricsArgs
    name str
    The group name.
    network_interfaces Sequence[ElastigroupNetworkInterfaceArgs]
    on_demand_types Sequence[str]
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemand_count int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    persist_block_devices bool
    Boolean, should the instance maintain its Data volumes.
    persist_private_ip bool
    Boolean, should the instance maintain its private IP.
    persist_root_device bool
    Boolean, should the instance maintain its root device volumes.
    placement_tenancy str
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferred_availability_zones Sequence[str]
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    private_ips Sequence[str]

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    region str
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resource_requirements Sequence[ElastigroupResourceRequirementArgs]
    Required instance attributes. Instance types will be selected based on these requirements.
    resource_tag_specifications Sequence[ElastigroupResourceTagSpecificationArgs]
    User will specify which resources should be tagged with group tags.
    revert_to_spot ElastigroupRevertToSpotArgs
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scaling_down_policies Sequence[ElastigroupScalingDownPolicyArgs]
    scaling_strategies Sequence[ElastigroupScalingStrategyArgs]
    Set termination policy.
    scaling_target_policies Sequence[ElastigroupScalingTargetPolicyArgs]
    scaling_up_policies Sequence[ElastigroupScalingUpPolicyArgs]
    scheduled_tasks Sequence[ElastigroupScheduledTaskArgs]
    shutdown_script str
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals Sequence[ElastigroupSignalArgs]
    spot_percentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    stateful_deallocation ElastigroupStatefulDeallocationArgs
    stateful_instance_actions Sequence[ElastigroupStatefulInstanceActionArgs]
    subnet_ids Sequence[str]
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags Sequence[ElastigroupTagArgs]
    A key/value mapping of tags to assign to the resource.
    target_group_arns Sequence[str]
    List of Target Group ARNs to register the instances to.
    update_policy ElastigroupUpdatePolicyArgs
    user_data str
    The user data to provide when launching the instance.
    utilize_commitments bool
    utilize_reserved_instances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    wait_for_capacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    wait_for_capacity_timeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    fallbackToOndemand Boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    orientation String
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    product String
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    securityGroups List<String>
    A list of associated security group IDS.
    availabilityZones List<String>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode String
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit String
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing Boolean
    cpuCredits String
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions Property Map
    The CPU options for the instances that are launched within the group:
    description String
    The group description.
    desiredCapacity Number
    The desired number of instances the group should have at any time.
    drainingTimeout Number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices List<Property Map>
    ebsOptimized Boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps List<String>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers List<String>
    List of Elastic Load Balancers names (ELB).
    enableMonitoring Boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices List<Property Map>
    healthCheckGracePeriod Number
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement Number
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile String
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId String
    The ID of the AMI used to launch the instance.
    images List<Property Map>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold Number
    instanceTypesOndemand String
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots List<String>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots List<String>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights List<Property Map>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk Property Map
    Describes the Beanstalk integration.
    integrationCodedeploy Property Map
    Describes the Code Deploy integration.
    integrationDockerSwarm Property Map
    Describes the Docker Swarm integration.
    integrationEcs Property Map
    Describes the EC2 Container Service integration.
    integrationGitlab Property Map
    Describes the Gitlab integration.
    integrationKubernetes Property Map
    Describes the Kubernetes integration.
    integrationMesosphere Property Map
    Describes the Mesosphere integration.
    integrationMultaiRuntime Property Map
    Describes the Multai Runtime integration.
    integrationNomad Property Map
    Describes the Nomad integration.
    integrationRancher Property Map
    Describes the Rancher integration.
    integrationRoute53 Property Map
    Describes the Route53 integration.
    itfs List<Property Map>
    keyName String
    The key name that should be used for the instance.
    lifetimePeriod String
    logging Property Map
    Logging configuration.
    maxSize Number
    The maximum number of instances the group should have at any time.
    metadataOptions Property Map
    Data that used to configure or manage the running instances:
    minSize Number
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime Number
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets List<Property Map>
    Set of targets to register.
    multipleMetrics Property Map
    name String
    The group name.
    networkInterfaces List<Property Map>
    onDemandTypes List<String>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount Number
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    persistBlockDevices Boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp Boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice Boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy String
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones List<String>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps List<String>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    region String
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements List<Property Map>
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications List<Property Map>
    User will specify which resources should be tagged with group tags.
    revertToSpot Property Map
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies List<Property Map>
    scalingStrategies List<Property Map>
    Set termination policy.
    scalingTargetPolicies List<Property Map>
    scalingUpPolicies List<Property Map>
    scheduledTasks List<Property Map>
    shutdownScript String
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals List<Property Map>
    spotPercentage Number
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation Property Map
    statefulInstanceActions List<Property Map>
    subnetIds List<String>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags List<Property Map>
    A key/value mapping of tags to assign to the resource.
    targetGroupArns List<String>
    List of Target Group ARNs to register the instances to.
    updatePolicy Property Map
    userData String
    The user data to provide when launching the instance.
    utilizeCommitments Boolean
    utilizeReservedInstances Boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity Number
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout Number
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Elastigroup resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing Elastigroup Resource

    Get an existing Elastigroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ElastigroupState, opts?: CustomResourceOptions): Elastigroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            availability_zones: Optional[Sequence[str]] = None,
            block_devices_mode: Optional[str] = None,
            capacity_unit: Optional[str] = None,
            consider_od_pricing: Optional[bool] = None,
            cpu_credits: Optional[str] = None,
            cpu_options: Optional[ElastigroupCpuOptionsArgs] = None,
            description: Optional[str] = None,
            desired_capacity: Optional[int] = None,
            draining_timeout: Optional[int] = None,
            ebs_block_devices: Optional[Sequence[ElastigroupEbsBlockDeviceArgs]] = None,
            ebs_optimized: Optional[bool] = None,
            elastic_ips: Optional[Sequence[str]] = None,
            elastic_load_balancers: Optional[Sequence[str]] = None,
            enable_monitoring: Optional[bool] = None,
            ephemeral_block_devices: Optional[Sequence[ElastigroupEphemeralBlockDeviceArgs]] = None,
            fallback_to_ondemand: Optional[bool] = None,
            health_check_grace_period: Optional[int] = None,
            health_check_type: Optional[str] = None,
            health_check_unhealthy_duration_before_replacement: Optional[int] = None,
            iam_instance_profile: Optional[str] = None,
            image_id: Optional[str] = None,
            images: Optional[Sequence[ElastigroupImageArgs]] = None,
            immediate_od_recover_threshold: Optional[int] = None,
            instance_types_ondemand: Optional[str] = None,
            instance_types_preferred_spots: Optional[Sequence[str]] = None,
            instance_types_spots: Optional[Sequence[str]] = None,
            instance_types_weights: Optional[Sequence[ElastigroupInstanceTypesWeightArgs]] = None,
            integration_beanstalk: Optional[ElastigroupIntegrationBeanstalkArgs] = None,
            integration_codedeploy: Optional[ElastigroupIntegrationCodedeployArgs] = None,
            integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
            integration_ecs: Optional[ElastigroupIntegrationEcsArgs] = None,
            integration_gitlab: Optional[ElastigroupIntegrationGitlabArgs] = None,
            integration_kubernetes: Optional[ElastigroupIntegrationKubernetesArgs] = None,
            integration_mesosphere: Optional[ElastigroupIntegrationMesosphereArgs] = None,
            integration_multai_runtime: Optional[ElastigroupIntegrationMultaiRuntimeArgs] = None,
            integration_nomad: Optional[ElastigroupIntegrationNomadArgs] = None,
            integration_rancher: Optional[ElastigroupIntegrationRancherArgs] = None,
            integration_route53: Optional[ElastigroupIntegrationRoute53Args] = None,
            itfs: Optional[Sequence[ElastigroupItfArgs]] = None,
            key_name: Optional[str] = None,
            lifetime_period: Optional[str] = None,
            logging: Optional[ElastigroupLoggingArgs] = None,
            max_size: Optional[int] = None,
            metadata_options: Optional[ElastigroupMetadataOptionsArgs] = None,
            min_size: Optional[int] = None,
            minimum_instance_lifetime: Optional[int] = None,
            multai_target_sets: Optional[Sequence[ElastigroupMultaiTargetSetArgs]] = None,
            multiple_metrics: Optional[ElastigroupMultipleMetricsArgs] = None,
            name: Optional[str] = None,
            network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
            on_demand_types: Optional[Sequence[str]] = None,
            ondemand_count: Optional[int] = None,
            orientation: Optional[str] = None,
            persist_block_devices: Optional[bool] = None,
            persist_private_ip: Optional[bool] = None,
            persist_root_device: Optional[bool] = None,
            placement_tenancy: Optional[str] = None,
            preferred_availability_zones: Optional[Sequence[str]] = None,
            private_ips: Optional[Sequence[str]] = None,
            product: Optional[str] = None,
            region: Optional[str] = None,
            resource_requirements: Optional[Sequence[ElastigroupResourceRequirementArgs]] = None,
            resource_tag_specifications: Optional[Sequence[ElastigroupResourceTagSpecificationArgs]] = None,
            revert_to_spot: Optional[ElastigroupRevertToSpotArgs] = None,
            scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
            scaling_strategies: Optional[Sequence[ElastigroupScalingStrategyArgs]] = None,
            scaling_target_policies: Optional[Sequence[ElastigroupScalingTargetPolicyArgs]] = None,
            scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
            scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
            security_groups: Optional[Sequence[str]] = None,
            shutdown_script: Optional[str] = None,
            signals: Optional[Sequence[ElastigroupSignalArgs]] = None,
            spot_percentage: Optional[int] = None,
            stateful_deallocation: Optional[ElastigroupStatefulDeallocationArgs] = None,
            stateful_instance_actions: Optional[Sequence[ElastigroupStatefulInstanceActionArgs]] = None,
            subnet_ids: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[ElastigroupTagArgs]] = None,
            target_group_arns: Optional[Sequence[str]] = None,
            update_policy: Optional[ElastigroupUpdatePolicyArgs] = None,
            user_data: Optional[str] = None,
            utilize_commitments: Optional[bool] = None,
            utilize_reserved_instances: Optional[bool] = None,
            wait_for_capacity: Optional[int] = None,
            wait_for_capacity_timeout: Optional[int] = None) -> Elastigroup
    func GetElastigroup(ctx *Context, name string, id IDInput, state *ElastigroupState, opts ...ResourceOption) (*Elastigroup, error)
    public static Elastigroup Get(string name, Input<string> id, ElastigroupState? state, CustomResourceOptions? opts = null)
    public static Elastigroup get(String name, Output<String> id, ElastigroupState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AvailabilityZones List<string>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    BlockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    CapacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    ConsiderOdPricing bool
    CpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    CpuOptions Pulumi.SpotInst.Aws.Inputs.ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    Description string
    The group description.
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsBlockDevices List<Pulumi.SpotInst.Aws.Inputs.ElastigroupEbsBlockDevice>
    EbsOptimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    ElasticIps List<string>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    ElasticLoadBalancers List<string>
    List of Elastic Load Balancers names (ELB).
    EnableMonitoring bool
    Indicates whether monitoring is enabled for the instance.
    EphemeralBlockDevices List<Pulumi.SpotInst.Aws.Inputs.ElastigroupEphemeralBlockDevice>
    FallbackToOndemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    HealthCheckGracePeriod int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    IamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    ImageId string
    The ID of the AMI used to launch the instance.
    Images List<Pulumi.SpotInst.Aws.Inputs.ElastigroupImage>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    ImmediateOdRecoverThreshold int
    InstanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    InstanceTypesPreferredSpots List<string>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    InstanceTypesSpots List<string>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    InstanceTypesWeights List<Pulumi.SpotInst.Aws.Inputs.ElastigroupInstanceTypesWeight>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    IntegrationBeanstalk Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    IntegrationCodedeploy Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    IntegrationDockerSwarm Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    IntegrationEcs Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    IntegrationGitlab Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    IntegrationKubernetes Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    IntegrationMesosphere Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    IntegrationMultaiRuntime Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    IntegrationNomad Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationNomad
    Describes the Nomad integration.
    IntegrationRancher Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationRancher
    Describes the Rancher integration.
    IntegrationRoute53 Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    Itfs List<Pulumi.SpotInst.Aws.Inputs.ElastigroupItf>
    KeyName string
    The key name that should be used for the instance.
    LifetimePeriod string
    Logging Pulumi.SpotInst.Aws.Inputs.ElastigroupLogging
    Logging configuration.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MetadataOptions Pulumi.SpotInst.Aws.Inputs.ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    MinSize int
    The minimum number of instances the group should have at any time.
    MinimumInstanceLifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    MultaiTargetSets List<Pulumi.SpotInst.Aws.Inputs.ElastigroupMultaiTargetSet>
    Set of targets to register.
    MultipleMetrics Pulumi.SpotInst.Aws.Inputs.ElastigroupMultipleMetrics
    Name string
    The group name.
    NetworkInterfaces List<Pulumi.SpotInst.Aws.Inputs.ElastigroupNetworkInterface>
    OnDemandTypes List<string>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    OndemandCount int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    Orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    PersistBlockDevices bool
    Boolean, should the instance maintain its Data volumes.
    PersistPrivateIp bool
    Boolean, should the instance maintain its private IP.
    PersistRootDevice bool
    Boolean, should the instance maintain its root device volumes.
    PlacementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    PreferredAvailabilityZones List<string>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    PrivateIps List<string>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    Region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    ResourceRequirements List<Pulumi.SpotInst.Aws.Inputs.ElastigroupResourceRequirement>
    Required instance attributes. Instance types will be selected based on these requirements.
    ResourceTagSpecifications List<Pulumi.SpotInst.Aws.Inputs.ElastigroupResourceTagSpecification>
    User will specify which resources should be tagged with group tags.
    RevertToSpot Pulumi.SpotInst.Aws.Inputs.ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    ScalingDownPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingDownPolicy>
    ScalingStrategies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingStrategy>
    Set termination policy.
    ScalingTargetPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingTargetPolicy>
    ScalingUpPolicies List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingUpPolicy>
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScheduledTask>
    SecurityGroups List<string>
    A list of associated security group IDS.
    ShutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    Signals List<Pulumi.SpotInst.Aws.Inputs.ElastigroupSignal>
    SpotPercentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    StatefulDeallocation Pulumi.SpotInst.Aws.Inputs.ElastigroupStatefulDeallocation
    StatefulInstanceActions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupStatefulInstanceAction>
    SubnetIds List<string>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    Tags List<Pulumi.SpotInst.Aws.Inputs.ElastigroupTag>
    A key/value mapping of tags to assign to the resource.
    TargetGroupArns List<string>
    List of Target Group ARNs to register the instances to.
    UpdatePolicy Pulumi.SpotInst.Aws.Inputs.ElastigroupUpdatePolicy
    UserData string
    The user data to provide when launching the instance.
    UtilizeCommitments bool
    UtilizeReservedInstances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    WaitForCapacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    WaitForCapacityTimeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    AvailabilityZones []string
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    BlockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    CapacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    ConsiderOdPricing bool
    CpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    CpuOptions ElastigroupCpuOptionsArgs
    The CPU options for the instances that are launched within the group:
    Description string
    The group description.
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsBlockDevices []ElastigroupEbsBlockDeviceArgs
    EbsOptimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    ElasticIps []string
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    ElasticLoadBalancers []string
    List of Elastic Load Balancers names (ELB).
    EnableMonitoring bool
    Indicates whether monitoring is enabled for the instance.
    EphemeralBlockDevices []ElastigroupEphemeralBlockDeviceArgs
    FallbackToOndemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    HealthCheckGracePeriod int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    IamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    ImageId string
    The ID of the AMI used to launch the instance.
    Images []ElastigroupImageArgs
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    ImmediateOdRecoverThreshold int
    InstanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    InstanceTypesPreferredSpots []string
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    InstanceTypesSpots []string
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    InstanceTypesWeights []ElastigroupInstanceTypesWeightArgs
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    IntegrationBeanstalk ElastigroupIntegrationBeanstalkArgs
    Describes the Beanstalk integration.
    IntegrationCodedeploy ElastigroupIntegrationCodedeployArgs
    Describes the Code Deploy integration.
    IntegrationDockerSwarm ElastigroupIntegrationDockerSwarmArgs
    Describes the Docker Swarm integration.
    IntegrationEcs ElastigroupIntegrationEcsArgs
    Describes the EC2 Container Service integration.
    IntegrationGitlab ElastigroupIntegrationGitlabArgs
    Describes the Gitlab integration.
    IntegrationKubernetes ElastigroupIntegrationKubernetesArgs
    Describes the Kubernetes integration.
    IntegrationMesosphere ElastigroupIntegrationMesosphereArgs
    Describes the Mesosphere integration.
    IntegrationMultaiRuntime ElastigroupIntegrationMultaiRuntimeArgs
    Describes the Multai Runtime integration.
    IntegrationNomad ElastigroupIntegrationNomadArgs
    Describes the Nomad integration.
    IntegrationRancher ElastigroupIntegrationRancherArgs
    Describes the Rancher integration.
    IntegrationRoute53 ElastigroupIntegrationRoute53Args
    Describes the Route53 integration.
    Itfs []ElastigroupItfArgs
    KeyName string
    The key name that should be used for the instance.
    LifetimePeriod string
    Logging ElastigroupLoggingArgs
    Logging configuration.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MetadataOptions ElastigroupMetadataOptionsArgs
    Data that used to configure or manage the running instances:
    MinSize int
    The minimum number of instances the group should have at any time.
    MinimumInstanceLifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    MultaiTargetSets []ElastigroupMultaiTargetSetArgs
    Set of targets to register.
    MultipleMetrics ElastigroupMultipleMetricsArgs
    Name string
    The group name.
    NetworkInterfaces []ElastigroupNetworkInterfaceArgs
    OnDemandTypes []string
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    OndemandCount int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    Orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    PersistBlockDevices bool
    Boolean, should the instance maintain its Data volumes.
    PersistPrivateIp bool
    Boolean, should the instance maintain its private IP.
    PersistRootDevice bool
    Boolean, should the instance maintain its root device volumes.
    PlacementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    PreferredAvailabilityZones []string
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    PrivateIps []string

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    Region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    ResourceRequirements []ElastigroupResourceRequirementArgs
    Required instance attributes. Instance types will be selected based on these requirements.
    ResourceTagSpecifications []ElastigroupResourceTagSpecificationArgs
    User will specify which resources should be tagged with group tags.
    RevertToSpot ElastigroupRevertToSpotArgs
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    ScalingDownPolicies []ElastigroupScalingDownPolicyArgs
    ScalingStrategies []ElastigroupScalingStrategyArgs
    Set termination policy.
    ScalingTargetPolicies []ElastigroupScalingTargetPolicyArgs
    ScalingUpPolicies []ElastigroupScalingUpPolicyArgs
    ScheduledTasks []ElastigroupScheduledTaskArgs
    SecurityGroups []string
    A list of associated security group IDS.
    ShutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    Signals []ElastigroupSignalArgs
    SpotPercentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    StatefulDeallocation ElastigroupStatefulDeallocationArgs
    StatefulInstanceActions []ElastigroupStatefulInstanceActionArgs
    SubnetIds []string
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    Tags []ElastigroupTagArgs
    A key/value mapping of tags to assign to the resource.
    TargetGroupArns []string
    List of Target Group ARNs to register the instances to.
    UpdatePolicy ElastigroupUpdatePolicyArgs
    UserData string
    The user data to provide when launching the instance.
    UtilizeCommitments bool
    UtilizeReservedInstances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    WaitForCapacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    WaitForCapacityTimeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    availabilityZones List<String>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode String
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit String
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing Boolean
    cpuCredits String
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    description String
    The group description.
    desiredCapacity Integer
    The desired number of instances the group should have at any time.
    drainingTimeout Integer
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices List<ElastigroupEbsBlockDevice>
    ebsOptimized Boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps List<String>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers List<String>
    List of Elastic Load Balancers names (ELB).
    enableMonitoring Boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices List<ElastigroupEphemeralBlockDevice>
    fallbackToOndemand Boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    healthCheckGracePeriod Integer
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement Integer
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile String
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId String
    The ID of the AMI used to launch the instance.
    images List<ElastigroupImage>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold Integer
    instanceTypesOndemand String
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots List<String>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots List<String>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights List<ElastigroupInstanceTypesWeight>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    integrationCodedeploy ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    integrationDockerSwarm ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    integrationEcs ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    integrationGitlab ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    integrationKubernetes ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    integrationMesosphere ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    integrationMultaiRuntime ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    integrationNomad ElastigroupIntegrationNomad
    Describes the Nomad integration.
    integrationRancher ElastigroupIntegrationRancher
    Describes the Rancher integration.
    integrationRoute53 ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    itfs List<ElastigroupItf>
    keyName String
    The key name that should be used for the instance.
    lifetimePeriod String
    logging ElastigroupLogging
    Logging configuration.
    maxSize Integer
    The maximum number of instances the group should have at any time.
    metadataOptions ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    minSize Integer
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime Integer
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets List<ElastigroupMultaiTargetSet>
    Set of targets to register.
    multipleMetrics ElastigroupMultipleMetrics
    name String
    The group name.
    networkInterfaces List<ElastigroupNetworkInterface>
    onDemandTypes List<String>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount Integer
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    orientation String
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    persistBlockDevices Boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp Boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice Boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy String
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones List<String>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps List<String>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    product String
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    region String
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements List<ElastigroupResourceRequirement>
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications List<ElastigroupResourceTagSpecification>
    User will specify which resources should be tagged with group tags.
    revertToSpot ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies List<ElastigroupScalingDownPolicy>
    scalingStrategies List<ElastigroupScalingStrategy>
    Set termination policy.
    scalingTargetPolicies List<ElastigroupScalingTargetPolicy>
    scalingUpPolicies List<ElastigroupScalingUpPolicy>
    scheduledTasks List<ElastigroupScheduledTask>
    securityGroups List<String>
    A list of associated security group IDS.
    shutdownScript String
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals List<ElastigroupSignal>
    spotPercentage Integer
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation ElastigroupStatefulDeallocation
    statefulInstanceActions List<ElastigroupStatefulInstanceAction>
    subnetIds List<String>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags List<ElastigroupTag>
    A key/value mapping of tags to assign to the resource.
    targetGroupArns List<String>
    List of Target Group ARNs to register the instances to.
    updatePolicy ElastigroupUpdatePolicy
    userData String
    The user data to provide when launching the instance.
    utilizeCommitments Boolean
    utilizeReservedInstances Boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity Integer
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout Integer
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    availabilityZones string[]
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode string
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit string
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing boolean
    cpuCredits string
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions ElastigroupCpuOptions
    The CPU options for the instances that are launched within the group:
    description string
    The group description.
    desiredCapacity number
    The desired number of instances the group should have at any time.
    drainingTimeout number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices ElastigroupEbsBlockDevice[]
    ebsOptimized boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps string[]
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers string[]
    List of Elastic Load Balancers names (ELB).
    enableMonitoring boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices ElastigroupEphemeralBlockDevice[]
    fallbackToOndemand boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    healthCheckGracePeriod number
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement number
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile string
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId string
    The ID of the AMI used to launch the instance.
    images ElastigroupImage[]
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold number
    instanceTypesOndemand string
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots string[]
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots string[]
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights ElastigroupInstanceTypesWeight[]
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk ElastigroupIntegrationBeanstalk
    Describes the Beanstalk integration.
    integrationCodedeploy ElastigroupIntegrationCodedeploy
    Describes the Code Deploy integration.
    integrationDockerSwarm ElastigroupIntegrationDockerSwarm
    Describes the Docker Swarm integration.
    integrationEcs ElastigroupIntegrationEcs
    Describes the EC2 Container Service integration.
    integrationGitlab ElastigroupIntegrationGitlab
    Describes the Gitlab integration.
    integrationKubernetes ElastigroupIntegrationKubernetes
    Describes the Kubernetes integration.
    integrationMesosphere ElastigroupIntegrationMesosphere
    Describes the Mesosphere integration.
    integrationMultaiRuntime ElastigroupIntegrationMultaiRuntime
    Describes the Multai Runtime integration.
    integrationNomad ElastigroupIntegrationNomad
    Describes the Nomad integration.
    integrationRancher ElastigroupIntegrationRancher
    Describes the Rancher integration.
    integrationRoute53 ElastigroupIntegrationRoute53
    Describes the Route53 integration.
    itfs ElastigroupItf[]
    keyName string
    The key name that should be used for the instance.
    lifetimePeriod string
    logging ElastigroupLogging
    Logging configuration.
    maxSize number
    The maximum number of instances the group should have at any time.
    metadataOptions ElastigroupMetadataOptions
    Data that used to configure or manage the running instances:
    minSize number
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime number
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets ElastigroupMultaiTargetSet[]
    Set of targets to register.
    multipleMetrics ElastigroupMultipleMetrics
    name string
    The group name.
    networkInterfaces ElastigroupNetworkInterface[]
    onDemandTypes string[]
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount number
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    orientation string
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    persistBlockDevices boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy string
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones string[]
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps string[]

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    product string
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    region string
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements ElastigroupResourceRequirement[]
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications ElastigroupResourceTagSpecification[]
    User will specify which resources should be tagged with group tags.
    revertToSpot ElastigroupRevertToSpot
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies ElastigroupScalingDownPolicy[]
    scalingStrategies ElastigroupScalingStrategy[]
    Set termination policy.
    scalingTargetPolicies ElastigroupScalingTargetPolicy[]
    scalingUpPolicies ElastigroupScalingUpPolicy[]
    scheduledTasks ElastigroupScheduledTask[]
    securityGroups string[]
    A list of associated security group IDS.
    shutdownScript string
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals ElastigroupSignal[]
    spotPercentage number
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation ElastigroupStatefulDeallocation
    statefulInstanceActions ElastigroupStatefulInstanceAction[]
    subnetIds string[]
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags ElastigroupTag[]
    A key/value mapping of tags to assign to the resource.
    targetGroupArns string[]
    List of Target Group ARNs to register the instances to.
    updatePolicy ElastigroupUpdatePolicy
    userData string
    The user data to provide when launching the instance.
    utilizeCommitments boolean
    utilizeReservedInstances boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity number
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout number
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    availability_zones Sequence[str]
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    block_devices_mode str
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacity_unit str
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    consider_od_pricing bool
    cpu_credits str
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpu_options ElastigroupCpuOptionsArgs
    The CPU options for the instances that are launched within the group:
    description str
    The group description.
    desired_capacity int
    The desired number of instances the group should have at any time.
    draining_timeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebs_block_devices Sequence[ElastigroupEbsBlockDeviceArgs]
    ebs_optimized bool
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elastic_ips Sequence[str]
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elastic_load_balancers Sequence[str]
    List of Elastic Load Balancers names (ELB).
    enable_monitoring bool
    Indicates whether monitoring is enabled for the instance.
    ephemeral_block_devices Sequence[ElastigroupEphemeralBlockDeviceArgs]
    fallback_to_ondemand bool
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    health_check_grace_period int
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    health_check_type str
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    health_check_unhealthy_duration_before_replacement int
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iam_instance_profile str
    The ARN or name of an IAM instance profile to associate with launched instances.
    image_id str
    The ID of the AMI used to launch the instance.
    images Sequence[ElastigroupImageArgs]
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediate_od_recover_threshold int
    instance_types_ondemand str
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instance_types_preferred_spots Sequence[str]
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instance_types_spots Sequence[str]
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instance_types_weights Sequence[ElastigroupInstanceTypesWeightArgs]
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integration_beanstalk ElastigroupIntegrationBeanstalkArgs
    Describes the Beanstalk integration.
    integration_codedeploy ElastigroupIntegrationCodedeployArgs
    Describes the Code Deploy integration.
    integration_docker_swarm ElastigroupIntegrationDockerSwarmArgs
    Describes the Docker Swarm integration.
    integration_ecs ElastigroupIntegrationEcsArgs
    Describes the EC2 Container Service integration.
    integration_gitlab ElastigroupIntegrationGitlabArgs
    Describes the Gitlab integration.
    integration_kubernetes ElastigroupIntegrationKubernetesArgs
    Describes the Kubernetes integration.
    integration_mesosphere ElastigroupIntegrationMesosphereArgs
    Describes the Mesosphere integration.
    integration_multai_runtime ElastigroupIntegrationMultaiRuntimeArgs
    Describes the Multai Runtime integration.
    integration_nomad ElastigroupIntegrationNomadArgs
    Describes the Nomad integration.
    integration_rancher ElastigroupIntegrationRancherArgs
    Describes the Rancher integration.
    integration_route53 ElastigroupIntegrationRoute53Args
    Describes the Route53 integration.
    itfs Sequence[ElastigroupItfArgs]
    key_name str
    The key name that should be used for the instance.
    lifetime_period str
    logging ElastigroupLoggingArgs
    Logging configuration.
    max_size int
    The maximum number of instances the group should have at any time.
    metadata_options ElastigroupMetadataOptionsArgs
    Data that used to configure or manage the running instances:
    min_size int
    The minimum number of instances the group should have at any time.
    minimum_instance_lifetime int
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multai_target_sets Sequence[ElastigroupMultaiTargetSetArgs]
    Set of targets to register.
    multiple_metrics ElastigroupMultipleMetricsArgs
    name str
    The group name.
    network_interfaces Sequence[ElastigroupNetworkInterfaceArgs]
    on_demand_types Sequence[str]
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemand_count int
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    orientation str
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    persist_block_devices bool
    Boolean, should the instance maintain its Data volumes.
    persist_private_ip bool
    Boolean, should the instance maintain its private IP.
    persist_root_device bool
    Boolean, should the instance maintain its root device volumes.
    placement_tenancy str
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferred_availability_zones Sequence[str]
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    private_ips Sequence[str]

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    product str
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    region str
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resource_requirements Sequence[ElastigroupResourceRequirementArgs]
    Required instance attributes. Instance types will be selected based on these requirements.
    resource_tag_specifications Sequence[ElastigroupResourceTagSpecificationArgs]
    User will specify which resources should be tagged with group tags.
    revert_to_spot ElastigroupRevertToSpotArgs
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scaling_down_policies Sequence[ElastigroupScalingDownPolicyArgs]
    scaling_strategies Sequence[ElastigroupScalingStrategyArgs]
    Set termination policy.
    scaling_target_policies Sequence[ElastigroupScalingTargetPolicyArgs]
    scaling_up_policies Sequence[ElastigroupScalingUpPolicyArgs]
    scheduled_tasks Sequence[ElastigroupScheduledTaskArgs]
    security_groups Sequence[str]
    A list of associated security group IDS.
    shutdown_script str
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals Sequence[ElastigroupSignalArgs]
    spot_percentage int
    The percentage of Spot instances that would spin up from the desired_capacity number.
    stateful_deallocation ElastigroupStatefulDeallocationArgs
    stateful_instance_actions Sequence[ElastigroupStatefulInstanceActionArgs]
    subnet_ids Sequence[str]
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags Sequence[ElastigroupTagArgs]
    A key/value mapping of tags to assign to the resource.
    target_group_arns Sequence[str]
    List of Target Group ARNs to register the instances to.
    update_policy ElastigroupUpdatePolicyArgs
    user_data str
    The user data to provide when launching the instance.
    utilize_commitments bool
    utilize_reserved_instances bool
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    wait_for_capacity int
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    wait_for_capacity_timeout int
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.
    availabilityZones List<String>
    List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
    blockDevicesMode String
    String, determine the way we attach the data volumes to the data devices, possible values: "reattach" and "onLaunch" (default is onLaunch).
    capacityUnit String
    The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs. Valid values: instance, weight.
    considerOdPricing Boolean
    cpuCredits String
    Controls how T3 instances are launched. Valid values: standard, unlimited.
    cpuOptions Property Map
    The CPU options for the instances that are launched within the group:
    description String
    The group description.
    desiredCapacity Number
    The desired number of instances the group should have at any time.
    drainingTimeout Number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsBlockDevices List<Property Map>
    ebsOptimized Boolean
    Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.
    elasticIps List<String>
    A list of AWS Elastic IP allocation IDs to associate to the group instances.
    elasticLoadBalancers List<String>
    List of Elastic Load Balancers names (ELB).
    enableMonitoring Boolean
    Indicates whether monitoring is enabled for the instance.
    ephemeralBlockDevices List<Property Map>
    fallbackToOndemand Boolean
    In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
    healthCheckGracePeriod Number
    The amount of time, in seconds, after the instance has launched to starts and check its health.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    healthCheckUnhealthyDurationBeforeReplacement Number
    The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).
    iamInstanceProfile String
    The ARN or name of an IAM instance profile to associate with launched instances.
    imageId String
    The ID of the AMI used to launch the instance.
    images List<Property Map>
    An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
    immediateOdRecoverThreshold Number
    instanceTypesOndemand String
    The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
    instanceTypesPreferredSpots List<String>
    Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
    instanceTypesSpots List<String>
    One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
    instanceTypesWeights List<Property Map>
    List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
    integrationBeanstalk Property Map
    Describes the Beanstalk integration.
    integrationCodedeploy Property Map
    Describes the Code Deploy integration.
    integrationDockerSwarm Property Map
    Describes the Docker Swarm integration.
    integrationEcs Property Map
    Describes the EC2 Container Service integration.
    integrationGitlab Property Map
    Describes the Gitlab integration.
    integrationKubernetes Property Map
    Describes the Kubernetes integration.
    integrationMesosphere Property Map
    Describes the Mesosphere integration.
    integrationMultaiRuntime Property Map
    Describes the Multai Runtime integration.
    integrationNomad Property Map
    Describes the Nomad integration.
    integrationRancher Property Map
    Describes the Rancher integration.
    integrationRoute53 Property Map
    Describes the Route53 integration.
    itfs List<Property Map>
    keyName String
    The key name that should be used for the instance.
    lifetimePeriod String
    logging Property Map
    Logging configuration.
    maxSize Number
    The maximum number of instances the group should have at any time.
    metadataOptions Property Map
    Data that used to configure or manage the running instances:
    minSize Number
    The minimum number of instances the group should have at any time.
    minimumInstanceLifetime Number
    Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
    multaiTargetSets List<Property Map>
    Set of targets to register.
    multipleMetrics Property Map
    name String
    The group name.
    networkInterfaces List<Property Map>
    onDemandTypes List<String>
    Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
    ondemandCount Number
    Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.
    orientation String
    Select a prediction strategy. Valid values: balanced, costOriented, equalAzDistribution, availabilityOriented. You can read more in our documentation.
    persistBlockDevices Boolean
    Boolean, should the instance maintain its Data volumes.
    persistPrivateIp Boolean
    Boolean, should the instance maintain its private IP.
    persistRootDevice Boolean
    Boolean, should the instance maintain its root device volumes.
    placementTenancy String
    Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
    preferredAvailabilityZones List<String>
    The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be "equalAzDistribution".
    privateIps List<String>

    List of Private IPs to associate to the group instances.(e.g. "172.1.1.0"). Please note: This setting will only apply if persistence.persist_private_ip is set to true.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    product String
    Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".
    region String
    The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).
    resourceRequirements List<Property Map>
    Required instance attributes. Instance types will be selected based on these requirements.
    resourceTagSpecifications List<Property Map>
    User will specify which resources should be tagged with group tags.
    revertToSpot Property Map
    Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"
    scalingDownPolicies List<Property Map>
    scalingStrategies List<Property Map>
    Set termination policy.
    scalingTargetPolicies List<Property Map>
    scalingUpPolicies List<Property Map>
    scheduledTasks List<Property Map>
    securityGroups List<String>
    A list of associated security group IDS.
    shutdownScript String
    The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
    signals List<Property Map>
    spotPercentage Number
    The percentage of Spot instances that would spin up from the desired_capacity number.
    statefulDeallocation Property Map
    statefulInstanceActions List<Property Map>
    subnetIds List<String>
    List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.
    tags List<Property Map>
    A key/value mapping of tags to assign to the resource.
    targetGroupArns List<String>
    List of Target Group ARNs to register the instances to.
    updatePolicy Property Map
    userData String
    The user data to provide when launching the instance.
    utilizeCommitments Boolean
    utilizeReservedInstances Boolean
    In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
    waitForCapacity Number
    Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.
    waitForCapacityTimeout Number
    Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

    Supporting Types

    ElastigroupCpuOptions, ElastigroupCpuOptionsArgs

    ThreadsPerCore int
    The ability to define the number of threads per core in instances that allow this.
    ThreadsPerCore int
    The ability to define the number of threads per core in instances that allow this.
    threadsPerCore Integer
    The ability to define the number of threads per core in instances that allow this.
    threadsPerCore number
    The ability to define the number of threads per core in instances that allow this.
    threads_per_core int
    The ability to define the number of threads per core in instances that allow this.
    threadsPerCore Number
    The ability to define the number of threads per core in instances that allow this.

    ElastigroupEbsBlockDevice, ElastigroupEbsBlockDeviceArgs

    DeviceName string
    The name of the device to mount.
    DeleteOnTermination bool
    Whether the volume should be destroyed on instance termination.
    Encrypted bool
    Enables EBS encryption on the volume.
    Iops int
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    KmsKeyId string
    ID for a user managed CMK under which the EBS Volume is encrypted
    SnapshotId string
    The Snapshot ID to mount.
    Throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    VolumeSize int
    The size of the volume in gigabytes.
    VolumeType string
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".
    DeviceName string
    The name of the device to mount.
    DeleteOnTermination bool
    Whether the volume should be destroyed on instance termination.
    Encrypted bool
    Enables EBS encryption on the volume.
    Iops int
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    KmsKeyId string
    ID for a user managed CMK under which the EBS Volume is encrypted
    SnapshotId string
    The Snapshot ID to mount.
    Throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    VolumeSize int
    The size of the volume in gigabytes.
    VolumeType string
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".
    deviceName String
    The name of the device to mount.
    deleteOnTermination Boolean
    Whether the volume should be destroyed on instance termination.
    encrypted Boolean
    Enables EBS encryption on the volume.
    iops Integer
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    kmsKeyId String
    ID for a user managed CMK under which the EBS Volume is encrypted
    snapshotId String
    The Snapshot ID to mount.
    throughput Integer

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    volumeSize Integer
    The size of the volume in gigabytes.
    volumeType String
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".
    deviceName string
    The name of the device to mount.
    deleteOnTermination boolean
    Whether the volume should be destroyed on instance termination.
    encrypted boolean
    Enables EBS encryption on the volume.
    iops number
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    kmsKeyId string
    ID for a user managed CMK under which the EBS Volume is encrypted
    snapshotId string
    The Snapshot ID to mount.
    throughput number

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    volumeSize number
    The size of the volume in gigabytes.
    volumeType string
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".
    device_name str
    The name of the device to mount.
    delete_on_termination bool
    Whether the volume should be destroyed on instance termination.
    encrypted bool
    Enables EBS encryption on the volume.
    iops int
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    kms_key_id str
    ID for a user managed CMK under which the EBS Volume is encrypted
    snapshot_id str
    The Snapshot ID to mount.
    throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    volume_size int
    The size of the volume in gigabytes.
    volume_type str
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".
    deviceName String
    The name of the device to mount.
    deleteOnTermination Boolean
    Whether the volume should be destroyed on instance termination.
    encrypted Boolean
    Enables EBS encryption on the volume.
    iops Number
    The amount of provisioned IOPS. This must be set with a volume_type of "io1".
    kmsKeyId String
    ID for a user managed CMK under which the EBS Volume is encrypted
    snapshotId String
    The Snapshot ID to mount.
    throughput Number

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    Modifying any ebs_block_device currently requires resource replacement.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    volumeSize Number
    The size of the volume in gigabytes.
    volumeType String
    The type of volume. Can be "standard", "gp2", "gp3", "io1", "st1" or "sc1".

    ElastigroupEphemeralBlockDevice, ElastigroupEphemeralBlockDeviceArgs

    DeviceName string
    The name of the block device to mount on the instance.
    VirtualName string

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    DeviceName string
    The name of the block device to mount on the instance.
    VirtualName string

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deviceName String
    The name of the block device to mount on the instance.
    virtualName String

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deviceName string
    The name of the block device to mount on the instance.
    virtualName string

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    device_name str
    The name of the block device to mount on the instance.
    virtual_name str

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deviceName String
    The name of the block device to mount on the instance.
    virtualName String

    The Instance Store Device Name (e.g. "ephemeral0").

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupImage, ElastigroupImageArgs

    ElastigroupImageImage, ElastigroupImageImageArgs

    Id string
    The identifier of The S3 data integration to export the logs to.
    Id string
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.
    id string
    The identifier of The S3 data integration to export the logs to.
    id str
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.

    ElastigroupInstanceTypesWeight, ElastigroupInstanceTypesWeightArgs

    InstanceType string
    Name of instance type (String).
    Weight int
    Weight per instance type (Integer).
    InstanceType string
    Name of instance type (String).
    Weight int
    Weight per instance type (Integer).
    instanceType String
    Name of instance type (String).
    weight Integer
    Weight per instance type (Integer).
    instanceType string
    Name of instance type (String).
    weight number
    Weight per instance type (Integer).
    instance_type str
    Name of instance type (String).
    weight int
    Weight per instance type (Integer).
    instanceType String
    Name of instance type (String).
    weight Number
    Weight per instance type (Integer).

    ElastigroupIntegrationBeanstalk, ElastigroupIntegrationBeanstalkArgs

    deploymentPreferences Property Map
    Preferences when performing a roll
    environmentId String
    managedActions Property Map
    Managed Actions parameters

    ElastigroupIntegrationBeanstalkDeploymentPreferences, ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs

    AutomaticRoll bool
    Should roll perform automatically
    BatchSizePercentage int
    The percentage size of each batch in the scheduled deployment roll.
    GracePeriod int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    Strategy Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    AutomaticRoll bool
    Should roll perform automatically
    BatchSizePercentage int
    The percentage size of each batch in the scheduled deployment roll.
    GracePeriod int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    Strategy ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    automaticRoll Boolean
    Should roll perform automatically
    batchSizePercentage Integer
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod Integer
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    strategy ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    automaticRoll boolean
    Should roll perform automatically
    batchSizePercentage number
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod number
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    strategy ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    automatic_roll bool
    Should roll perform automatically
    batch_size_percentage int
    The percentage size of each batch in the scheduled deployment roll.
    grace_period int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    strategy ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    automaticRoll Boolean
    Should roll perform automatically
    batchSizePercentage Number
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod Number
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    strategy Property Map
    Strategy parameters

    ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy, ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs

    Action string
    The action to take when scale up according to step's threshold is needed.
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    Action string
    The action to take when scale up according to step's threshold is needed.
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    action String
    The action to take when scale up according to step's threshold is needed.
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance
    action string
    The action to take when scale up according to step's threshold is needed.
    shouldDrainInstances boolean
    Bool value if to wait to drain instance
    action str
    The action to take when scale up according to step's threshold is needed.
    should_drain_instances bool
    Bool value if to wait to drain instance
    action String
    The action to take when scale up according to step's threshold is needed.
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance

    ElastigroupIntegrationBeanstalkManagedActions, ElastigroupIntegrationBeanstalkManagedActionsArgs

    platformUpdate Property Map
    Platform Update parameters

    ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdate, ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs

    PerformAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    TimeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    UpdateLevel string

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    PerformAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    TimeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    UpdateLevel string

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    performAt String
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindow String
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel String

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    performAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel string

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    perform_at str
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    time_window str
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    update_level str

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    performAt String
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindow String
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel String

    Level to update

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationCodedeploy, ElastigroupIntegrationCodedeployArgs

    CleanupOnFailure bool
    Cleanup automatically after a failed deploy.
    DeploymentGroups List<Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationCodedeployDeploymentGroup>
    Specify the deployment groups details.
    TerminateInstanceOnFailure bool
    Terminate the instance automatically after a failed deploy.
    CleanupOnFailure bool
    Cleanup automatically after a failed deploy.
    DeploymentGroups []ElastigroupIntegrationCodedeployDeploymentGroup
    Specify the deployment groups details.
    TerminateInstanceOnFailure bool
    Terminate the instance automatically after a failed deploy.
    cleanupOnFailure Boolean
    Cleanup automatically after a failed deploy.
    deploymentGroups List<ElastigroupIntegrationCodedeployDeploymentGroup>
    Specify the deployment groups details.
    terminateInstanceOnFailure Boolean
    Terminate the instance automatically after a failed deploy.
    cleanupOnFailure boolean
    Cleanup automatically after a failed deploy.
    deploymentGroups ElastigroupIntegrationCodedeployDeploymentGroup[]
    Specify the deployment groups details.
    terminateInstanceOnFailure boolean
    Terminate the instance automatically after a failed deploy.
    cleanup_on_failure bool
    Cleanup automatically after a failed deploy.
    deployment_groups Sequence[ElastigroupIntegrationCodedeployDeploymentGroup]
    Specify the deployment groups details.
    terminate_instance_on_failure bool
    Terminate the instance automatically after a failed deploy.
    cleanupOnFailure Boolean
    Cleanup automatically after a failed deploy.
    deploymentGroups List<Property Map>
    Specify the deployment groups details.
    terminateInstanceOnFailure Boolean
    Terminate the instance automatically after a failed deploy.

    ElastigroupIntegrationCodedeployDeploymentGroup, ElastigroupIntegrationCodedeployDeploymentGroupArgs

    ApplicationName string
    The application name.
    DeploymentGroupName string

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ApplicationName string
    The application name.
    DeploymentGroupName string

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    applicationName String
    The application name.
    deploymentGroupName String

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    applicationName string
    The application name.
    deploymentGroupName string

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    application_name str
    The application name.
    deployment_group_name str

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    applicationName String
    The application name.
    deploymentGroupName String

    The deployment group name.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationDockerSwarm, ElastigroupIntegrationDockerSwarmArgs

    MasterHost string
    The URL for the Nomad master host.
    MasterPort int
    The network port for the master host.
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarmAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarmAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    MasterHost string
    The URL for the Nomad master host.
    MasterPort int
    The network port for the master host.
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown ElastigroupIntegrationDockerSwarmAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom ElastigroupIntegrationDockerSwarmAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    masterHost String
    The URL for the Nomad master host.
    masterPort Integer
    The network port for the master host.
    autoscaleCooldown Integer
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationDockerSwarmAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationDockerSwarmAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    masterHost string
    The URL for the Nomad master host.
    masterPort number
    The network port for the master host.
    autoscaleCooldown number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationDockerSwarmAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationDockerSwarmAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled boolean
    Specifies whether the auto scaling feature is enabled.
    master_host str
    The URL for the Nomad master host.
    master_port int
    The network port for the master host.
    autoscale_cooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscale_down ElastigroupIntegrationDockerSwarmAutoscaleDown
    Settings for scale down actions.
    autoscale_headroom ElastigroupIntegrationDockerSwarmAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscale_is_enabled bool
    Specifies whether the auto scaling feature is enabled.
    masterHost String
    The URL for the Nomad master host.
    masterPort Number
    The network port for the master host.
    autoscaleCooldown Number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown Property Map
    Settings for scale down actions.
    autoscaleHeadroom Property Map
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.

    ElastigroupIntegrationDockerSwarmAutoscaleDown, ElastigroupIntegrationDockerSwarmAutoscaleDownArgs

    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage double
    Represents the maximum percent to scale-down. Number between 1-100.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage float64
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Double
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage number
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    max_scale_down_percentage float
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Number
    Represents the maximum percent to scale-down. Number between 1-100.

    ElastigroupIntegrationDockerSwarmAutoscaleHeadroom, ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs

    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    cpuPerUnit Integer
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Integer
    How much Memory allocate for headroom unit.
    numOfUnits Integer
    How many units of headroom to allocate.
    cpuPerUnit number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit number
    How much Memory allocate for headroom unit.
    numOfUnits number
    How many units of headroom to allocate.
    cpu_per_unit int
    How much CPU (MHz) to allocate for headroom unit.
    memory_per_unit int
    How much Memory allocate for headroom unit.
    num_of_units int
    How many units of headroom to allocate.
    cpuPerUnit Number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Number
    How much Memory allocate for headroom unit.
    numOfUnits Number
    How many units of headroom to allocate.

    ElastigroupIntegrationEcs, ElastigroupIntegrationEcsArgs

    ClusterName string
    The name of the EC2 Container Service cluster.
    AutoscaleAttributes List<Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleAttribute>
    A key/value mapping of tags to assign to the resource.
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsAutoConfig bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    AutoscaleScaleDownNonServiceTasks bool
    Determines whether to scale down non-service tasks.
    Batch Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationEcsBatch
    Batch configuration object:
    ClusterName string
    The name of the EC2 Container Service cluster.
    AutoscaleAttributes []ElastigroupIntegrationEcsAutoscaleAttribute
    A key/value mapping of tags to assign to the resource.
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown ElastigroupIntegrationEcsAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom ElastigroupIntegrationEcsAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsAutoConfig bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    AutoscaleScaleDownNonServiceTasks bool
    Determines whether to scale down non-service tasks.
    Batch ElastigroupIntegrationEcsBatch
    Batch configuration object:
    clusterName String
    The name of the EC2 Container Service cluster.
    autoscaleAttributes List<ElastigroupIntegrationEcsAutoscaleAttribute>
    A key/value mapping of tags to assign to the resource.
    autoscaleCooldown Integer
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationEcsAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationEcsAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig Boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleScaleDownNonServiceTasks Boolean
    Determines whether to scale down non-service tasks.
    batch ElastigroupIntegrationEcsBatch
    Batch configuration object:
    clusterName string
    The name of the EC2 Container Service cluster.
    autoscaleAttributes ElastigroupIntegrationEcsAutoscaleAttribute[]
    A key/value mapping of tags to assign to the resource.
    autoscaleCooldown number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationEcsAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationEcsAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleScaleDownNonServiceTasks boolean
    Determines whether to scale down non-service tasks.
    batch ElastigroupIntegrationEcsBatch
    Batch configuration object:
    cluster_name str
    The name of the EC2 Container Service cluster.
    autoscale_attributes Sequence[ElastigroupIntegrationEcsAutoscaleAttribute]
    A key/value mapping of tags to assign to the resource.
    autoscale_cooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscale_down ElastigroupIntegrationEcsAutoscaleDown
    Settings for scale down actions.
    autoscale_headroom ElastigroupIntegrationEcsAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscale_is_auto_config bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscale_is_enabled bool
    Specifies whether the auto scaling feature is enabled.
    autoscale_scale_down_non_service_tasks bool
    Determines whether to scale down non-service tasks.
    batch ElastigroupIntegrationEcsBatch
    Batch configuration object:
    clusterName String
    The name of the EC2 Container Service cluster.
    autoscaleAttributes List<Property Map>
    A key/value mapping of tags to assign to the resource.
    autoscaleCooldown Number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown Property Map
    Settings for scale down actions.
    autoscaleHeadroom Property Map
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig Boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleScaleDownNonServiceTasks Boolean
    Determines whether to scale down non-service tasks.
    batch Property Map
    Batch configuration object:

    ElastigroupIntegrationEcsAutoscaleAttribute, ElastigroupIntegrationEcsAutoscaleAttributeArgs

    Key string
    Value string
    The dimension value.
    Key string
    Value string
    The dimension value.
    key String
    value String
    The dimension value.
    key string
    value string
    The dimension value.
    key str
    value str
    The dimension value.
    key String
    value String
    The dimension value.

    ElastigroupIntegrationEcsAutoscaleDown, ElastigroupIntegrationEcsAutoscaleDownArgs

    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage double
    Represents the maximum percent to scale-down. Number between 1-100.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage float64
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Double
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage number
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    max_scale_down_percentage float
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Number
    Represents the maximum percent to scale-down. Number between 1-100.

    ElastigroupIntegrationEcsAutoscaleHeadroom, ElastigroupIntegrationEcsAutoscaleHeadroomArgs

    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    cpuPerUnit Integer
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Integer
    How much Memory allocate for headroom unit.
    numOfUnits Integer
    How many units of headroom to allocate.
    cpuPerUnit number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit number
    How much Memory allocate for headroom unit.
    numOfUnits number
    How many units of headroom to allocate.
    cpu_per_unit int
    How much CPU (MHz) to allocate for headroom unit.
    memory_per_unit int
    How much Memory allocate for headroom unit.
    num_of_units int
    How many units of headroom to allocate.
    cpuPerUnit Number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Number
    How much Memory allocate for headroom unit.
    numOfUnits Number
    How many units of headroom to allocate.

    ElastigroupIntegrationEcsBatch, ElastigroupIntegrationEcsBatchArgs

    JobQueueNames List<string>

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    JobQueueNames []string

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    jobQueueNames List<String>

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    jobQueueNames string[]

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    job_queue_names Sequence[str]

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    jobQueueNames List<String>

    Array of strings.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationGitlab, ElastigroupIntegrationGitlabArgs

    Runner ElastigroupIntegrationGitlabRunner
    Settings for Gitlab runner.
    runner ElastigroupIntegrationGitlabRunner
    Settings for Gitlab runner.
    runner ElastigroupIntegrationGitlabRunner
    Settings for Gitlab runner.
    runner ElastigroupIntegrationGitlabRunner
    Settings for Gitlab runner.
    runner Property Map
    Settings for Gitlab runner.

    ElastigroupIntegrationGitlabRunner, ElastigroupIntegrationGitlabRunnerArgs

    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.
    isEnabled boolean
    Specifies whether the scaling policy described in this block is enabled.
    is_enabled bool
    Specifies whether the scaling policy described in this block is enabled.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.

    ElastigroupIntegrationKubernetes, ElastigroupIntegrationKubernetesArgs

    ApiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsAutoConfig bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    AutoscaleLabels List<Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleLabel>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ClusterIdentifier string
    IntegrationMode string
    Valid values: "saas", "pod".
    Token string
    Kubernetes Token
    ApiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown ElastigroupIntegrationKubernetesAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom ElastigroupIntegrationKubernetesAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsAutoConfig bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    AutoscaleLabels []ElastigroupIntegrationKubernetesAutoscaleLabel

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ClusterIdentifier string
    IntegrationMode string
    Valid values: "saas", "pod".
    Token string
    Kubernetes Token
    apiServer String

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown Integer
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationKubernetesAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationKubernetesAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig Boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleLabels List<ElastigroupIntegrationKubernetesAutoscaleLabel>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    clusterIdentifier String
    integrationMode String
    Valid values: "saas", "pod".
    token String
    Kubernetes Token
    apiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationKubernetesAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationKubernetesAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleLabels ElastigroupIntegrationKubernetesAutoscaleLabel[]

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    clusterIdentifier string
    integrationMode string
    Valid values: "saas", "pod".
    token string
    Kubernetes Token
    api_server str

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscale_cooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscale_down ElastigroupIntegrationKubernetesAutoscaleDown
    Settings for scale down actions.
    autoscale_headroom ElastigroupIntegrationKubernetesAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscale_is_auto_config bool
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscale_is_enabled bool
    Specifies whether the auto scaling feature is enabled.
    autoscale_labels Sequence[ElastigroupIntegrationKubernetesAutoscaleLabel]

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    cluster_identifier str
    integration_mode str
    Valid values: "saas", "pod".
    token str
    Kubernetes Token
    apiServer String

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown Number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown Property Map
    Settings for scale down actions.
    autoscaleHeadroom Property Map
    An option to set compute reserve for the cluster.
    autoscaleIsAutoConfig Boolean
    Enabling the automatic k8s auto-scaler functionality. For more information please see: Kubernetes auto scaler.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    autoscaleLabels List<Property Map>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    clusterIdentifier String
    integrationMode String
    Valid values: "saas", "pod".
    token String
    Kubernetes Token

    ElastigroupIntegrationKubernetesAutoscaleDown, ElastigroupIntegrationKubernetesAutoscaleDownArgs

    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage double
    Represents the maximum percent to scale-down. Number between 1-100.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxScaleDownPercentage float64
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Double
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage number
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    max_scale_down_percentage float
    Represents the maximum percent to scale-down. Number between 1-100.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    maxScaleDownPercentage Number
    Represents the maximum percent to scale-down. Number between 1-100.

    ElastigroupIntegrationKubernetesAutoscaleHeadroom, ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs

    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    cpuPerUnit Integer
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Integer
    How much Memory allocate for headroom unit.
    numOfUnits Integer
    How many units of headroom to allocate.
    cpuPerUnit number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit number
    How much Memory allocate for headroom unit.
    numOfUnits number
    How many units of headroom to allocate.
    cpu_per_unit int
    How much CPU (MHz) to allocate for headroom unit.
    memory_per_unit int
    How much Memory allocate for headroom unit.
    num_of_units int
    How many units of headroom to allocate.
    cpuPerUnit Number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Number
    How much Memory allocate for headroom unit.
    numOfUnits Number
    How many units of headroom to allocate.

    ElastigroupIntegrationKubernetesAutoscaleLabel, ElastigroupIntegrationKubernetesAutoscaleLabelArgs

    Key string
    Value string
    The dimension value.
    Key string
    Value string
    The dimension value.
    key String
    value String
    The dimension value.
    key string
    value string
    The dimension value.
    key str
    value str
    The dimension value.
    key String
    value String
    The dimension value.

    ElastigroupIntegrationMesosphere, ElastigroupIntegrationMesosphereArgs

    ApiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ApiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    apiServer String

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    apiServer string

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    api_server str

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    apiServer String

    The public IP of the DC/OS Master.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationMultaiRuntime, ElastigroupIntegrationMultaiRuntimeArgs

    DeploymentId string

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    DeploymentId string

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deploymentId String

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deploymentId string

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deployment_id str

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    deploymentId String

    The deployment id you want to get

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationNomad, ElastigroupIntegrationNomadArgs

    MasterHost string
    The URL for the Nomad master host.
    MasterPort int
    The network port for the master host.
    AclToken string
    Nomad ACL Token
    AutoscaleConstraints List<Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleConstraint>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    MasterHost string
    The URL for the Nomad master host.
    MasterPort int
    The network port for the master host.
    AclToken string
    Nomad ACL Token
    AutoscaleConstraints []ElastigroupIntegrationNomadAutoscaleConstraint

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AutoscaleCooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    AutoscaleDown ElastigroupIntegrationNomadAutoscaleDown
    Settings for scale down actions.
    AutoscaleHeadroom ElastigroupIntegrationNomadAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    AutoscaleIsEnabled bool
    Specifies whether the auto scaling feature is enabled.
    masterHost String
    The URL for the Nomad master host.
    masterPort Integer
    The network port for the master host.
    aclToken String
    Nomad ACL Token
    autoscaleConstraints List<ElastigroupIntegrationNomadAutoscaleConstraint>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown Integer
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationNomadAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationNomadAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.
    masterHost string
    The URL for the Nomad master host.
    masterPort number
    The network port for the master host.
    aclToken string
    Nomad ACL Token
    autoscaleConstraints ElastigroupIntegrationNomadAutoscaleConstraint[]

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown ElastigroupIntegrationNomadAutoscaleDown
    Settings for scale down actions.
    autoscaleHeadroom ElastigroupIntegrationNomadAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled boolean
    Specifies whether the auto scaling feature is enabled.
    master_host str
    The URL for the Nomad master host.
    master_port int
    The network port for the master host.
    acl_token str
    Nomad ACL Token
    autoscale_constraints Sequence[ElastigroupIntegrationNomadAutoscaleConstraint]

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscale_cooldown int
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscale_down ElastigroupIntegrationNomadAutoscaleDown
    Settings for scale down actions.
    autoscale_headroom ElastigroupIntegrationNomadAutoscaleHeadroom
    An option to set compute reserve for the cluster.
    autoscale_is_enabled bool
    Specifies whether the auto scaling feature is enabled.
    masterHost String
    The URL for the Nomad master host.
    masterPort Number
    The network port for the master host.
    aclToken String
    Nomad ACL Token
    autoscaleConstraints List<Property Map>

    A key/value mapping of tags to assign to the resource.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    autoscaleCooldown Number
    The amount of time, in seconds, after a scaling activity completes before any further trigger-related scaling activities can start.
    autoscaleDown Property Map
    Settings for scale down actions.
    autoscaleHeadroom Property Map
    An option to set compute reserve for the cluster.
    autoscaleIsEnabled Boolean
    Specifies whether the auto scaling feature is enabled.

    ElastigroupIntegrationNomadAutoscaleConstraint, ElastigroupIntegrationNomadAutoscaleConstraintArgs

    Key string
    Value string
    The dimension value.
    Key string
    Value string
    The dimension value.
    key String
    value String
    The dimension value.
    key string
    value string
    The dimension value.
    key str
    value str
    The dimension value.
    key String
    value String
    The dimension value.

    ElastigroupIntegrationNomadAutoscaleDown, ElastigroupIntegrationNomadAutoscaleDownArgs

    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.

    ElastigroupIntegrationNomadAutoscaleHeadroom, ElastigroupIntegrationNomadAutoscaleHeadroomArgs

    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    CpuPerUnit int
    How much CPU (MHz) to allocate for headroom unit.
    MemoryPerUnit int
    How much Memory allocate for headroom unit.
    NumOfUnits int
    How many units of headroom to allocate.
    cpuPerUnit Integer
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Integer
    How much Memory allocate for headroom unit.
    numOfUnits Integer
    How many units of headroom to allocate.
    cpuPerUnit number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit number
    How much Memory allocate for headroom unit.
    numOfUnits number
    How many units of headroom to allocate.
    cpu_per_unit int
    How much CPU (MHz) to allocate for headroom unit.
    memory_per_unit int
    How much Memory allocate for headroom unit.
    num_of_units int
    How many units of headroom to allocate.
    cpuPerUnit Number
    How much CPU (MHz) to allocate for headroom unit.
    memoryPerUnit Number
    How much Memory allocate for headroom unit.
    numOfUnits Number
    How many units of headroom to allocate.

    ElastigroupIntegrationRancher, ElastigroupIntegrationRancherArgs

    AccessKey string
    The access key of the Rancher API.
    MasterHost string
    The URL for the Nomad master host.
    SecretKey string
    The secret key of the Rancher API.
    Version string
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AccessKey string
    The access key of the Rancher API.
    MasterHost string
    The URL for the Nomad master host.
    SecretKey string
    The secret key of the Rancher API.
    Version string
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    accessKey String
    The access key of the Rancher API.
    masterHost String
    The URL for the Nomad master host.
    secretKey String
    The secret key of the Rancher API.
    version String
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    accessKey string
    The access key of the Rancher API.
    masterHost string
    The URL for the Nomad master host.
    secretKey string
    The secret key of the Rancher API.
    version string
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    access_key str
    The access key of the Rancher API.
    master_host str
    The URL for the Nomad master host.
    secret_key str
    The secret key of the Rancher API.
    version str
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    accessKey String
    The access key of the Rancher API.
    masterHost String
    The URL for the Nomad master host.
    secretKey String
    The secret key of the Rancher API.
    version String
    The Rancher version. Must be "1" or "2". If this field is omitted, it’s assumed that the Rancher cluster is version 1. Note that Kubernetes is required when using Rancher version 2^. Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupIntegrationRoute53, ElastigroupIntegrationRoute53Args

    Domains []ElastigroupIntegrationRoute53Domain
    Collection of one or more domains to register.
    domains List<ElastigroupIntegrationRoute53Domain>
    Collection of one or more domains to register.
    domains ElastigroupIntegrationRoute53Domain[]
    Collection of one or more domains to register.
    domains Sequence[ElastigroupIntegrationRoute53Domain]
    Collection of one or more domains to register.
    domains List<Property Map>
    Collection of one or more domains to register.

    ElastigroupIntegrationRoute53Domain, ElastigroupIntegrationRoute53DomainArgs

    HostedZoneId string
    The id associated with a hosted zone.
    RecordSets List<Pulumi.SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53DomainRecordSet>
    Collection of records containing authoritative DNS information for the specified domain name.
    RecordSetType string
    The type of the record set. Valid values: "a", "cname".
    SpotinstAcctId string
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.
    HostedZoneId string
    The id associated with a hosted zone.
    RecordSets []ElastigroupIntegrationRoute53DomainRecordSet
    Collection of records containing authoritative DNS information for the specified domain name.
    RecordSetType string
    The type of the record set. Valid values: "a", "cname".
    SpotinstAcctId string
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.
    hostedZoneId String
    The id associated with a hosted zone.
    recordSets List<ElastigroupIntegrationRoute53DomainRecordSet>
    Collection of records containing authoritative DNS information for the specified domain name.
    recordSetType String
    The type of the record set. Valid values: "a", "cname".
    spotinstAcctId String
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.
    hostedZoneId string
    The id associated with a hosted zone.
    recordSets ElastigroupIntegrationRoute53DomainRecordSet[]
    Collection of records containing authoritative DNS information for the specified domain name.
    recordSetType string
    The type of the record set. Valid values: "a", "cname".
    spotinstAcctId string
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.
    hosted_zone_id str
    The id associated with a hosted zone.
    record_sets Sequence[ElastigroupIntegrationRoute53DomainRecordSet]
    Collection of records containing authoritative DNS information for the specified domain name.
    record_set_type str
    The type of the record set. Valid values: "a", "cname".
    spotinst_acct_id str
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.
    hostedZoneId String
    The id associated with a hosted zone.
    recordSets List<Property Map>
    Collection of records containing authoritative DNS information for the specified domain name.
    recordSetType String
    The type of the record set. Valid values: "a", "cname".
    spotinstAcctId String
    The Spotinst account ID that is linked to the AWS account that holds the Route 53 Hosted Zone ID. The default is the user Spotinst account provided as a URL parameter.

    ElastigroupIntegrationRoute53DomainRecordSet, ElastigroupIntegrationRoute53DomainRecordSetArgs

    Name string
    The group name.
    UsePublicDns bool

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    UsePublicIp bool
    Designates whether the IP address should be exposed to connections outside the VPC.
    Name string
    The group name.
    UsePublicDns bool

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    UsePublicIp bool
    Designates whether the IP address should be exposed to connections outside the VPC.
    name String
    The group name.
    usePublicDns Boolean

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    usePublicIp Boolean
    Designates whether the IP address should be exposed to connections outside the VPC.
    name string
    The group name.
    usePublicDns boolean

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    usePublicIp boolean
    Designates whether the IP address should be exposed to connections outside the VPC.
    name str
    The group name.
    use_public_dns bool

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    use_public_ip bool
    Designates whether the IP address should be exposed to connections outside the VPC.
    name String
    The group name.
    usePublicDns Boolean

    Designates whether the DNS address should be exposed to connections outside the VPC.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    usePublicIp Boolean
    Designates whether the IP address should be exposed to connections outside the VPC.

    ElastigroupItf, ElastigroupItfArgs

    ElastigroupItfDefaultStaticTargetGroup, ElastigroupItfDefaultStaticTargetGroupArgs

    Arn string
    Percentage double
    Arn string
    Percentage float64
    arn String
    percentage Double
    arn string
    percentage number
    arn str
    percentage float
    arn String
    percentage Number

    ElastigroupItfLoadBalancer, ElastigroupItfLoadBalancerArgs

    ElastigroupItfLoadBalancerListenerRule, ElastigroupItfLoadBalancerListenerRuleArgs

    ElastigroupItfLoadBalancerListenerRuleStaticTargetGroup, ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs

    Arn string
    Percentage double
    Arn string
    Percentage float64
    arn String
    percentage Double
    arn string
    percentage number
    arn str
    percentage float
    arn String
    percentage Number

    ElastigroupItfTargetGroupConfig, ElastigroupItfTargetGroupConfigArgs

    ElastigroupItfTargetGroupConfigMatcher, ElastigroupItfTargetGroupConfigMatcherArgs

    GrpcCode string
    HttpCode string
    GrpcCode string
    HttpCode string
    grpcCode String
    httpCode String
    grpcCode string
    httpCode string
    grpcCode String
    httpCode String

    ElastigroupItfTargetGroupConfigTag, ElastigroupItfTargetGroupConfigTagArgs

    TagKey string
    TagValue string
    TagKey string
    TagValue string
    tagKey String
    tagValue String
    tagKey string
    tagValue string
    tagKey String
    tagValue String

    ElastigroupLogging, ElastigroupLoggingArgs

    Export ElastigroupLoggingExport
    Logging Export configuration.
    export ElastigroupLoggingExport
    Logging Export configuration.
    export ElastigroupLoggingExport
    Logging Export configuration.
    export ElastigroupLoggingExport
    Logging Export configuration.
    export Property Map
    Logging Export configuration.

    ElastigroupLoggingExport, ElastigroupLoggingExportArgs

    S3s List<Pulumi.SpotInst.Aws.Inputs.ElastigroupLoggingExportS3>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    S3s []ElastigroupLoggingExportS3
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s List<ElastigroupLoggingExportS3>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s ElastigroupLoggingExportS3[]
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s Sequence[ElastigroupLoggingExportS3]
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s List<Property Map>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    ElastigroupLoggingExportS3, ElastigroupLoggingExportS3Args

    Id string
    The identifier of The S3 data integration to export the logs to.
    Id string
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.
    id string
    The identifier of The S3 data integration to export the logs to.
    id str
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.

    ElastigroupMetadataOptions, ElastigroupMetadataOptionsArgs

    HttpTokens string
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    InstanceMetadataTags string
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
    HttpTokens string
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    InstanceMetadataTags string
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
    httpTokens String
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    httpPutResponseHopLimit Integer
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    instanceMetadataTags String
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
    httpTokens string
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    httpPutResponseHopLimit number
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    instanceMetadataTags string
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
    http_tokens str
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    http_put_response_hop_limit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    instance_metadata_tags str
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
    httpTokens String
    The state of token usage for your instance metadata requests. Valid values: optional or required.
    httpPutResponseHopLimit Number
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from 1 to 64.
    instanceMetadataTags String
    Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.

    ElastigroupMultaiTargetSet, ElastigroupMultaiTargetSetArgs

    BalancerId string

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    TargetSetId string
    ID of Multai target set.
    BalancerId string

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    TargetSetId string
    ID of Multai target set.
    balancerId String

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    targetSetId String
    ID of Multai target set.
    balancerId string

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    targetSetId string
    ID of Multai target set.
    balancer_id str

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    target_set_id str
    ID of Multai target set.
    balancerId String

    ID of Multai Load Balancer.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    targetSetId String
    ID of Multai target set.

    ElastigroupMultipleMetrics, ElastigroupMultipleMetricsArgs

    Expressions []ElastigroupMultipleMetricsExpression
    Array of objects (Expression config)
    Metrics []ElastigroupMultipleMetricsMetric
    Array of objects (Metric config)
    expressions List<ElastigroupMultipleMetricsExpression>
    Array of objects (Expression config)
    metrics List<ElastigroupMultipleMetricsMetric>
    Array of objects (Metric config)
    expressions ElastigroupMultipleMetricsExpression[]
    Array of objects (Expression config)
    metrics ElastigroupMultipleMetricsMetric[]
    Array of objects (Metric config)
    expressions List<Property Map>
    Array of objects (Expression config)
    metrics List<Property Map>
    Array of objects (Metric config)

    ElastigroupMultipleMetricsExpression, ElastigroupMultipleMetricsExpressionArgs

    Expression string
    An expression consisting of the metric names listed in the 'metrics' array.
    Name string
    The group name.
    Expression string
    An expression consisting of the metric names listed in the 'metrics' array.
    Name string
    The group name.
    expression String
    An expression consisting of the metric names listed in the 'metrics' array.
    name String
    The group name.
    expression string
    An expression consisting of the metric names listed in the 'metrics' array.
    name string
    The group name.
    expression str
    An expression consisting of the metric names listed in the 'metrics' array.
    name str
    The group name.
    expression String
    An expression consisting of the metric names listed in the 'metrics' array.
    name String
    The group name.

    ElastigroupMultipleMetricsMetric, ElastigroupMultipleMetricsMetricArgs

    MetricName string
    The name of the metric, with or without spaces.
    Name string
    The group name.
    Namespace string
    The namespace for the alarm's associated metric.
    Dimensions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupMultipleMetricsMetricDimension>
    A list of dimensions describing qualities of the metric.
    ExtendedStatistic string
    Percentile statistic. Valid values: "p0.1" - "p100".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    MetricName string
    The name of the metric, with or without spaces.
    Name string
    The group name.
    Namespace string
    The namespace for the alarm's associated metric.
    Dimensions []ElastigroupMultipleMetricsMetricDimension
    A list of dimensions describing qualities of the metric.
    ExtendedStatistic string
    Percentile statistic. Valid values: "p0.1" - "p100".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    name String
    The group name.
    namespace String
    The namespace for the alarm's associated metric.
    dimensions List<ElastigroupMultipleMetricsMetricDimension>
    A list of dimensions describing qualities of the metric.
    extendedStatistic String
    Percentile statistic. Valid values: "p0.1" - "p100".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName string
    The name of the metric, with or without spaces.
    name string
    The group name.
    namespace string
    The namespace for the alarm's associated metric.
    dimensions ElastigroupMultipleMetricsMetricDimension[]
    A list of dimensions describing qualities of the metric.
    extendedStatistic string
    Percentile statistic. Valid values: "p0.1" - "p100".
    statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metric_name str
    The name of the metric, with or without spaces.
    name str
    The group name.
    namespace str
    The namespace for the alarm's associated metric.
    dimensions Sequence[ElastigroupMultipleMetricsMetricDimension]
    A list of dimensions describing qualities of the metric.
    extended_statistic str
    Percentile statistic. Valid values: "p0.1" - "p100".
    statistic str
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit str
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    name String
    The group name.
    namespace String
    The namespace for the alarm's associated metric.
    dimensions List<Property Map>
    A list of dimensions describing qualities of the metric.
    extendedStatistic String
    Percentile statistic. Valid values: "p0.1" - "p100".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".

    ElastigroupMultipleMetricsMetricDimension, ElastigroupMultipleMetricsMetricDimensionArgs

    Name string
    The group name.
    Value string
    The dimension value.
    Name string
    The group name.
    Value string
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.
    name string
    The group name.
    value string
    The dimension value.
    name str
    The group name.
    value str
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.

    ElastigroupNetworkInterface, ElastigroupNetworkInterfaceArgs

    DeviceIndex string
    The index of the device on the instance for the network interface attachment.
    AssociateIpv6Address bool

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AssociatePublicIpAddress bool
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    DeleteOnTermination bool
    Whether the volume should be destroyed on instance termination.
    Description string
    The group description.
    NetworkInterfaceId string
    The ID of the network interface.
    PrivateIpAddress string
    The private IP address of the network interface.
    SecondaryPrivateIpAddressCount string
    The number of secondary private IP addresses.
    DeviceIndex string
    The index of the device on the instance for the network interface attachment.
    AssociateIpv6Address bool

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    AssociatePublicIpAddress bool
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    DeleteOnTermination bool
    Whether the volume should be destroyed on instance termination.
    Description string
    The group description.
    NetworkInterfaceId string
    The ID of the network interface.
    PrivateIpAddress string
    The private IP address of the network interface.
    SecondaryPrivateIpAddressCount string
    The number of secondary private IP addresses.
    deviceIndex String
    The index of the device on the instance for the network interface attachment.
    associateIpv6Address Boolean

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    associatePublicIpAddress Boolean
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    deleteOnTermination Boolean
    Whether the volume should be destroyed on instance termination.
    description String
    The group description.
    networkInterfaceId String
    The ID of the network interface.
    privateIpAddress String
    The private IP address of the network interface.
    secondaryPrivateIpAddressCount String
    The number of secondary private IP addresses.
    deviceIndex string
    The index of the device on the instance for the network interface attachment.
    associateIpv6Address boolean

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    associatePublicIpAddress boolean
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    deleteOnTermination boolean
    Whether the volume should be destroyed on instance termination.
    description string
    The group description.
    networkInterfaceId string
    The ID of the network interface.
    privateIpAddress string
    The private IP address of the network interface.
    secondaryPrivateIpAddressCount string
    The number of secondary private IP addresses.
    device_index str
    The index of the device on the instance for the network interface attachment.
    associate_ipv6_address bool

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    associate_public_ip_address bool
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    delete_on_termination bool
    Whether the volume should be destroyed on instance termination.
    description str
    The group description.
    network_interface_id str
    The ID of the network interface.
    private_ip_address str
    The private IP address of the network interface.
    secondary_private_ip_address_count str
    The number of secondary private IP addresses.
    deviceIndex String
    The index of the device on the instance for the network interface attachment.
    associateIpv6Address Boolean

    Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    associatePublicIpAddress Boolean
    Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
    deleteOnTermination Boolean
    Whether the volume should be destroyed on instance termination.
    description String
    The group description.
    networkInterfaceId String
    The ID of the network interface.
    privateIpAddress String
    The private IP address of the network interface.
    secondaryPrivateIpAddressCount String
    The number of secondary private IP addresses.

    ElastigroupResourceRequirement, ElastigroupResourceRequirementArgs

    RequiredMemoryMaximum int
    Required maximum instance memory (<=512)
    RequiredMemoryMinimum int
    Required minimum instance memory (>=1)
    RequiredVcpuMaximum int
    Required maximum instance vCPU (<=64)
    RequiredVcpuMinimum int
    Required minimum instance vCPU (>=1)
    ExcludedInstanceFamilies List<string>
    Instance families to exclude
    ExcludedInstanceGenerations List<string>
    Instance generations to exclude
    ExcludedInstanceTypes List<string>
    Instance types to exclude
    RequiredGpuMaximum int
    Required maximum instance GPU (<=16)
    RequiredGpuMinimum int
    Required minimum instance GPU (>=1)
    RequiredMemoryMaximum int
    Required maximum instance memory (<=512)
    RequiredMemoryMinimum int
    Required minimum instance memory (>=1)
    RequiredVcpuMaximum int
    Required maximum instance vCPU (<=64)
    RequiredVcpuMinimum int
    Required minimum instance vCPU (>=1)
    ExcludedInstanceFamilies []string
    Instance families to exclude
    ExcludedInstanceGenerations []string
    Instance generations to exclude
    ExcludedInstanceTypes []string
    Instance types to exclude
    RequiredGpuMaximum int
    Required maximum instance GPU (<=16)
    RequiredGpuMinimum int
    Required minimum instance GPU (>=1)
    requiredMemoryMaximum Integer
    Required maximum instance memory (<=512)
    requiredMemoryMinimum Integer
    Required minimum instance memory (>=1)
    requiredVcpuMaximum Integer
    Required maximum instance vCPU (<=64)
    requiredVcpuMinimum Integer
    Required minimum instance vCPU (>=1)
    excludedInstanceFamilies List<String>
    Instance families to exclude
    excludedInstanceGenerations List<String>
    Instance generations to exclude
    excludedInstanceTypes List<String>
    Instance types to exclude
    requiredGpuMaximum Integer
    Required maximum instance GPU (<=16)
    requiredGpuMinimum Integer
    Required minimum instance GPU (>=1)
    requiredMemoryMaximum number
    Required maximum instance memory (<=512)
    requiredMemoryMinimum number
    Required minimum instance memory (>=1)
    requiredVcpuMaximum number
    Required maximum instance vCPU (<=64)
    requiredVcpuMinimum number
    Required minimum instance vCPU (>=1)
    excludedInstanceFamilies string[]
    Instance families to exclude
    excludedInstanceGenerations string[]
    Instance generations to exclude
    excludedInstanceTypes string[]
    Instance types to exclude
    requiredGpuMaximum number
    Required maximum instance GPU (<=16)
    requiredGpuMinimum number
    Required minimum instance GPU (>=1)
    required_memory_maximum int
    Required maximum instance memory (<=512)
    required_memory_minimum int
    Required minimum instance memory (>=1)
    required_vcpu_maximum int
    Required maximum instance vCPU (<=64)
    required_vcpu_minimum int
    Required minimum instance vCPU (>=1)
    excluded_instance_families Sequence[str]
    Instance families to exclude
    excluded_instance_generations Sequence[str]
    Instance generations to exclude
    excluded_instance_types Sequence[str]
    Instance types to exclude
    required_gpu_maximum int
    Required maximum instance GPU (<=16)
    required_gpu_minimum int
    Required minimum instance GPU (>=1)
    requiredMemoryMaximum Number
    Required maximum instance memory (<=512)
    requiredMemoryMinimum Number
    Required minimum instance memory (>=1)
    requiredVcpuMaximum Number
    Required maximum instance vCPU (<=64)
    requiredVcpuMinimum Number
    Required minimum instance vCPU (>=1)
    excludedInstanceFamilies List<String>
    Instance families to exclude
    excludedInstanceGenerations List<String>
    Instance generations to exclude
    excludedInstanceTypes List<String>
    Instance types to exclude
    requiredGpuMaximum Number
    Required maximum instance GPU (<=16)
    requiredGpuMinimum Number
    Required minimum instance GPU (>=1)

    ElastigroupResourceTagSpecification, ElastigroupResourceTagSpecificationArgs

    ShouldTagAmis bool
    Tag specification for AMI resources.
    ShouldTagEnis bool
    Tag specification for ENI resources.
    ShouldTagSnapshots bool
    Tag specification for Snapshot resources.
    ShouldTagVolumes bool
    Tag specification for Volume resources.
    ShouldTagAmis bool
    Tag specification for AMI resources.
    ShouldTagEnis bool
    Tag specification for ENI resources.
    ShouldTagSnapshots bool
    Tag specification for Snapshot resources.
    ShouldTagVolumes bool
    Tag specification for Volume resources.
    shouldTagAmis Boolean
    Tag specification for AMI resources.
    shouldTagEnis Boolean
    Tag specification for ENI resources.
    shouldTagSnapshots Boolean
    Tag specification for Snapshot resources.
    shouldTagVolumes Boolean
    Tag specification for Volume resources.
    shouldTagAmis boolean
    Tag specification for AMI resources.
    shouldTagEnis boolean
    Tag specification for ENI resources.
    shouldTagSnapshots boolean
    Tag specification for Snapshot resources.
    shouldTagVolumes boolean
    Tag specification for Volume resources.
    should_tag_amis bool
    Tag specification for AMI resources.
    should_tag_enis bool
    Tag specification for ENI resources.
    should_tag_snapshots bool
    Tag specification for Snapshot resources.
    should_tag_volumes bool
    Tag specification for Volume resources.
    shouldTagAmis Boolean
    Tag specification for AMI resources.
    shouldTagEnis Boolean
    Tag specification for ENI resources.
    shouldTagSnapshots Boolean
    Tag specification for Snapshot resources.
    shouldTagVolumes Boolean
    Tag specification for Volume resources.

    ElastigroupRevertToSpot, ElastigroupRevertToSpotArgs

    PerformAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    TimeWindows List<string>
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30
    PerformAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    TimeWindows []string
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30
    performAt String
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindows List<String>
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30
    performAt string
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindows string[]
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30
    perform_at str
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    time_windows Sequence[str]
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30
    performAt String
    In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
    timeWindows List<String>
    Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30

    ElastigroupScalingDownPolicy, ElastigroupScalingDownPolicyArgs

    MetricName string
    The name of the metric, with or without spaces.
    Namespace string
    The namespace for the alarm's associated metric.
    PolicyName string
    The name of the policy.
    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    Cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyDimension>
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    Source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    StepAdjustments List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyStepAdjustment>
    Target string
    The target number of instances to have in the group.
    Threshold double

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    MetricName string
    The name of the metric, with or without spaces.
    Namespace string
    The namespace for the alarm's associated metric.
    PolicyName string
    The name of the policy.
    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    Cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions []ElastigroupScalingDownPolicyDimension
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    Source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    StepAdjustments []ElastigroupScalingDownPolicyStepAdjustment
    Target string
    The target number of instances to have in the group.
    Threshold float64

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    namespace String
    The namespace for the alarm's associated metric.
    policyName String
    The name of the policy.
    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown Integer
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<ElastigroupScalingDownPolicyDimension>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    operator String
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period Integer
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source String
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments List<ElastigroupScalingDownPolicyStepAdjustment>
    target String
    The target number of instances to have in the group.
    threshold Double

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName string
    The name of the metric, with or without spaces.
    namespace string
    The namespace for the alarm's associated metric.
    policyName string
    The name of the policy.
    actionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown number
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions ElastigroupScalingDownPolicyDimension[]
    A list of dimensions describing qualities of the metric.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    isEnabled boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    maximum string
    The maximal number of instances to have in the group.
    minTargetCapacity string
    . The number of the desired target (and minimum) capacity
    minimum string
    The minimal number of instances to have in the group.
    operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments ElastigroupScalingDownPolicyStepAdjustment[]
    target string
    The target number of instances to have in the group.
    threshold number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metric_name str
    The name of the metric, with or without spaces.
    namespace str
    The namespace for the alarm's associated metric.
    policy_name str
    The name of the policy.
    action_type str
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment str
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions Sequence[ElastigroupScalingDownPolicyDimension]
    A list of dimensions describing qualities of the metric.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    is_enabled bool
    Specifies whether the scaling policy described in this block is enabled.
    max_target_capacity str
    . The number of the desired target (and maximum) capacity
    maximum str
    The maximal number of instances to have in the group.
    min_target_capacity str
    . The number of the desired target (and minimum) capacity
    minimum str
    The minimal number of instances to have in the group.
    operator str
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source str
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic str
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    step_adjustments Sequence[ElastigroupScalingDownPolicyStepAdjustment]
    target str
    The target number of instances to have in the group.
    threshold float

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    unit str
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    namespace String
    The namespace for the alarm's associated metric.
    policyName String
    The name of the policy.
    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown Number
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<Property Map>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    operator String
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period Number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source String
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments List<Property Map>
    target String
    The target number of instances to have in the group.
    threshold Number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".

    ElastigroupScalingDownPolicyDimension, ElastigroupScalingDownPolicyDimensionArgs

    Name string
    The group name.
    Value string
    The dimension value.
    Name string
    The group name.
    Value string
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.
    name string
    The group name.
    value string
    The dimension value.
    name str
    The group name.
    value str
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.

    ElastigroupScalingDownPolicyStepAdjustment, ElastigroupScalingDownPolicyStepAdjustmentArgs

    Action Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    Threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    Action ElastigroupScalingDownPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    Threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingDownPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold Integer

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingDownPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingDownPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action Property Map
    The action to take when scale up according to step's threshold is needed.
    threshold Number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    ElastigroupScalingDownPolicyStepAdjustmentAction, ElastigroupScalingDownPolicyStepAdjustmentActionArgs

    Type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Target string
    The target number of instances to have in the group.
    Type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Target string
    The target number of instances to have in the group.
    type String
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    target String
    The target number of instances to have in the group.
    type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    maximum string
    The maximal number of instances to have in the group.
    minTargetCapacity string
    . The number of the desired target (and minimum) capacity
    minimum string
    The minimal number of instances to have in the group.
    target string
    The target number of instances to have in the group.
    type str
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment str
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    max_target_capacity str
    . The number of the desired target (and maximum) capacity
    maximum str
    The maximal number of instances to have in the group.
    min_target_capacity str
    . The number of the desired target (and minimum) capacity
    minimum str
    The minimal number of instances to have in the group.
    target str
    The target number of instances to have in the group.
    type String
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    target String
    The target number of instances to have in the group.

    ElastigroupScalingStrategy, ElastigroupScalingStrategyArgs

    TerminateAtEndOfBillingHour bool
    Specify whether to terminate instances at the end of each billing hour.
    TerminationPolicy string
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".
    TerminateAtEndOfBillingHour bool
    Specify whether to terminate instances at the end of each billing hour.
    TerminationPolicy string
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".
    terminateAtEndOfBillingHour Boolean
    Specify whether to terminate instances at the end of each billing hour.
    terminationPolicy String
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".
    terminateAtEndOfBillingHour boolean
    Specify whether to terminate instances at the end of each billing hour.
    terminationPolicy string
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".
    terminate_at_end_of_billing_hour bool
    Specify whether to terminate instances at the end of each billing hour.
    termination_policy str
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".
    terminateAtEndOfBillingHour Boolean
    Specify whether to terminate instances at the end of each billing hour.
    terminationPolicy String
    Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".

    ElastigroupScalingTargetPolicy, ElastigroupScalingTargetPolicyArgs

    MetricName string
    String, the name of the metric, with or without spaces.
    Namespace string
    String, the namespace for the alarm's associated metric.
    PolicyName string
    String, the name of the policy.
    Target double
    The target number of instances to have in the group.
    Cooldown int
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingTargetPolicyDimension>
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxCapacityPerScale string

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    PredictiveMode string

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Source string
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    Unit string
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    MetricName string
    String, the name of the metric, with or without spaces.
    Namespace string
    String, the namespace for the alarm's associated metric.
    PolicyName string
    String, the name of the policy.
    Target float64
    The target number of instances to have in the group.
    Cooldown int
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions []ElastigroupScalingTargetPolicyDimension
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    MaxCapacityPerScale string

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    PredictiveMode string

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Source string
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    Unit string
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    String, the name of the metric, with or without spaces.
    namespace String
    String, the namespace for the alarm's associated metric.
    policyName String
    String, the name of the policy.
    target Double
    The target number of instances to have in the group.
    cooldown Integer
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<ElastigroupScalingTargetPolicyDimension>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    maxCapacityPerScale String

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    period Integer
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    predictiveMode String

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    source String
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit String
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName string
    String, the name of the metric, with or without spaces.
    namespace string
    String, the namespace for the alarm's associated metric.
    policyName string
    String, the name of the policy.
    target number
    The target number of instances to have in the group.
    cooldown number
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions ElastigroupScalingTargetPolicyDimension[]
    A list of dimensions describing qualities of the metric.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    maxCapacityPerScale string

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    period number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    predictiveMode string

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    source string
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic string
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit string
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metric_name str
    String, the name of the metric, with or without spaces.
    namespace str
    String, the namespace for the alarm's associated metric.
    policy_name str
    String, the name of the policy.
    target float
    The target number of instances to have in the group.
    cooldown int
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions Sequence[ElastigroupScalingTargetPolicyDimension]
    A list of dimensions describing qualities of the metric.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    max_capacity_per_scale str

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    predictive_mode str

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    source str
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic str
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit str
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    String, the name of the metric, with or without spaces.
    namespace String
    String, the namespace for the alarm's associated metric.
    policyName String
    String, the name of the policy.
    target Number
    The target number of instances to have in the group.
    cooldown Number
    Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<Property Map>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    maxCapacityPerScale String

    String, restrict the maximal number of instances which can be added in each scale-up action.

    scaling_target_policies support predictive scaling:

    period Number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    predictiveMode String

    Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values: FORECAST_AND_SCALE, FORECAST_ONLY.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    source String
    String, the source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    unit String
    String, tThe unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".

    ElastigroupScalingTargetPolicyDimension, ElastigroupScalingTargetPolicyDimensionArgs

    Name string
    The group name.
    Value string
    The dimension value.
    Name string
    The group name.
    Value string
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.
    name string
    The group name.
    value string
    The dimension value.
    name str
    The group name.
    value str
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.

    ElastigroupScalingUpPolicy, ElastigroupScalingUpPolicyArgs

    MetricName string
    The name of the metric, with or without spaces.
    Namespace string
    The namespace for the alarm's associated metric.
    PolicyName string
    The name of the policy.
    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    Cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyDimension>
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    Source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    StepAdjustments List<Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyStepAdjustment>
    Target string
    The target number of instances to have in the group.
    Threshold double

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    MetricName string
    The name of the metric, with or without spaces.
    Namespace string
    The namespace for the alarm's associated metric.
    PolicyName string
    The name of the policy.
    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    Cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    Dimensions []ElastigroupScalingUpPolicyDimension
    A list of dimensions describing qualities of the metric.
    EvaluationPeriods int
    The number of periods over which data is compared to the specified threshold.
    IsEnabled bool
    Specifies whether the scaling policy described in this block is enabled.
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    Period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    Source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    Statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    StepAdjustments []ElastigroupScalingUpPolicyStepAdjustment
    Target string
    The target number of instances to have in the group.
    Threshold float64

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    Unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    namespace String
    The namespace for the alarm's associated metric.
    policyName String
    The name of the policy.
    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown Integer
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<ElastigroupScalingUpPolicyDimension>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Integer
    The number of periods over which data is compared to the specified threshold.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    operator String
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period Integer
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source String
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments List<ElastigroupScalingUpPolicyStepAdjustment>
    target String
    The target number of instances to have in the group.
    threshold Double

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName string
    The name of the metric, with or without spaces.
    namespace string
    The namespace for the alarm's associated metric.
    policyName string
    The name of the policy.
    actionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown number
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions ElastigroupScalingUpPolicyDimension[]
    A list of dimensions describing qualities of the metric.
    evaluationPeriods number
    The number of periods over which data is compared to the specified threshold.
    isEnabled boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    maximum string
    The maximal number of instances to have in the group.
    minTargetCapacity string
    . The number of the desired target (and minimum) capacity
    minimum string
    The minimal number of instances to have in the group.
    operator string
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source string
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic string
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments ElastigroupScalingUpPolicyStepAdjustment[]
    target string
    The target number of instances to have in the group.
    threshold number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    unit string
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metric_name str
    The name of the metric, with or without spaces.
    namespace str
    The namespace for the alarm's associated metric.
    policy_name str
    The name of the policy.
    action_type str
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment str
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown int
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions Sequence[ElastigroupScalingUpPolicyDimension]
    A list of dimensions describing qualities of the metric.
    evaluation_periods int
    The number of periods over which data is compared to the specified threshold.
    is_enabled bool
    Specifies whether the scaling policy described in this block is enabled.
    max_target_capacity str
    . The number of the desired target (and maximum) capacity
    maximum str
    The maximal number of instances to have in the group.
    min_target_capacity str
    . The number of the desired target (and minimum) capacity
    minimum str
    The minimal number of instances to have in the group.
    operator str
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period int
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source str
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic str
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    step_adjustments Sequence[ElastigroupScalingUpPolicyStepAdjustment]
    target str
    The target number of instances to have in the group.
    threshold float

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    unit str
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".
    metricName String
    The name of the metric, with or without spaces.
    namespace String
    The namespace for the alarm's associated metric.
    policyName String
    The name of the policy.
    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    cooldown Number
    The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
    dimensions List<Property Map>
    A list of dimensions describing qualities of the metric.
    evaluationPeriods Number
    The number of periods over which data is compared to the specified threshold.
    isEnabled Boolean
    Specifies whether the scaling policy described in this block is enabled.
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    operator String
    The operator to use in order to determine if the scaling policy is applicable. Valid values: "gt", "gte", "lt", "lte".
    period Number
    The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
    source String
    The source of the metric. Valid values: "cloudWatch", "spectrum".
    statistic String
    The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
    stepAdjustments List<Property Map>
    target String
    The target number of instances to have in the group.
    threshold Number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using setMinTarget – set the field min_target_capacity When using updateCapacity – set the fields minimum, maximum, and target

    unit String
    The unit for the alarm's associated metric. Valid values: "percent, "seconds", "microseconds", "milliseconds", "bytes", "kilobytes", "megabytes", "gigabytes", "terabytes", "bits", "kilobits", "megabits", "gigabits", "terabits", "count", "bytes/second", "kilobytes/second", "megabytes/second", "gigabytes/second", "terabytes/second", "bits/second", "kilobits/second", "megabits/second", "gigabits/second", "terabits/second", "count/second", "none".

    ElastigroupScalingUpPolicyDimension, ElastigroupScalingUpPolicyDimensionArgs

    Name string
    The group name.
    Value string
    The dimension value.
    Name string
    The group name.
    Value string
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.
    name string
    The group name.
    value string
    The dimension value.
    name str
    The group name.
    value str
    The dimension value.
    name String
    The group name.
    value String
    The dimension value.

    ElastigroupScalingUpPolicyStepAdjustment, ElastigroupScalingUpPolicyStepAdjustmentArgs

    Action Pulumi.SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    Threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    Action ElastigroupScalingUpPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    Threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingUpPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold Integer

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingUpPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action ElastigroupScalingUpPolicyStepAdjustmentAction
    The action to take when scale up according to step's threshold is needed.
    threshold int

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    action Property Map
    The action to take when scale up according to step's threshold is needed.
    threshold Number

    The value against which the specified statistic is compared in order to determine if a step should be applied.

    If you do not specify an action type, you can only use – adjustment, minTargetCapacity, maxTargetCapacity. While using action_type, please also set the following:

    When using adjustment – set the field adjustment When using updateCapacity – set the fields minimum, maximum, and target

    ElastigroupScalingUpPolicyStepAdjustmentAction, ElastigroupScalingUpPolicyStepAdjustmentActionArgs

    Type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Target string
    The target number of instances to have in the group.
    Type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    Adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    MaxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    Maximum string
    The maximal number of instances to have in the group.
    MinTargetCapacity string
    . The number of the desired target (and minimum) capacity
    Minimum string
    The minimal number of instances to have in the group.
    Target string
    The target number of instances to have in the group.
    type String
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    target String
    The target number of instances to have in the group.
    type string
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment string
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity string
    . The number of the desired target (and maximum) capacity
    maximum string
    The maximal number of instances to have in the group.
    minTargetCapacity string
    . The number of the desired target (and minimum) capacity
    minimum string
    The minimal number of instances to have in the group.
    target string
    The target number of instances to have in the group.
    type str
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment str
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    max_target_capacity str
    . The number of the desired target (and maximum) capacity
    maximum str
    The maximal number of instances to have in the group.
    min_target_capacity str
    . The number of the desired target (and minimum) capacity
    minimum str
    The minimal number of instances to have in the group.
    target str
    The target number of instances to have in the group.
    type String
    The type of the action to take when scale up is needed. Valid types: "adjustment", "updateCapacity", "setMaxTarget", "percentageAdjustment".
    adjustment String
    The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value: "MAX(currCapacity / 5, value * 10)"
    maxTargetCapacity String
    . The number of the desired target (and maximum) capacity
    maximum String
    The maximal number of instances to have in the group.
    minTargetCapacity String
    . The number of the desired target (and minimum) capacity
    minimum String
    The minimal number of instances to have in the group.
    target String
    The target number of instances to have in the group.

    ElastigroupScheduledTask, ElastigroupScheduledTaskArgs

    TaskType string
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    Adjustment string
    The number of instances to add or remove.
    AdjustmentPercentage string

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    BatchSizePercentage string
    The percentage size of each batch in the scheduled deployment roll.
    CronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    Frequency string
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    GracePeriod string
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    IsEnabled bool
    Setting the task to being enabled or disabled.
    MaxCapacity string
    The maximum number of instances the group should have.
    MinCapacity string
    The minimum number of instances the group should have.
    ScaleMaxCapacity string
    The maximum number of instances the group should have.
    ScaleMinCapacity string
    The minimum number of instances the group should have.
    ScaleTargetCapacity string
    The desired number of instances the group should have.
    StartTime string
    Set a start time for one time tasks.
    TargetCapacity string
    The desired number of instances the group should have.
    TaskType string
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    Adjustment string
    The number of instances to add or remove.
    AdjustmentPercentage string

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    BatchSizePercentage string
    The percentage size of each batch in the scheduled deployment roll.
    CronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    Frequency string
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    GracePeriod string
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    IsEnabled bool
    Setting the task to being enabled or disabled.
    MaxCapacity string
    The maximum number of instances the group should have.
    MinCapacity string
    The minimum number of instances the group should have.
    ScaleMaxCapacity string
    The maximum number of instances the group should have.
    ScaleMinCapacity string
    The minimum number of instances the group should have.
    ScaleTargetCapacity string
    The desired number of instances the group should have.
    StartTime string
    Set a start time for one time tasks.
    TargetCapacity string
    The desired number of instances the group should have.
    taskType String
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    adjustment String
    The number of instances to add or remove.
    adjustmentPercentage String

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage String
    The percentage size of each batch in the scheduled deployment roll.
    cronExpression String
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    frequency String
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    gracePeriod String
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    isEnabled Boolean
    Setting the task to being enabled or disabled.
    maxCapacity String
    The maximum number of instances the group should have.
    minCapacity String
    The minimum number of instances the group should have.
    scaleMaxCapacity String
    The maximum number of instances the group should have.
    scaleMinCapacity String
    The minimum number of instances the group should have.
    scaleTargetCapacity String
    The desired number of instances the group should have.
    startTime String
    Set a start time for one time tasks.
    targetCapacity String
    The desired number of instances the group should have.
    taskType string
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    adjustment string
    The number of instances to add or remove.
    adjustmentPercentage string

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage string
    The percentage size of each batch in the scheduled deployment roll.
    cronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    frequency string
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    gracePeriod string
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    isEnabled boolean
    Setting the task to being enabled or disabled.
    maxCapacity string
    The maximum number of instances the group should have.
    minCapacity string
    The minimum number of instances the group should have.
    scaleMaxCapacity string
    The maximum number of instances the group should have.
    scaleMinCapacity string
    The minimum number of instances the group should have.
    scaleTargetCapacity string
    The desired number of instances the group should have.
    startTime string
    Set a start time for one time tasks.
    targetCapacity string
    The desired number of instances the group should have.
    task_type str
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    adjustment str
    The number of instances to add or remove.
    adjustment_percentage str

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batch_size_percentage str
    The percentage size of each batch in the scheduled deployment roll.
    cron_expression str
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    frequency str
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    grace_period str
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    is_enabled bool
    Setting the task to being enabled or disabled.
    max_capacity str
    The maximum number of instances the group should have.
    min_capacity str
    The minimum number of instances the group should have.
    scale_max_capacity str
    The maximum number of instances the group should have.
    scale_min_capacity str
    The minimum number of instances the group should have.
    scale_target_capacity str
    The desired number of instances the group should have.
    start_time str
    Set a start time for one time tasks.
    target_capacity str
    The desired number of instances the group should have.
    taskType String
    The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
    adjustment String
    The number of instances to add or remove.
    adjustmentPercentage String

    The percentage of instances to add or remove.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage String
    The percentage size of each batch in the scheduled deployment roll.
    cronExpression String
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
    frequency String
    The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
    gracePeriod String
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    isEnabled Boolean
    Setting the task to being enabled or disabled.
    maxCapacity String
    The maximum number of instances the group should have.
    minCapacity String
    The minimum number of instances the group should have.
    scaleMaxCapacity String
    The maximum number of instances the group should have.
    scaleMinCapacity String
    The minimum number of instances the group should have.
    scaleTargetCapacity String
    The desired number of instances the group should have.
    startTime String
    Set a start time for one time tasks.
    targetCapacity String
    The desired number of instances the group should have.

    ElastigroupSignal, ElastigroupSignalArgs

    Name string
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    Timeout int

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Name string
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    Timeout int

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    name String
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    timeout Integer

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    name string
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    timeout number

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    name str
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    timeout int

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    name String
    The name of the signal defined for the group. Valid Values: "INSTANCE_READY", "INSTANCE_READY_TO_SHUTDOWN"
    timeout Number

    The signals defined timeout- default is 40 minutes (1800 seconds).

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupStatefulDeallocation, ElastigroupStatefulDeallocationArgs

    ShouldDeleteImages bool
    For stateful groups: remove persistent images.
    ShouldDeleteNetworkInterfaces bool
    For stateful groups: remove network interfaces.
    ShouldDeleteSnapshots bool

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ShouldDeleteVolumes bool
    For stateful groups: remove persistent volumes.
    ShouldDeleteImages bool
    For stateful groups: remove persistent images.
    ShouldDeleteNetworkInterfaces bool
    For stateful groups: remove network interfaces.
    ShouldDeleteSnapshots bool

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    ShouldDeleteVolumes bool
    For stateful groups: remove persistent volumes.
    shouldDeleteImages Boolean
    For stateful groups: remove persistent images.
    shouldDeleteNetworkInterfaces Boolean
    For stateful groups: remove network interfaces.
    shouldDeleteSnapshots Boolean

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    shouldDeleteVolumes Boolean
    For stateful groups: remove persistent volumes.
    shouldDeleteImages boolean
    For stateful groups: remove persistent images.
    shouldDeleteNetworkInterfaces boolean
    For stateful groups: remove network interfaces.
    shouldDeleteSnapshots boolean

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    shouldDeleteVolumes boolean
    For stateful groups: remove persistent volumes.
    should_delete_images bool
    For stateful groups: remove persistent images.
    should_delete_network_interfaces bool
    For stateful groups: remove network interfaces.
    should_delete_snapshots bool

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    should_delete_volumes bool
    For stateful groups: remove persistent volumes.
    shouldDeleteImages Boolean
    For stateful groups: remove persistent images.
    shouldDeleteNetworkInterfaces Boolean
    For stateful groups: remove network interfaces.
    shouldDeleteSnapshots Boolean

    For stateful groups: remove snapshots.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    shouldDeleteVolumes Boolean
    For stateful groups: remove persistent volumes.

    ElastigroupStatefulInstanceAction, ElastigroupStatefulInstanceActionArgs

    StatefulInstanceId string
    String, Stateful Instance ID on which the action should be performed.
    Type string

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    StatefulInstanceId string
    String, Stateful Instance ID on which the action should be performed.
    Type string

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    statefulInstanceId String
    String, Stateful Instance ID on which the action should be performed.
    type String

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    statefulInstanceId string
    String, Stateful Instance ID on which the action should be performed.
    type string

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    stateful_instance_id str
    String, Stateful Instance ID on which the action should be performed.
    type str

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    statefulInstanceId String
    String, Stateful Instance ID on which the action should be performed.
    type String

    String, Action type. Supported action types: pause, resume, recycle, deallocate.

    Usage:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    ElastigroupTag, ElastigroupTagArgs

    Key string
    Value string
    The dimension value.
    Key string
    Value string
    The dimension value.
    key String
    value String
    The dimension value.
    key string
    value string
    The dimension value.
    key str
    value str
    The dimension value.
    key String
    value String
    The dimension value.

    ElastigroupUpdatePolicy, ElastigroupUpdatePolicyArgs

    ShouldResumeStateful bool
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    ShouldRoll bool
    Sets the enablement of the roll option.
    AutoApplyTags bool
    Enables updates to tags without rolling the group when set to true.
    RollConfig Pulumi.SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    ShouldResumeStateful bool
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    ShouldRoll bool
    Sets the enablement of the roll option.
    AutoApplyTags bool
    Enables updates to tags without rolling the group when set to true.
    RollConfig ElastigroupUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldResumeStateful Boolean
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    shouldRoll Boolean
    Sets the enablement of the roll option.
    autoApplyTags Boolean
    Enables updates to tags without rolling the group when set to true.
    rollConfig ElastigroupUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldResumeStateful boolean
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    shouldRoll boolean
    Sets the enablement of the roll option.
    autoApplyTags boolean
    Enables updates to tags without rolling the group when set to true.
    rollConfig ElastigroupUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    should_resume_stateful bool
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    should_roll bool
    Sets the enablement of the roll option.
    auto_apply_tags bool
    Enables updates to tags without rolling the group when set to true.
    roll_config ElastigroupUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldResumeStateful Boolean
    This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
    shouldRoll Boolean
    Sets the enablement of the roll option.
    autoApplyTags Boolean
    Enables updates to tags without rolling the group when set to true.
    rollConfig Property Map
    While used, you can control whether the group should perform a deployment after an update to the configuration.

    ElastigroupUpdatePolicyRollConfig, ElastigroupUpdatePolicyRollConfigArgs

    BatchSizePercentage int
    The percentage size of each batch in the scheduled deployment roll.
    GracePeriod int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    Strategy Pulumi.SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfigStrategy
    Strategy parameters
    WaitForRollPercentage double
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    WaitForRollTimeout int
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.
    BatchSizePercentage int
    The percentage size of each batch in the scheduled deployment roll.
    GracePeriod int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    HealthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    Strategy ElastigroupUpdatePolicyRollConfigStrategy
    Strategy parameters
    WaitForRollPercentage float64
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    WaitForRollTimeout int
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.
    batchSizePercentage Integer
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod Integer
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    strategy ElastigroupUpdatePolicyRollConfigStrategy
    Strategy parameters
    waitForRollPercentage Double
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    waitForRollTimeout Integer
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.
    batchSizePercentage number
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod number
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    healthCheckType string
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    strategy ElastigroupUpdatePolicyRollConfigStrategy
    Strategy parameters
    waitForRollPercentage number
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    waitForRollTimeout number
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.
    batch_size_percentage int
    The percentage size of each batch in the scheduled deployment roll.
    grace_period int
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    health_check_type str
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    strategy ElastigroupUpdatePolicyRollConfigStrategy
    Strategy parameters
    wait_for_roll_percentage float
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    wait_for_roll_timeout int
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.
    batchSizePercentage Number
    The percentage size of each batch in the scheduled deployment roll.
    gracePeriod Number
    The period of time (seconds) to wait before checking a batch's health after it's deployment.
    healthCheckType String
    The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".
    strategy Property Map
    Strategy parameters
    waitForRollPercentage Number
    For use with should_roll. Sets minimum %!o(MISSING)f roll required to complete before continuing the plan. Required if wait_for_roll_timeout is set.
    waitForRollTimeout Number
    For use with should_roll. Sets how long to wait for the deployed %!o(MISSING)f a roll to exceed wait_for_roll_percentage before continuing the plan. Required if wait_for_roll_percentage is set.

    ElastigroupUpdatePolicyRollConfigStrategy, ElastigroupUpdatePolicyRollConfigStrategyArgs

    Action string
    The action to take when scale up according to step's threshold is needed.
    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    OnFailure Pulumi.SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfigStrategyOnFailure
    Set detach options to the deployment.
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    Action string
    The action to take when scale up according to step's threshold is needed.
    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    OnFailure ElastigroupUpdatePolicyRollConfigStrategyOnFailure
    Set detach options to the deployment.
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    action String
    The action to take when scale up according to step's threshold is needed.
    batchMinHealthyPercentage Integer
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    onFailure ElastigroupUpdatePolicyRollConfigStrategyOnFailure
    Set detach options to the deployment.
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance
    action string
    The action to take when scale up according to step's threshold is needed.
    batchMinHealthyPercentage number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    onFailure ElastigroupUpdatePolicyRollConfigStrategyOnFailure
    Set detach options to the deployment.
    shouldDrainInstances boolean
    Bool value if to wait to drain instance
    action str
    The action to take when scale up according to step's threshold is needed.
    batch_min_healthy_percentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    on_failure ElastigroupUpdatePolicyRollConfigStrategyOnFailure
    Set detach options to the deployment.
    should_drain_instances bool
    Bool value if to wait to drain instance
    action String
    The action to take when scale up according to step's threshold is needed.
    batchMinHealthyPercentage Number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range 1 - 100.
    onFailure Property Map
    Set detach options to the deployment.
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance

    ElastigroupUpdatePolicyRollConfigStrategyOnFailure, ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs

    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    BatchNum int
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ShouldDecrementTargetCapacity bool
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="shouldhandleallbatches_csharp">

    ShouldHandleAllBatches bool

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    ActionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    BatchNum int
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ShouldDecrementTargetCapacity bool
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="shouldhandleallbatches_go">

    ShouldHandleAllBatches bool

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    batchNum Integer
    drainingTimeout Integer
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    shouldDecrementTargetCapacity Boolean
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="shouldhandleallbatches_java">

    shouldHandleAllBatches Boolean

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    actionType string
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    batchNum number
    drainingTimeout number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    shouldDecrementTargetCapacity boolean
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="shouldhandleallbatches_nodejs">

    shouldHandleAllBatches boolean

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    action_type str
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    batch_num int
    draining_timeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    should_decrement_target_capacity bool
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="should_handle_all_batches_python">

    should_handle_all_batches bool

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    actionType String
    The type of action to perform for scaling. Valid values: "adjustment", "percentageAdjustment", "setMaxTarget", "setMinTarget", "updateCapacity". If a step_adjustment object is defined, then it cannot be specified.
    batchNum Number
    drainingTimeout Number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    shouldDecrementTargetCapacity Boolean
    Decrementing the group target capacity after detaching the instances.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    title="Optional"> <span id="shouldhandleallbatches_yaml">

    shouldHandleAllBatches Boolean

    Indicator if the action should apply to all batches of the deployment or only the latest batch.

    Package Details

    Repository
    Spotinst pulumi/pulumi-spotinst
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the spotinst Terraform Provider.
    spotinst logo
    Spotinst v3.70.1 published on Thursday, Mar 28, 2024 by Pulumi