1. Packages
  2. Harness Provider
  3. API Docs
  4. autostopping
  5. RuleScaleGroup
Harness v0.9.1 published on Thursday, Nov 13, 2025 by Pulumi
harness logo
Harness v0.9.1 published on Thursday, Nov 13, 2025 by Pulumi

    Resource for creating a Harness AutoStopping rule for Scaling Groups.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as harness from "@pulumi/harness";
    
    const test = new harness.autostopping.RuleScaleGroup("test", {
        name: "test",
        cloudConnectorId: "test-connector",
        idleTimeMins: 5,
        customDomains: ["app.example.com"],
        scaleGroup: {
            id: "asg-arn",
            name: "asg-name",
            region: "us-east-1",
            desired: 1,
            min: 1,
            max: 2,
            onDemand: 1,
        },
        https: [{
            proxyId: "lb-id",
            routings: [{
                sourceProtocol: "http",
                sourcePort: 80,
                action: "forward",
                targetProtocol: "http",
                targetPort: 80,
            }],
            healths: [{
                protocol: "http",
                port: 80,
                path: "/",
                timeout: 30,
                statusCodeFrom: 200,
                statusCodeTo: 299,
            }],
        }],
    });
    
    import pulumi
    import pulumi_harness as harness
    
    test = harness.autostopping.RuleScaleGroup("test",
        name="test",
        cloud_connector_id="test-connector",
        idle_time_mins=5,
        custom_domains=["app.example.com"],
        scale_group={
            "id": "asg-arn",
            "name": "asg-name",
            "region": "us-east-1",
            "desired": 1,
            "min": 1,
            "max": 2,
            "on_demand": 1,
        },
        https=[{
            "proxy_id": "lb-id",
            "routings": [{
                "source_protocol": "http",
                "source_port": 80,
                "action": "forward",
                "target_protocol": "http",
                "target_port": 80,
            }],
            "healths": [{
                "protocol": "http",
                "port": 80,
                "path": "/",
                "timeout": 30,
                "status_code_from": 200,
                "status_code_to": 299,
            }],
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-harness/sdk/go/harness/autostopping"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := autostopping.NewRuleScaleGroup(ctx, "test", &autostopping.RuleScaleGroupArgs{
    			Name:             pulumi.String("test"),
    			CloudConnectorId: pulumi.String("test-connector"),
    			IdleTimeMins:     pulumi.Int(5),
    			CustomDomains: pulumi.StringArray{
    				pulumi.String("app.example.com"),
    			},
    			ScaleGroup: &autostopping.RuleScaleGroupScaleGroupArgs{
    				Id:       pulumi.String("asg-arn"),
    				Name:     pulumi.String("asg-name"),
    				Region:   pulumi.String("us-east-1"),
    				Desired:  pulumi.Int(1),
    				Min:      pulumi.Int(1),
    				Max:      pulumi.Int(2),
    				OnDemand: pulumi.Int(1),
    			},
    			Https: autostopping.RuleScaleGroupHttpArray{
    				&autostopping.RuleScaleGroupHttpArgs{
    					ProxyId: pulumi.String("lb-id"),
    					Routings: autostopping.RuleScaleGroupHttpRoutingArray{
    						&autostopping.RuleScaleGroupHttpRoutingArgs{
    							SourceProtocol: pulumi.String("http"),
    							SourcePort:     pulumi.Int(80),
    							Action:         pulumi.String("forward"),
    							TargetProtocol: pulumi.String("http"),
    							TargetPort:     pulumi.Int(80),
    						},
    					},
    					Healths: autostopping.RuleScaleGroupHttpHealthArray{
    						&autostopping.RuleScaleGroupHttpHealthArgs{
    							Protocol:       pulumi.String("http"),
    							Port:           pulumi.Int(80),
    							Path:           pulumi.String("/"),
    							Timeout:        pulumi.Int(30),
    							StatusCodeFrom: pulumi.Int(200),
    							StatusCodeTo:   pulumi.Int(299),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Harness = Pulumi.Harness;
    
    return await Deployment.RunAsync(() => 
    {
        var test = new Harness.Autostopping.RuleScaleGroup("test", new()
        {
            Name = "test",
            CloudConnectorId = "test-connector",
            IdleTimeMins = 5,
            CustomDomains = new[]
            {
                "app.example.com",
            },
            ScaleGroup = new Harness.Autostopping.Inputs.RuleScaleGroupScaleGroupArgs
            {
                Id = "asg-arn",
                Name = "asg-name",
                Region = "us-east-1",
                Desired = 1,
                Min = 1,
                Max = 2,
                OnDemand = 1,
            },
            Https = new[]
            {
                new Harness.Autostopping.Inputs.RuleScaleGroupHttpArgs
                {
                    ProxyId = "lb-id",
                    Routings = new[]
                    {
                        new Harness.Autostopping.Inputs.RuleScaleGroupHttpRoutingArgs
                        {
                            SourceProtocol = "http",
                            SourcePort = 80,
                            Action = "forward",
                            TargetProtocol = "http",
                            TargetPort = 80,
                        },
                    },
                    Healths = new[]
                    {
                        new Harness.Autostopping.Inputs.RuleScaleGroupHttpHealthArgs
                        {
                            Protocol = "http",
                            Port = 80,
                            Path = "/",
                            Timeout = 30,
                            StatusCodeFrom = 200,
                            StatusCodeTo = 299,
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.harness.autostopping.RuleScaleGroup;
    import com.pulumi.harness.autostopping.RuleScaleGroupArgs;
    import com.pulumi.harness.autostopping.inputs.RuleScaleGroupScaleGroupArgs;
    import com.pulumi.harness.autostopping.inputs.RuleScaleGroupHttpArgs;
    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 test = new RuleScaleGroup("test", RuleScaleGroupArgs.builder()
                .name("test")
                .cloudConnectorId("test-connector")
                .idleTimeMins(5)
                .customDomains("app.example.com")
                .scaleGroup(RuleScaleGroupScaleGroupArgs.builder()
                    .id("asg-arn")
                    .name("asg-name")
                    .region("us-east-1")
                    .desired(1)
                    .min(1)
                    .max(2)
                    .onDemand(1)
                    .build())
                .https(RuleScaleGroupHttpArgs.builder()
                    .proxyId("lb-id")
                    .routings(RuleScaleGroupHttpRoutingArgs.builder()
                        .sourceProtocol("http")
                        .sourcePort(80)
                        .action("forward")
                        .targetProtocol("http")
                        .targetPort(80)
                        .build())
                    .healths(RuleScaleGroupHttpHealthArgs.builder()
                        .protocol("http")
                        .port(80)
                        .path("/")
                        .timeout(30)
                        .statusCodeFrom(200)
                        .statusCodeTo(299)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      test:
        type: harness:autostopping:RuleScaleGroup
        properties:
          name: test
          cloudConnectorId: test-connector
          idleTimeMins: 5
          customDomains:
            - app.example.com
          scaleGroup:
            id: asg-arn
            name: asg-name
            region: us-east-1
            desired: 1
            min: 1
            max: 2
            onDemand: 1
          https:
            - proxyId: lb-id
              routings:
                - sourceProtocol: http
                  sourcePort: 80
                  action: forward
                  targetProtocol: http
                  targetPort: 80
              healths:
                - protocol: http
                  port: 80
                  path: /
                  timeout: 30
                  statusCodeFrom: 200
                  statusCodeTo: 299
    

    Create RuleScaleGroup Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new RuleScaleGroup(name: string, args: RuleScaleGroupArgs, opts?: CustomResourceOptions);
    @overload
    def RuleScaleGroup(resource_name: str,
                       args: RuleScaleGroupArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def RuleScaleGroup(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       cloud_connector_id: Optional[str] = None,
                       scale_group: Optional[RuleScaleGroupScaleGroupArgs] = None,
                       custom_domains: Optional[Sequence[str]] = None,
                       depends: Optional[Sequence[RuleScaleGroupDependArgs]] = None,
                       dry_run: Optional[bool] = None,
                       https: Optional[Sequence[RuleScaleGroupHttpArgs]] = None,
                       idle_time_mins: Optional[int] = None,
                       name: Optional[str] = None)
    func NewRuleScaleGroup(ctx *Context, name string, args RuleScaleGroupArgs, opts ...ResourceOption) (*RuleScaleGroup, error)
    public RuleScaleGroup(string name, RuleScaleGroupArgs args, CustomResourceOptions? opts = null)
    public RuleScaleGroup(String name, RuleScaleGroupArgs args)
    public RuleScaleGroup(String name, RuleScaleGroupArgs args, CustomResourceOptions options)
    
    type: harness:autostopping:RuleScaleGroup
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RuleScaleGroupArgs
    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 RuleScaleGroupArgs
    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 RuleScaleGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RuleScaleGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RuleScaleGroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var ruleScaleGroupResource = new Harness.Autostopping.RuleScaleGroup("ruleScaleGroupResource", new()
    {
        CloudConnectorId = "string",
        ScaleGroup = new Harness.Autostopping.Inputs.RuleScaleGroupScaleGroupArgs
        {
            Desired = 0,
            Id = "string",
            Max = 0,
            Min = 0,
            Name = "string",
            OnDemand = 0,
            Region = "string",
            Zone = "string",
        },
        CustomDomains = new[]
        {
            "string",
        },
        Depends = new[]
        {
            new Harness.Autostopping.Inputs.RuleScaleGroupDependArgs
            {
                RuleId = 0,
                DelayInSec = 0,
            },
        },
        DryRun = false,
        Https = new[]
        {
            new Harness.Autostopping.Inputs.RuleScaleGroupHttpArgs
            {
                ProxyId = "string",
                Healths = new[]
                {
                    new Harness.Autostopping.Inputs.RuleScaleGroupHttpHealthArgs
                    {
                        Port = 0,
                        Protocol = "string",
                        Path = "string",
                        StatusCodeFrom = 0,
                        StatusCodeTo = 0,
                        Timeout = 0,
                    },
                },
                Routings = new[]
                {
                    new Harness.Autostopping.Inputs.RuleScaleGroupHttpRoutingArgs
                    {
                        SourceProtocol = "string",
                        TargetProtocol = "string",
                        Action = "string",
                        SourcePort = 0,
                        TargetPort = 0,
                    },
                },
            },
        },
        IdleTimeMins = 0,
        Name = "string",
    });
    
    example, err := autostopping.NewRuleScaleGroup(ctx, "ruleScaleGroupResource", &autostopping.RuleScaleGroupArgs{
    	CloudConnectorId: pulumi.String("string"),
    	ScaleGroup: &autostopping.RuleScaleGroupScaleGroupArgs{
    		Desired:  pulumi.Int(0),
    		Id:       pulumi.String("string"),
    		Max:      pulumi.Int(0),
    		Min:      pulumi.Int(0),
    		Name:     pulumi.String("string"),
    		OnDemand: pulumi.Int(0),
    		Region:   pulumi.String("string"),
    		Zone:     pulumi.String("string"),
    	},
    	CustomDomains: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Depends: autostopping.RuleScaleGroupDependArray{
    		&autostopping.RuleScaleGroupDependArgs{
    			RuleId:     pulumi.Int(0),
    			DelayInSec: pulumi.Int(0),
    		},
    	},
    	DryRun: pulumi.Bool(false),
    	Https: autostopping.RuleScaleGroupHttpArray{
    		&autostopping.RuleScaleGroupHttpArgs{
    			ProxyId: pulumi.String("string"),
    			Healths: autostopping.RuleScaleGroupHttpHealthArray{
    				&autostopping.RuleScaleGroupHttpHealthArgs{
    					Port:           pulumi.Int(0),
    					Protocol:       pulumi.String("string"),
    					Path:           pulumi.String("string"),
    					StatusCodeFrom: pulumi.Int(0),
    					StatusCodeTo:   pulumi.Int(0),
    					Timeout:        pulumi.Int(0),
    				},
    			},
    			Routings: autostopping.RuleScaleGroupHttpRoutingArray{
    				&autostopping.RuleScaleGroupHttpRoutingArgs{
    					SourceProtocol: pulumi.String("string"),
    					TargetProtocol: pulumi.String("string"),
    					Action:         pulumi.String("string"),
    					SourcePort:     pulumi.Int(0),
    					TargetPort:     pulumi.Int(0),
    				},
    			},
    		},
    	},
    	IdleTimeMins: pulumi.Int(0),
    	Name:         pulumi.String("string"),
    })
    
    var ruleScaleGroupResource = new RuleScaleGroup("ruleScaleGroupResource", RuleScaleGroupArgs.builder()
        .cloudConnectorId("string")
        .scaleGroup(RuleScaleGroupScaleGroupArgs.builder()
            .desired(0)
            .id("string")
            .max(0)
            .min(0)
            .name("string")
            .onDemand(0)
            .region("string")
            .zone("string")
            .build())
        .customDomains("string")
        .depends(RuleScaleGroupDependArgs.builder()
            .ruleId(0)
            .delayInSec(0)
            .build())
        .dryRun(false)
        .https(RuleScaleGroupHttpArgs.builder()
            .proxyId("string")
            .healths(RuleScaleGroupHttpHealthArgs.builder()
                .port(0)
                .protocol("string")
                .path("string")
                .statusCodeFrom(0)
                .statusCodeTo(0)
                .timeout(0)
                .build())
            .routings(RuleScaleGroupHttpRoutingArgs.builder()
                .sourceProtocol("string")
                .targetProtocol("string")
                .action("string")
                .sourcePort(0)
                .targetPort(0)
                .build())
            .build())
        .idleTimeMins(0)
        .name("string")
        .build());
    
    rule_scale_group_resource = harness.autostopping.RuleScaleGroup("ruleScaleGroupResource",
        cloud_connector_id="string",
        scale_group={
            "desired": 0,
            "id": "string",
            "max": 0,
            "min": 0,
            "name": "string",
            "on_demand": 0,
            "region": "string",
            "zone": "string",
        },
        custom_domains=["string"],
        depends=[{
            "rule_id": 0,
            "delay_in_sec": 0,
        }],
        dry_run=False,
        https=[{
            "proxy_id": "string",
            "healths": [{
                "port": 0,
                "protocol": "string",
                "path": "string",
                "status_code_from": 0,
                "status_code_to": 0,
                "timeout": 0,
            }],
            "routings": [{
                "source_protocol": "string",
                "target_protocol": "string",
                "action": "string",
                "source_port": 0,
                "target_port": 0,
            }],
        }],
        idle_time_mins=0,
        name="string")
    
    const ruleScaleGroupResource = new harness.autostopping.RuleScaleGroup("ruleScaleGroupResource", {
        cloudConnectorId: "string",
        scaleGroup: {
            desired: 0,
            id: "string",
            max: 0,
            min: 0,
            name: "string",
            onDemand: 0,
            region: "string",
            zone: "string",
        },
        customDomains: ["string"],
        depends: [{
            ruleId: 0,
            delayInSec: 0,
        }],
        dryRun: false,
        https: [{
            proxyId: "string",
            healths: [{
                port: 0,
                protocol: "string",
                path: "string",
                statusCodeFrom: 0,
                statusCodeTo: 0,
                timeout: 0,
            }],
            routings: [{
                sourceProtocol: "string",
                targetProtocol: "string",
                action: "string",
                sourcePort: 0,
                targetPort: 0,
            }],
        }],
        idleTimeMins: 0,
        name: "string",
    });
    
    type: harness:autostopping:RuleScaleGroup
    properties:
        cloudConnectorId: string
        customDomains:
            - string
        depends:
            - delayInSec: 0
              ruleId: 0
        dryRun: false
        https:
            - healths:
                - path: string
                  port: 0
                  protocol: string
                  statusCodeFrom: 0
                  statusCodeTo: 0
                  timeout: 0
              proxyId: string
              routings:
                - action: string
                  sourcePort: 0
                  sourceProtocol: string
                  targetPort: 0
                  targetProtocol: string
        idleTimeMins: 0
        name: string
        scaleGroup:
            desired: 0
            id: string
            max: 0
            min: 0
            name: string
            onDemand: 0
            region: string
            zone: string
    

    RuleScaleGroup Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The RuleScaleGroup resource accepts the following input properties:

    CloudConnectorId string
    Id of the cloud connector
    ScaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    CustomDomains List<string>
    Custom URLs used to access the instances
    Depends List<RuleScaleGroupDepend>
    Dependent rules
    DryRun bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    Https List<RuleScaleGroupHttp>
    Http routing configuration
    IdleTimeMins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    Name string
    Name of the rule
    CloudConnectorId string
    Id of the cloud connector
    ScaleGroup RuleScaleGroupScaleGroupArgs
    Scaling Group configuration
    CustomDomains []string
    Custom URLs used to access the instances
    Depends []RuleScaleGroupDependArgs
    Dependent rules
    DryRun bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    Https []RuleScaleGroupHttpArgs
    Http routing configuration
    IdleTimeMins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    Name string
    Name of the rule
    cloudConnectorId String
    Id of the cloud connector
    scaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    customDomains List<String>
    Custom URLs used to access the instances
    depends List<RuleScaleGroupDepend>
    Dependent rules
    dryRun Boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https List<RuleScaleGroupHttp>
    Http routing configuration
    idleTimeMins Integer
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name String
    Name of the rule
    cloudConnectorId string
    Id of the cloud connector
    scaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    customDomains string[]
    Custom URLs used to access the instances
    depends RuleScaleGroupDepend[]
    Dependent rules
    dryRun boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https RuleScaleGroupHttp[]
    Http routing configuration
    idleTimeMins number
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name string
    Name of the rule
    cloud_connector_id str
    Id of the cloud connector
    scale_group RuleScaleGroupScaleGroupArgs
    Scaling Group configuration
    custom_domains Sequence[str]
    Custom URLs used to access the instances
    depends Sequence[RuleScaleGroupDependArgs]
    Dependent rules
    dry_run bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https Sequence[RuleScaleGroupHttpArgs]
    Http routing configuration
    idle_time_mins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name str
    Name of the rule
    cloudConnectorId String
    Id of the cloud connector
    scaleGroup Property Map
    Scaling Group configuration
    customDomains List<String>
    Custom URLs used to access the instances
    depends List<Property Map>
    Dependent rules
    dryRun Boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https List<Property Map>
    Http routing configuration
    idleTimeMins Number
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name String
    Name of the rule

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Identifier double
    Unique identifier of the resource
    Id string
    The provider-assigned unique ID for this managed resource.
    Identifier float64
    Unique identifier of the resource
    id String
    The provider-assigned unique ID for this managed resource.
    identifier Double
    Unique identifier of the resource
    id string
    The provider-assigned unique ID for this managed resource.
    identifier number
    Unique identifier of the resource
    id str
    The provider-assigned unique ID for this managed resource.
    identifier float
    Unique identifier of the resource
    id String
    The provider-assigned unique ID for this managed resource.
    identifier Number
    Unique identifier of the resource

    Look up Existing RuleScaleGroup Resource

    Get an existing RuleScaleGroup 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?: RuleScaleGroupState, opts?: CustomResourceOptions): RuleScaleGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cloud_connector_id: Optional[str] = None,
            custom_domains: Optional[Sequence[str]] = None,
            depends: Optional[Sequence[RuleScaleGroupDependArgs]] = None,
            dry_run: Optional[bool] = None,
            https: Optional[Sequence[RuleScaleGroupHttpArgs]] = None,
            identifier: Optional[float] = None,
            idle_time_mins: Optional[int] = None,
            name: Optional[str] = None,
            scale_group: Optional[RuleScaleGroupScaleGroupArgs] = None) -> RuleScaleGroup
    func GetRuleScaleGroup(ctx *Context, name string, id IDInput, state *RuleScaleGroupState, opts ...ResourceOption) (*RuleScaleGroup, error)
    public static RuleScaleGroup Get(string name, Input<string> id, RuleScaleGroupState? state, CustomResourceOptions? opts = null)
    public static RuleScaleGroup get(String name, Output<String> id, RuleScaleGroupState state, CustomResourceOptions options)
    resources:  _:    type: harness:autostopping:RuleScaleGroup    get:      id: ${id}
    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:
    CloudConnectorId string
    Id of the cloud connector
    CustomDomains List<string>
    Custom URLs used to access the instances
    Depends List<RuleScaleGroupDepend>
    Dependent rules
    DryRun bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    Https List<RuleScaleGroupHttp>
    Http routing configuration
    Identifier double
    Unique identifier of the resource
    IdleTimeMins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    Name string
    Name of the rule
    ScaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    CloudConnectorId string
    Id of the cloud connector
    CustomDomains []string
    Custom URLs used to access the instances
    Depends []RuleScaleGroupDependArgs
    Dependent rules
    DryRun bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    Https []RuleScaleGroupHttpArgs
    Http routing configuration
    Identifier float64
    Unique identifier of the resource
    IdleTimeMins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    Name string
    Name of the rule
    ScaleGroup RuleScaleGroupScaleGroupArgs
    Scaling Group configuration
    cloudConnectorId String
    Id of the cloud connector
    customDomains List<String>
    Custom URLs used to access the instances
    depends List<RuleScaleGroupDepend>
    Dependent rules
    dryRun Boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https List<RuleScaleGroupHttp>
    Http routing configuration
    identifier Double
    Unique identifier of the resource
    idleTimeMins Integer
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name String
    Name of the rule
    scaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    cloudConnectorId string
    Id of the cloud connector
    customDomains string[]
    Custom URLs used to access the instances
    depends RuleScaleGroupDepend[]
    Dependent rules
    dryRun boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https RuleScaleGroupHttp[]
    Http routing configuration
    identifier number
    Unique identifier of the resource
    idleTimeMins number
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name string
    Name of the rule
    scaleGroup RuleScaleGroupScaleGroup
    Scaling Group configuration
    cloud_connector_id str
    Id of the cloud connector
    custom_domains Sequence[str]
    Custom URLs used to access the instances
    depends Sequence[RuleScaleGroupDependArgs]
    Dependent rules
    dry_run bool
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https Sequence[RuleScaleGroupHttpArgs]
    Http routing configuration
    identifier float
    Unique identifier of the resource
    idle_time_mins int
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name str
    Name of the rule
    scale_group RuleScaleGroupScaleGroupArgs
    Scaling Group configuration
    cloudConnectorId String
    Id of the cloud connector
    customDomains List<String>
    Custom URLs used to access the instances
    depends List<Property Map>
    Dependent rules
    dryRun Boolean
    Boolean that indicates whether the AutoStopping rule should be created in DryRun mode
    https List<Property Map>
    Http routing configuration
    identifier Number
    Unique identifier of the resource
    idleTimeMins Number
    Idle time in minutes. This is the time that the AutoStopping rule waits before stopping the idle instances.
    name String
    Name of the rule
    scaleGroup Property Map
    Scaling Group configuration

    Supporting Types

    RuleScaleGroupDepend, RuleScaleGroupDependArgs

    RuleId int
    Rule id of the dependent rule
    DelayInSec int
    Number of seconds the rule should wait after warming up the dependent rule
    RuleId int
    Rule id of the dependent rule
    DelayInSec int
    Number of seconds the rule should wait after warming up the dependent rule
    ruleId Integer
    Rule id of the dependent rule
    delayInSec Integer
    Number of seconds the rule should wait after warming up the dependent rule
    ruleId number
    Rule id of the dependent rule
    delayInSec number
    Number of seconds the rule should wait after warming up the dependent rule
    rule_id int
    Rule id of the dependent rule
    delay_in_sec int
    Number of seconds the rule should wait after warming up the dependent rule
    ruleId Number
    Rule id of the dependent rule
    delayInSec Number
    Number of seconds the rule should wait after warming up the dependent rule

    RuleScaleGroupHttp, RuleScaleGroupHttpArgs

    ProxyId string
    Id of the proxy
    Healths List<RuleScaleGroupHttpHealth>
    Health Check Details
    Routings List<RuleScaleGroupHttpRouting>
    Routing configuration used to access the scaling group
    ProxyId string
    Id of the proxy
    Healths []RuleScaleGroupHttpHealth
    Health Check Details
    Routings []RuleScaleGroupHttpRouting
    Routing configuration used to access the scaling group
    proxyId String
    Id of the proxy
    healths List<RuleScaleGroupHttpHealth>
    Health Check Details
    routings List<RuleScaleGroupHttpRouting>
    Routing configuration used to access the scaling group
    proxyId string
    Id of the proxy
    healths RuleScaleGroupHttpHealth[]
    Health Check Details
    routings RuleScaleGroupHttpRouting[]
    Routing configuration used to access the scaling group
    proxy_id str
    Id of the proxy
    healths Sequence[RuleScaleGroupHttpHealth]
    Health Check Details
    routings Sequence[RuleScaleGroupHttpRouting]
    Routing configuration used to access the scaling group
    proxyId String
    Id of the proxy
    healths List<Property Map>
    Health Check Details
    routings List<Property Map>
    Routing configuration used to access the scaling group

    RuleScaleGroupHttpHealth, RuleScaleGroupHttpHealthArgs

    Port int
    Health check port on the VM
    Protocol string
    Protocol can be http or https
    Path string
    API path to use for health check
    StatusCodeFrom int
    Lower limit for acceptable status code
    StatusCodeTo int
    Upper limit for acceptable status code
    Timeout int
    Health check timeout
    Port int
    Health check port on the VM
    Protocol string
    Protocol can be http or https
    Path string
    API path to use for health check
    StatusCodeFrom int
    Lower limit for acceptable status code
    StatusCodeTo int
    Upper limit for acceptable status code
    Timeout int
    Health check timeout
    port Integer
    Health check port on the VM
    protocol String
    Protocol can be http or https
    path String
    API path to use for health check
    statusCodeFrom Integer
    Lower limit for acceptable status code
    statusCodeTo Integer
    Upper limit for acceptable status code
    timeout Integer
    Health check timeout
    port number
    Health check port on the VM
    protocol string
    Protocol can be http or https
    path string
    API path to use for health check
    statusCodeFrom number
    Lower limit for acceptable status code
    statusCodeTo number
    Upper limit for acceptable status code
    timeout number
    Health check timeout
    port int
    Health check port on the VM
    protocol str
    Protocol can be http or https
    path str
    API path to use for health check
    status_code_from int
    Lower limit for acceptable status code
    status_code_to int
    Upper limit for acceptable status code
    timeout int
    Health check timeout
    port Number
    Health check port on the VM
    protocol String
    Protocol can be http or https
    path String
    API path to use for health check
    statusCodeFrom Number
    Lower limit for acceptable status code
    statusCodeTo Number
    Upper limit for acceptable status code
    timeout Number
    Health check timeout

    RuleScaleGroupHttpRouting, RuleScaleGroupHttpRoutingArgs

    SourceProtocol string
    Source protocol of the proxy can be http or https
    TargetProtocol string
    Target protocol of the instance can be http or https
    Action string
    Organization Identifier for the Entity
    SourcePort int
    Port on the proxy
    TargetPort int
    Port on the VM
    SourceProtocol string
    Source protocol of the proxy can be http or https
    TargetProtocol string
    Target protocol of the instance can be http or https
    Action string
    Organization Identifier for the Entity
    SourcePort int
    Port on the proxy
    TargetPort int
    Port on the VM
    sourceProtocol String
    Source protocol of the proxy can be http or https
    targetProtocol String
    Target protocol of the instance can be http or https
    action String
    Organization Identifier for the Entity
    sourcePort Integer
    Port on the proxy
    targetPort Integer
    Port on the VM
    sourceProtocol string
    Source protocol of the proxy can be http or https
    targetProtocol string
    Target protocol of the instance can be http or https
    action string
    Organization Identifier for the Entity
    sourcePort number
    Port on the proxy
    targetPort number
    Port on the VM
    source_protocol str
    Source protocol of the proxy can be http or https
    target_protocol str
    Target protocol of the instance can be http or https
    action str
    Organization Identifier for the Entity
    source_port int
    Port on the proxy
    target_port int
    Port on the VM
    sourceProtocol String
    Source protocol of the proxy can be http or https
    targetProtocol String
    Target protocol of the instance can be http or https
    action String
    Organization Identifier for the Entity
    sourcePort Number
    Port on the proxy
    targetPort Number
    Port on the VM

    RuleScaleGroupScaleGroup, RuleScaleGroupScaleGroupArgs

    Desired int
    Desired capacity of the Scaling Group
    Id string
    ID of the Scaling Group
    Max int
    Maximum capacity of the Scaling Group
    Min int
    Minimum capacity of the Scaling Group
    Name string
    Name of the Scaling Group
    OnDemand int
    On-demand capacity of the Scaling Group
    Region string
    Region of the Scaling Group
    Zone string
    Zone of the Scaling Group. Needed for GCP only
    Desired int
    Desired capacity of the Scaling Group
    Id string
    ID of the Scaling Group
    Max int
    Maximum capacity of the Scaling Group
    Min int
    Minimum capacity of the Scaling Group
    Name string
    Name of the Scaling Group
    OnDemand int
    On-demand capacity of the Scaling Group
    Region string
    Region of the Scaling Group
    Zone string
    Zone of the Scaling Group. Needed for GCP only
    desired Integer
    Desired capacity of the Scaling Group
    id String
    ID of the Scaling Group
    max Integer
    Maximum capacity of the Scaling Group
    min Integer
    Minimum capacity of the Scaling Group
    name String
    Name of the Scaling Group
    onDemand Integer
    On-demand capacity of the Scaling Group
    region String
    Region of the Scaling Group
    zone String
    Zone of the Scaling Group. Needed for GCP only
    desired number
    Desired capacity of the Scaling Group
    id string
    ID of the Scaling Group
    max number
    Maximum capacity of the Scaling Group
    min number
    Minimum capacity of the Scaling Group
    name string
    Name of the Scaling Group
    onDemand number
    On-demand capacity of the Scaling Group
    region string
    Region of the Scaling Group
    zone string
    Zone of the Scaling Group. Needed for GCP only
    desired int
    Desired capacity of the Scaling Group
    id str
    ID of the Scaling Group
    max int
    Maximum capacity of the Scaling Group
    min int
    Minimum capacity of the Scaling Group
    name str
    Name of the Scaling Group
    on_demand int
    On-demand capacity of the Scaling Group
    region str
    Region of the Scaling Group
    zone str
    Zone of the Scaling Group. Needed for GCP only
    desired Number
    Desired capacity of the Scaling Group
    id String
    ID of the Scaling Group
    max Number
    Maximum capacity of the Scaling Group
    min Number
    Minimum capacity of the Scaling Group
    name String
    Name of the Scaling Group
    onDemand Number
    On-demand capacity of the Scaling Group
    region String
    Region of the Scaling Group
    zone String
    Zone of the Scaling Group. Needed for GCP only

    Package Details

    Repository
    harness pulumi/pulumi-harness
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the harness Terraform Provider.
    harness logo
    Harness v0.9.1 published on Thursday, Nov 13, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate