1. Packages
  2. Spotinst
  3. API Docs
  4. aws
  5. Beanstalk
Spotinst v3.70.0 published on Monday, Mar 25, 2024 by Pulumi

spotinst.aws.Beanstalk

Explore with Pulumi AI

spotinst logo
Spotinst v3.70.0 published on Monday, Mar 25, 2024 by Pulumi

    Provides a Spotinst AWS group resource using Elastic Beanstalk.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as spotinst from "@pulumi/spotinst";
    
    const elastigoup_aws_beanstalk = new spotinst.aws.Beanstalk("elastigoup-aws-beanstalk", {
        beanstalkEnvironmentId: "e-example",
        beanstalkEnvironmentName: "example-env",
        deploymentPreferences: {
            automaticRoll: true,
            batchSizePercentage: 100,
            gracePeriod: 90,
            strategies: [{
                action: "REPLACE_SERVER",
                shouldDrainInstances: true,
            }],
        },
        desiredCapacity: 0,
        instanceTypesSpots: [
            "t2.micro",
            "t2.medium",
            "t2.large",
        ],
        managedActions: {
            platformUpdate: {
                performAt: "timeWindow",
                timeWindow: "Mon:23:50-Tue:00:20",
                updateLevel: "minorAndPatch",
            },
        },
        maxSize: 1,
        minSize: 0,
        product: "Linux/UNIX",
        region: "us-west-2",
    });
    
    import pulumi
    import pulumi_spotinst as spotinst
    
    elastigoup_aws_beanstalk = spotinst.aws.Beanstalk("elastigoup-aws-beanstalk",
        beanstalk_environment_id="e-example",
        beanstalk_environment_name="example-env",
        deployment_preferences=spotinst.aws.BeanstalkDeploymentPreferencesArgs(
            automatic_roll=True,
            batch_size_percentage=100,
            grace_period=90,
            strategies=[spotinst.aws.BeanstalkDeploymentPreferencesStrategyArgs(
                action="REPLACE_SERVER",
                should_drain_instances=True,
            )],
        ),
        desired_capacity=0,
        instance_types_spots=[
            "t2.micro",
            "t2.medium",
            "t2.large",
        ],
        managed_actions=spotinst.aws.BeanstalkManagedActionsArgs(
            platform_update=spotinst.aws.BeanstalkManagedActionsPlatformUpdateArgs(
                perform_at="timeWindow",
                time_window="Mon:23:50-Tue:00:20",
                update_level="minorAndPatch",
            ),
        ),
        max_size=1,
        min_size=0,
        product="Linux/UNIX",
        region="us-west-2")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-spotinst/sdk/v3/go/spotinst/aws"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := aws.NewBeanstalk(ctx, "elastigoup-aws-beanstalk", &aws.BeanstalkArgs{
    			BeanstalkEnvironmentId:   pulumi.String("e-example"),
    			BeanstalkEnvironmentName: pulumi.String("example-env"),
    			DeploymentPreferences: &aws.BeanstalkDeploymentPreferencesArgs{
    				AutomaticRoll:       pulumi.Bool(true),
    				BatchSizePercentage: pulumi.Int(100),
    				GracePeriod:         pulumi.Int(90),
    				Strategies: aws.BeanstalkDeploymentPreferencesStrategyArray{
    					&aws.BeanstalkDeploymentPreferencesStrategyArgs{
    						Action:               pulumi.String("REPLACE_SERVER"),
    						ShouldDrainInstances: pulumi.Bool(true),
    					},
    				},
    			},
    			DesiredCapacity: pulumi.Int(0),
    			InstanceTypesSpots: pulumi.StringArray{
    				pulumi.String("t2.micro"),
    				pulumi.String("t2.medium"),
    				pulumi.String("t2.large"),
    			},
    			ManagedActions: &aws.BeanstalkManagedActionsArgs{
    				PlatformUpdate: &aws.BeanstalkManagedActionsPlatformUpdateArgs{
    					PerformAt:   pulumi.String("timeWindow"),
    					TimeWindow:  pulumi.String("Mon:23:50-Tue:00:20"),
    					UpdateLevel: pulumi.String("minorAndPatch"),
    				},
    			},
    			MaxSize: pulumi.Int(1),
    			MinSize: pulumi.Int(0),
    			Product: pulumi.String("Linux/UNIX"),
    			Region:  pulumi.String("us-west-2"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using SpotInst = Pulumi.SpotInst;
    
    return await Deployment.RunAsync(() => 
    {
        var elastigoup_aws_beanstalk = new SpotInst.Aws.Beanstalk("elastigoup-aws-beanstalk", new()
        {
            BeanstalkEnvironmentId = "e-example",
            BeanstalkEnvironmentName = "example-env",
            DeploymentPreferences = new SpotInst.Aws.Inputs.BeanstalkDeploymentPreferencesArgs
            {
                AutomaticRoll = true,
                BatchSizePercentage = 100,
                GracePeriod = 90,
                Strategies = new[]
                {
                    new SpotInst.Aws.Inputs.BeanstalkDeploymentPreferencesStrategyArgs
                    {
                        Action = "REPLACE_SERVER",
                        ShouldDrainInstances = true,
                    },
                },
            },
            DesiredCapacity = 0,
            InstanceTypesSpots = new[]
            {
                "t2.micro",
                "t2.medium",
                "t2.large",
            },
            ManagedActions = new SpotInst.Aws.Inputs.BeanstalkManagedActionsArgs
            {
                PlatformUpdate = new SpotInst.Aws.Inputs.BeanstalkManagedActionsPlatformUpdateArgs
                {
                    PerformAt = "timeWindow",
                    TimeWindow = "Mon:23:50-Tue:00:20",
                    UpdateLevel = "minorAndPatch",
                },
            },
            MaxSize = 1,
            MinSize = 0,
            Product = "Linux/UNIX",
            Region = "us-west-2",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.spotinst.aws.Beanstalk;
    import com.pulumi.spotinst.aws.BeanstalkArgs;
    import com.pulumi.spotinst.aws.inputs.BeanstalkDeploymentPreferencesArgs;
    import com.pulumi.spotinst.aws.inputs.BeanstalkManagedActionsArgs;
    import com.pulumi.spotinst.aws.inputs.BeanstalkManagedActionsPlatformUpdateArgs;
    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 elastigoup_aws_beanstalk = new Beanstalk("elastigoup-aws-beanstalk", BeanstalkArgs.builder()        
                .beanstalkEnvironmentId("e-example")
                .beanstalkEnvironmentName("example-env")
                .deploymentPreferences(BeanstalkDeploymentPreferencesArgs.builder()
                    .automaticRoll(true)
                    .batchSizePercentage(100)
                    .gracePeriod(90)
                    .strategies(BeanstalkDeploymentPreferencesStrategyArgs.builder()
                        .action("REPLACE_SERVER")
                        .shouldDrainInstances(true)
                        .build())
                    .build())
                .desiredCapacity(0)
                .instanceTypesSpots(            
                    "t2.micro",
                    "t2.medium",
                    "t2.large")
                .managedActions(BeanstalkManagedActionsArgs.builder()
                    .platformUpdate(BeanstalkManagedActionsPlatformUpdateArgs.builder()
                        .performAt("timeWindow")
                        .timeWindow("Mon:23:50-Tue:00:20")
                        .updateLevel("minorAndPatch")
                        .build())
                    .build())
                .maxSize(1)
                .minSize(0)
                .product("Linux/UNIX")
                .region("us-west-2")
                .build());
    
        }
    }
    
    resources:
      elastigoup-aws-beanstalk:
        type: spotinst:aws:Beanstalk
        properties:
          beanstalkEnvironmentId: e-example
          beanstalkEnvironmentName: example-env
          deploymentPreferences:
            automaticRoll: true
            batchSizePercentage: 100
            gracePeriod: 90
            strategies:
              - action: REPLACE_SERVER
                shouldDrainInstances: true
          desiredCapacity: 0
          instanceTypesSpots:
            - t2.micro
            - t2.medium
            - t2.large
          managedActions:
            platformUpdate:
              performAt: timeWindow
              timeWindow: Mon:23:50-Tue:00:20
              updateLevel: minorAndPatch
          maxSize: 1
          minSize: 0
          product: Linux/UNIX
          region: us-west-2
    

    Create Beanstalk Resource

    new Beanstalk(name: string, args: BeanstalkArgs, opts?: CustomResourceOptions);
    @overload
    def Beanstalk(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  beanstalk_environment_id: Optional[str] = None,
                  beanstalk_environment_name: Optional[str] = None,
                  deployment_preferences: Optional[BeanstalkDeploymentPreferencesArgs] = None,
                  desired_capacity: Optional[int] = None,
                  instance_types_spots: Optional[Sequence[str]] = None,
                  maintenance: Optional[str] = None,
                  managed_actions: Optional[BeanstalkManagedActionsArgs] = None,
                  max_size: Optional[int] = None,
                  min_size: Optional[int] = None,
                  name: Optional[str] = None,
                  product: Optional[str] = None,
                  region: Optional[str] = None,
                  scheduled_tasks: Optional[Sequence[BeanstalkScheduledTaskArgs]] = None)
    @overload
    def Beanstalk(resource_name: str,
                  args: BeanstalkArgs,
                  opts: Optional[ResourceOptions] = None)
    func NewBeanstalk(ctx *Context, name string, args BeanstalkArgs, opts ...ResourceOption) (*Beanstalk, error)
    public Beanstalk(string name, BeanstalkArgs args, CustomResourceOptions? opts = null)
    public Beanstalk(String name, BeanstalkArgs args)
    public Beanstalk(String name, BeanstalkArgs args, CustomResourceOptions options)
    
    type: spotinst:aws:Beanstalk
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args BeanstalkArgs
    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 BeanstalkArgs
    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 BeanstalkArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BeanstalkArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BeanstalkArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Beanstalk 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 Beanstalk resource accepts the following input properties:

    DesiredCapacity int
    The desired number of instances the group should have at any time.
    InstanceTypesSpots List<string>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MinSize int
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    BeanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    BeanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    DeploymentPreferences Pulumi.SpotInst.Aws.Inputs.BeanstalkDeploymentPreferences
    Preferences when performing a roll
    Maintenance string
    ManagedActions Pulumi.SpotInst.Aws.Inputs.BeanstalkManagedActions
    Managed Actions parameters
    Name string
    The group name.
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.BeanstalkScheduledTask>
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    InstanceTypesSpots []string
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    MaxSize int
    The maximum number of instances the group should have at any time.
    MinSize int
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    BeanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    BeanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    DeploymentPreferences BeanstalkDeploymentPreferencesArgs
    Preferences when performing a roll
    Maintenance string
    ManagedActions BeanstalkManagedActionsArgs
    Managed Actions parameters
    Name string
    The group name.
    ScheduledTasks []BeanstalkScheduledTaskArgs
    desiredCapacity Integer
    The desired number of instances the group should have at any time.
    instanceTypesSpots List<String>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maxSize Integer
    The maximum number of instances the group should have at any time.
    minSize Integer
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    beanstalkEnvironmentId String
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName String
    The name of an existing Beanstalk environment.
    deploymentPreferences BeanstalkDeploymentPreferences
    Preferences when performing a roll
    maintenance String
    managedActions BeanstalkManagedActions
    Managed Actions parameters
    name String
    The group name.
    scheduledTasks List<BeanstalkScheduledTask>
    desiredCapacity number
    The desired number of instances the group should have at any time.
    instanceTypesSpots string[]
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maxSize number
    The maximum number of instances the group should have at any time.
    minSize number
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    beanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    deploymentPreferences BeanstalkDeploymentPreferences
    Preferences when performing a roll
    maintenance string
    managedActions BeanstalkManagedActions
    Managed Actions parameters
    name string
    The group name.
    scheduledTasks BeanstalkScheduledTask[]
    desired_capacity int
    The desired number of instances the group should have at any time.
    instance_types_spots Sequence[str]
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    max_size int
    The maximum number of instances the group should have at any time.
    min_size int
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    beanstalk_environment_id str
    The id of an existing Beanstalk environment.
    beanstalk_environment_name str
    The name of an existing Beanstalk environment.
    deployment_preferences BeanstalkDeploymentPreferencesArgs
    Preferences when performing a roll
    maintenance str
    managed_actions BeanstalkManagedActionsArgs
    Managed Actions parameters
    name str
    The group name.
    scheduled_tasks Sequence[BeanstalkScheduledTaskArgs]
    desiredCapacity Number
    The desired number of instances the group should have at any time.
    instanceTypesSpots List<String>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maxSize Number
    The maximum number of instances the group should have at any time.
    minSize Number
    The minimum number of instances the group should have at any time.
    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. Cannot be changed after the group has been created.
    beanstalkEnvironmentId String
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName String
    The name of an existing Beanstalk environment.
    deploymentPreferences Property Map
    Preferences when performing a roll
    maintenance String
    managedActions Property Map
    Managed Actions parameters
    name String
    The group name.
    scheduledTasks List<Property Map>

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Beanstalk 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 Beanstalk Resource

    Get an existing Beanstalk 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?: BeanstalkState, opts?: CustomResourceOptions): Beanstalk
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            beanstalk_environment_id: Optional[str] = None,
            beanstalk_environment_name: Optional[str] = None,
            deployment_preferences: Optional[BeanstalkDeploymentPreferencesArgs] = None,
            desired_capacity: Optional[int] = None,
            instance_types_spots: Optional[Sequence[str]] = None,
            maintenance: Optional[str] = None,
            managed_actions: Optional[BeanstalkManagedActionsArgs] = None,
            max_size: Optional[int] = None,
            min_size: Optional[int] = None,
            name: Optional[str] = None,
            product: Optional[str] = None,
            region: Optional[str] = None,
            scheduled_tasks: Optional[Sequence[BeanstalkScheduledTaskArgs]] = None) -> Beanstalk
    func GetBeanstalk(ctx *Context, name string, id IDInput, state *BeanstalkState, opts ...ResourceOption) (*Beanstalk, error)
    public static Beanstalk Get(string name, Input<string> id, BeanstalkState? state, CustomResourceOptions? opts = null)
    public static Beanstalk get(String name, Output<String> id, BeanstalkState 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:
    BeanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    BeanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    DeploymentPreferences Pulumi.SpotInst.Aws.Inputs.BeanstalkDeploymentPreferences
    Preferences when performing a roll
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    InstanceTypesSpots List<string>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    Maintenance string
    ManagedActions Pulumi.SpotInst.Aws.Inputs.BeanstalkManagedActions
    Managed Actions parameters
    MaxSize int
    The maximum number of instances the group should have at any time.
    MinSize int
    The minimum number of instances the group should have at any time.
    Name string
    The group name.
    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. Cannot be changed after the group has been created.
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.BeanstalkScheduledTask>
    BeanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    BeanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    DeploymentPreferences BeanstalkDeploymentPreferencesArgs
    Preferences when performing a roll
    DesiredCapacity int
    The desired number of instances the group should have at any time.
    InstanceTypesSpots []string
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    Maintenance string
    ManagedActions BeanstalkManagedActionsArgs
    Managed Actions parameters
    MaxSize int
    The maximum number of instances the group should have at any time.
    MinSize int
    The minimum number of instances the group should have at any time.
    Name string
    The group name.
    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. Cannot be changed after the group has been created.
    ScheduledTasks []BeanstalkScheduledTaskArgs
    beanstalkEnvironmentId String
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName String
    The name of an existing Beanstalk environment.
    deploymentPreferences BeanstalkDeploymentPreferences
    Preferences when performing a roll
    desiredCapacity Integer
    The desired number of instances the group should have at any time.
    instanceTypesSpots List<String>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maintenance String
    managedActions BeanstalkManagedActions
    Managed Actions parameters
    maxSize Integer
    The maximum number of instances the group should have at any time.
    minSize Integer
    The minimum number of instances the group should have at any time.
    name String
    The group name.
    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. Cannot be changed after the group has been created.
    scheduledTasks List<BeanstalkScheduledTask>
    beanstalkEnvironmentId string
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName string
    The name of an existing Beanstalk environment.
    deploymentPreferences BeanstalkDeploymentPreferences
    Preferences when performing a roll
    desiredCapacity number
    The desired number of instances the group should have at any time.
    instanceTypesSpots string[]
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maintenance string
    managedActions BeanstalkManagedActions
    Managed Actions parameters
    maxSize number
    The maximum number of instances the group should have at any time.
    minSize number
    The minimum number of instances the group should have at any time.
    name string
    The group name.
    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. Cannot be changed after the group has been created.
    scheduledTasks BeanstalkScheduledTask[]
    beanstalk_environment_id str
    The id of an existing Beanstalk environment.
    beanstalk_environment_name str
    The name of an existing Beanstalk environment.
    deployment_preferences BeanstalkDeploymentPreferencesArgs
    Preferences when performing a roll
    desired_capacity int
    The desired number of instances the group should have at any time.
    instance_types_spots Sequence[str]
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maintenance str
    managed_actions BeanstalkManagedActionsArgs
    Managed Actions parameters
    max_size int
    The maximum number of instances the group should have at any time.
    min_size int
    The minimum number of instances the group should have at any time.
    name str
    The group name.
    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. Cannot be changed after the group has been created.
    scheduled_tasks Sequence[BeanstalkScheduledTaskArgs]
    beanstalkEnvironmentId String
    The id of an existing Beanstalk environment.
    beanstalkEnvironmentName String
    The name of an existing Beanstalk environment.
    deploymentPreferences Property Map
    Preferences when performing a roll
    desiredCapacity Number
    The desired number of instances the group should have at any time.
    instanceTypesSpots List<String>
    One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.
    maintenance String
    managedActions Property Map
    Managed Actions parameters
    maxSize Number
    The maximum number of instances the group should have at any time.
    minSize Number
    The minimum number of instances the group should have at any time.
    name String
    The group name.
    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. Cannot be changed after the group has been created.
    scheduledTasks List<Property Map>

    Supporting Types

    BeanstalkDeploymentPreferences, BeanstalkDeploymentPreferencesArgs

    AutomaticRoll bool
    Should roll perform automatically
    BatchSizePercentage int
    Percent size of each batch
    GracePeriod int
    Amount of time to wait between batches
    Strategies List<Pulumi.SpotInst.Aws.Inputs.BeanstalkDeploymentPreferencesStrategy>
    Strategy parameters
    AutomaticRoll bool
    Should roll perform automatically
    BatchSizePercentage int
    Percent size of each batch
    GracePeriod int
    Amount of time to wait between batches
    Strategies []BeanstalkDeploymentPreferencesStrategy
    Strategy parameters
    automaticRoll Boolean
    Should roll perform automatically
    batchSizePercentage Integer
    Percent size of each batch
    gracePeriod Integer
    Amount of time to wait between batches
    strategies List<BeanstalkDeploymentPreferencesStrategy>
    Strategy parameters
    automaticRoll boolean
    Should roll perform automatically
    batchSizePercentage number
    Percent size of each batch
    gracePeriod number
    Amount of time to wait between batches
    strategies BeanstalkDeploymentPreferencesStrategy[]
    Strategy parameters
    automatic_roll bool
    Should roll perform automatically
    batch_size_percentage int
    Percent size of each batch
    grace_period int
    Amount of time to wait between batches
    strategies Sequence[BeanstalkDeploymentPreferencesStrategy]
    Strategy parameters
    automaticRoll Boolean
    Should roll perform automatically
    batchSizePercentage Number
    Percent size of each batch
    gracePeriod Number
    Amount of time to wait between batches
    strategies List<Property Map>
    Strategy parameters

    BeanstalkDeploymentPreferencesStrategy, BeanstalkDeploymentPreferencesStrategyArgs

    Action string
    Action to take
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    Action string
    Action to take
    ShouldDrainInstances bool
    Bool value if to wait to drain instance
    action String
    Action to take
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance
    action string
    Action to take
    shouldDrainInstances boolean
    Bool value if to wait to drain instance
    action str
    Action to take
    should_drain_instances bool
    Bool value if to wait to drain instance
    action String
    Action to take
    shouldDrainInstances Boolean
    Bool value if to wait to drain instance

    BeanstalkManagedActions, BeanstalkManagedActionsArgs

    platformUpdate Property Map
    Platform Update parameters

    BeanstalkManagedActionsPlatformUpdate, BeanstalkManagedActionsPlatformUpdateArgs

    PerformAt string
    Actions to perform (options: timeWindow, never)
    TimeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    UpdateLevel string
    Level to update
    PerformAt string
    Actions to perform (options: timeWindow, never)
    TimeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    UpdateLevel string
    Level to update
    performAt String
    Actions to perform (options: timeWindow, never)
    timeWindow String
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel String
    Level to update
    performAt string
    Actions to perform (options: timeWindow, never)
    timeWindow string
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel string
    Level to update
    perform_at str
    Actions to perform (options: timeWindow, never)
    time_window str
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    update_level str
    Level to update
    performAt String
    Actions to perform (options: timeWindow, never)
    timeWindow String
    Time Window for when action occurs ex. Mon:23:50-Tue:00:20
    updateLevel String
    Level to update

    BeanstalkScheduledTask, BeanstalkScheduledTaskArgs

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    The percentage of instances to add or remove.

    Usage:

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

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

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

    Package Details

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