1. Packages
  2. Spotinst
  3. API Docs
  4. aws
  5. Elastigroup
Spotinst v3.60.1 published on Wednesday, Dec 6, 2023 by Pulumi

spotinst.aws.Elastigroup

Explore with Pulumi AI

spotinst logo
Spotinst v3.60.1 published on Wednesday, Dec 6, 2023 by Pulumi

    Provides a Spotinst AWS group resource.

    Example Usage

    Coming soon!

    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.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))
                .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());
    
        }
    }
    

    Coming soon!

    Coming soon!

    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
          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,
                    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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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,
            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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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 group ID.

    Id string

    The group ID.

    id String

    The group ID.

    id string

    The group ID.

    id str

    The group ID.

    id String

    The group ID.

    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