1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. saasruntime
  5. RolloutKind
Google Cloud v9.3.0 published on Tuesday, Oct 7, 2025 by Pulumi

gcp.saasruntime.RolloutKind

Explore with Pulumi AI

gcp logo
Google Cloud v9.3.0 published on Tuesday, Oct 7, 2025 by Pulumi

    A RolloutKind is a reusable configuration resource that defines the policies, strategies, and targeting for Rollout operations. It acts as a template for repeatable Rollouts, providing guardrails and ensuring that updates are executed in a consistent manner across a fleet of Units.

    Example Usage

    Saas Runtime Rollout Kind Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const exampleSaas = new gcp.saasruntime.SaaS("example_saas", {
        saasId: "example-saas",
        location: "global",
        locations: [{
            name: "us-central1",
        }],
    });
    const exampleUnitkind = new gcp.saasruntime.UnitKind("example_unitkind", {
        location: "global",
        unitKindId: "example-unitkind",
        saas: exampleSaas.id,
    });
    const example = new gcp.saasruntime.RolloutKind("example", {
        location: "global",
        rolloutKindId: "example-rolloutkind",
        unitKind: exampleUnitkind.id,
        rolloutOrchestrationStrategy: "Google.Cloud.Simple.OneLocationAtATime",
        errorBudget: {
            allowedCount: 1,
        },
        unitFilter: "unit.labels['key1'] == 'value1'",
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    example_saas = gcp.saasruntime.SaaS("example_saas",
        saas_id="example-saas",
        location="global",
        locations=[{
            "name": "us-central1",
        }])
    example_unitkind = gcp.saasruntime.UnitKind("example_unitkind",
        location="global",
        unit_kind_id="example-unitkind",
        saas=example_saas.id)
    example = gcp.saasruntime.RolloutKind("example",
        location="global",
        rollout_kind_id="example-rolloutkind",
        unit_kind=example_unitkind.id,
        rollout_orchestration_strategy="Google.Cloud.Simple.OneLocationAtATime",
        error_budget={
            "allowed_count": 1,
        },
        unit_filter="unit.labels['key1'] == 'value1'")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/saasruntime"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleSaas, err := saasruntime.NewSaaS(ctx, "example_saas", &saasruntime.SaaSArgs{
    			SaasId:   pulumi.String("example-saas"),
    			Location: pulumi.String("global"),
    			Locations: saasruntime.SaaSLocationArray{
    				&saasruntime.SaaSLocationArgs{
    					Name: pulumi.String("us-central1"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleUnitkind, err := saasruntime.NewUnitKind(ctx, "example_unitkind", &saasruntime.UnitKindArgs{
    			Location:   pulumi.String("global"),
    			UnitKindId: pulumi.String("example-unitkind"),
    			Saas:       exampleSaas.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = saasruntime.NewRolloutKind(ctx, "example", &saasruntime.RolloutKindArgs{
    			Location:                     pulumi.String("global"),
    			RolloutKindId:                pulumi.String("example-rolloutkind"),
    			UnitKind:                     exampleUnitkind.ID(),
    			RolloutOrchestrationStrategy: pulumi.String("Google.Cloud.Simple.OneLocationAtATime"),
    			ErrorBudget: &saasruntime.RolloutKindErrorBudgetArgs{
    				AllowedCount: pulumi.Int(1),
    			},
    			UnitFilter: pulumi.String("unit.labels['key1'] == 'value1'"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleSaas = new Gcp.SaaSRuntime.SaaS("example_saas", new()
        {
            SaasId = "example-saas",
            Location = "global",
            Locations = new[]
            {
                new Gcp.SaaSRuntime.Inputs.SaaSLocationArgs
                {
                    Name = "us-central1",
                },
            },
        });
    
        var exampleUnitkind = new Gcp.SaaSRuntime.UnitKind("example_unitkind", new()
        {
            Location = "global",
            UnitKindId = "example-unitkind",
            Saas = exampleSaas.Id,
        });
    
        var example = new Gcp.SaaSRuntime.RolloutKind("example", new()
        {
            Location = "global",
            RolloutKindId = "example-rolloutkind",
            UnitKind = exampleUnitkind.Id,
            RolloutOrchestrationStrategy = "Google.Cloud.Simple.OneLocationAtATime",
            ErrorBudget = new Gcp.SaaSRuntime.Inputs.RolloutKindErrorBudgetArgs
            {
                AllowedCount = 1,
            },
            UnitFilter = "unit.labels['key1'] == 'value1'",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.saasruntime.SaaS;
    import com.pulumi.gcp.saasruntime.SaaSArgs;
    import com.pulumi.gcp.saasruntime.inputs.SaaSLocationArgs;
    import com.pulumi.gcp.saasruntime.UnitKind;
    import com.pulumi.gcp.saasruntime.UnitKindArgs;
    import com.pulumi.gcp.saasruntime.RolloutKind;
    import com.pulumi.gcp.saasruntime.RolloutKindArgs;
    import com.pulumi.gcp.saasruntime.inputs.RolloutKindErrorBudgetArgs;
    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 exampleSaas = new SaaS("exampleSaas", SaaSArgs.builder()
                .saasId("example-saas")
                .location("global")
                .locations(SaaSLocationArgs.builder()
                    .name("us-central1")
                    .build())
                .build());
    
            var exampleUnitkind = new UnitKind("exampleUnitkind", UnitKindArgs.builder()
                .location("global")
                .unitKindId("example-unitkind")
                .saas(exampleSaas.id())
                .build());
    
            var example = new RolloutKind("example", RolloutKindArgs.builder()
                .location("global")
                .rolloutKindId("example-rolloutkind")
                .unitKind(exampleUnitkind.id())
                .rolloutOrchestrationStrategy("Google.Cloud.Simple.OneLocationAtATime")
                .errorBudget(RolloutKindErrorBudgetArgs.builder()
                    .allowedCount(1)
                    .build())
                .unitFilter("unit.labels['key1'] == 'value1'")
                .build());
    
        }
    }
    
    resources:
      exampleSaas:
        type: gcp:saasruntime:SaaS
        name: example_saas
        properties:
          saasId: example-saas
          location: global
          locations:
            - name: us-central1
      exampleUnitkind:
        type: gcp:saasruntime:UnitKind
        name: example_unitkind
        properties:
          location: global
          unitKindId: example-unitkind
          saas: ${exampleSaas.id}
      example:
        type: gcp:saasruntime:RolloutKind
        properties:
          location: global
          rolloutKindId: example-rolloutkind
          unitKind: ${exampleUnitkind.id}
          rolloutOrchestrationStrategy: Google.Cloud.Simple.OneLocationAtATime
          errorBudget:
            allowedCount: 1
          unitFilter: unit.labels['key1'] == 'value1'
    

    Create RolloutKind Resource

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

    Constructor syntax

    new RolloutKind(name: string, args: RolloutKindArgs, opts?: CustomResourceOptions);
    @overload
    def RolloutKind(resource_name: str,
                    args: RolloutKindArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def RolloutKind(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    location: Optional[str] = None,
                    rollout_kind_id: Optional[str] = None,
                    unit_kind: Optional[str] = None,
                    annotations: Optional[Mapping[str, str]] = None,
                    error_budget: Optional[RolloutKindErrorBudgetArgs] = None,
                    labels: Optional[Mapping[str, str]] = None,
                    project: Optional[str] = None,
                    rollout_orchestration_strategy: Optional[str] = None,
                    unit_filter: Optional[str] = None,
                    update_unit_kind_strategy: Optional[str] = None)
    func NewRolloutKind(ctx *Context, name string, args RolloutKindArgs, opts ...ResourceOption) (*RolloutKind, error)
    public RolloutKind(string name, RolloutKindArgs args, CustomResourceOptions? opts = null)
    public RolloutKind(String name, RolloutKindArgs args)
    public RolloutKind(String name, RolloutKindArgs args, CustomResourceOptions options)
    
    type: gcp:saasruntime:RolloutKind
    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 RolloutKindArgs
    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 RolloutKindArgs
    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 RolloutKindArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RolloutKindArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RolloutKindArgs
    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 rolloutKindResource = new Gcp.SaaSRuntime.RolloutKind("rolloutKindResource", new()
    {
        Location = "string",
        RolloutKindId = "string",
        UnitKind = "string",
        Annotations = 
        {
            { "string", "string" },
        },
        ErrorBudget = new Gcp.SaaSRuntime.Inputs.RolloutKindErrorBudgetArgs
        {
            AllowedCount = 0,
            AllowedPercentage = 0,
        },
        Labels = 
        {
            { "string", "string" },
        },
        Project = "string",
        RolloutOrchestrationStrategy = "string",
        UnitFilter = "string",
        UpdateUnitKindStrategy = "string",
    });
    
    example, err := saasruntime.NewRolloutKind(ctx, "rolloutKindResource", &saasruntime.RolloutKindArgs{
    	Location:      pulumi.String("string"),
    	RolloutKindId: pulumi.String("string"),
    	UnitKind:      pulumi.String("string"),
    	Annotations: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	ErrorBudget: &saasruntime.RolloutKindErrorBudgetArgs{
    		AllowedCount:      pulumi.Int(0),
    		AllowedPercentage: pulumi.Int(0),
    	},
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Project:                      pulumi.String("string"),
    	RolloutOrchestrationStrategy: pulumi.String("string"),
    	UnitFilter:                   pulumi.String("string"),
    	UpdateUnitKindStrategy:       pulumi.String("string"),
    })
    
    var rolloutKindResource = new RolloutKind("rolloutKindResource", RolloutKindArgs.builder()
        .location("string")
        .rolloutKindId("string")
        .unitKind("string")
        .annotations(Map.of("string", "string"))
        .errorBudget(RolloutKindErrorBudgetArgs.builder()
            .allowedCount(0)
            .allowedPercentage(0)
            .build())
        .labels(Map.of("string", "string"))
        .project("string")
        .rolloutOrchestrationStrategy("string")
        .unitFilter("string")
        .updateUnitKindStrategy("string")
        .build());
    
    rollout_kind_resource = gcp.saasruntime.RolloutKind("rolloutKindResource",
        location="string",
        rollout_kind_id="string",
        unit_kind="string",
        annotations={
            "string": "string",
        },
        error_budget={
            "allowed_count": 0,
            "allowed_percentage": 0,
        },
        labels={
            "string": "string",
        },
        project="string",
        rollout_orchestration_strategy="string",
        unit_filter="string",
        update_unit_kind_strategy="string")
    
    const rolloutKindResource = new gcp.saasruntime.RolloutKind("rolloutKindResource", {
        location: "string",
        rolloutKindId: "string",
        unitKind: "string",
        annotations: {
            string: "string",
        },
        errorBudget: {
            allowedCount: 0,
            allowedPercentage: 0,
        },
        labels: {
            string: "string",
        },
        project: "string",
        rolloutOrchestrationStrategy: "string",
        unitFilter: "string",
        updateUnitKindStrategy: "string",
    });
    
    type: gcp:saasruntime:RolloutKind
    properties:
        annotations:
            string: string
        errorBudget:
            allowedCount: 0
            allowedPercentage: 0
        labels:
            string: string
        location: string
        project: string
        rolloutKindId: string
        rolloutOrchestrationStrategy: string
        unitFilter: string
        unitKind: string
        updateUnitKindStrategy: string
    

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

    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    RolloutKindId string
    The ID value for the new rollout kind.
    UnitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    Annotations Dictionary<string, string>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    ErrorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    Labels Dictionary<string, string>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    RolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    UnitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    UpdateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    RolloutKindId string
    The ID value for the new rollout kind.
    UnitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    Annotations map[string]string
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    ErrorBudget RolloutKindErrorBudgetArgs
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    Labels map[string]string
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    RolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    UnitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    UpdateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    rolloutKindId String
    The ID value for the new rollout kind.
    unitKind String
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    annotations Map<String,String>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    errorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Map<String,String>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    rolloutOrchestrationStrategy String
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    unitFilter String
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    updateUnitKindStrategy String
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    rolloutKindId string
    The ID value for the new rollout kind.
    unitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    annotations {[key: string]: string}
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    errorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels {[key: string]: string}
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    rolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    unitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    updateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    location str
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    rollout_kind_id str
    The ID value for the new rollout kind.
    unit_kind str
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    annotations Mapping[str, str]
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    error_budget RolloutKindErrorBudgetArgs
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Mapping[str, str]
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    rollout_orchestration_strategy str
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    unit_filter str
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    update_unit_kind_strategy str
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    rolloutKindId String
    The ID value for the new rollout kind.
    unitKind String
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    annotations Map<String>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    errorBudget Property Map
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Map<String>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    rolloutOrchestrationStrategy String
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    unitFilter String
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    updateUnitKindStrategy String
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.

    Outputs

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

    CreateTime string
    The timestamp when the resource was created.
    EffectiveAnnotations Dictionary<string, string>
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    UpdateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    CreateTime string
    The timestamp when the resource was created.
    EffectiveAnnotations map[string]string
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    UpdateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    createTime String
    The timestamp when the resource was created.
    effectiveAnnotations Map<String,String>
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    uid String
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    updateTime String
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    createTime string
    The timestamp when the resource was created.
    effectiveAnnotations {[key: string]: string}
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    updateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    create_time str
    The timestamp when the resource was created.
    effective_annotations Mapping[str, str]
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    uid str
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    update_time str
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    createTime String
    The timestamp when the resource was created.
    effectiveAnnotations Map<String>
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    uid String
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    updateTime String
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.

    Look up Existing RolloutKind Resource

    Get an existing RolloutKind 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?: RolloutKindState, opts?: CustomResourceOptions): RolloutKind
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            annotations: Optional[Mapping[str, str]] = None,
            create_time: Optional[str] = None,
            effective_annotations: Optional[Mapping[str, str]] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            error_budget: Optional[RolloutKindErrorBudgetArgs] = None,
            labels: Optional[Mapping[str, str]] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            project: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            rollout_kind_id: Optional[str] = None,
            rollout_orchestration_strategy: Optional[str] = None,
            uid: Optional[str] = None,
            unit_filter: Optional[str] = None,
            unit_kind: Optional[str] = None,
            update_time: Optional[str] = None,
            update_unit_kind_strategy: Optional[str] = None) -> RolloutKind
    func GetRolloutKind(ctx *Context, name string, id IDInput, state *RolloutKindState, opts ...ResourceOption) (*RolloutKind, error)
    public static RolloutKind Get(string name, Input<string> id, RolloutKindState? state, CustomResourceOptions? opts = null)
    public static RolloutKind get(String name, Output<String> id, RolloutKindState state, CustomResourceOptions options)
    resources:  _:    type: gcp:saasruntime:RolloutKind    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:
    Annotations Dictionary<string, string>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    CreateTime string
    The timestamp when the resource was created.
    EffectiveAnnotations Dictionary<string, string>
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    ErrorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    Labels Dictionary<string, string>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    Name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    RolloutKindId string
    The ID value for the new rollout kind.
    RolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    Uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    UnitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    UnitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    UpdateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    UpdateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    Annotations map[string]string
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    CreateTime string
    The timestamp when the resource was created.
    EffectiveAnnotations map[string]string
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    ErrorBudget RolloutKindErrorBudgetArgs
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    Labels map[string]string
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    Name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    RolloutKindId string
    The ID value for the new rollout kind.
    RolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    Uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    UnitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    UnitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    UpdateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    UpdateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    annotations Map<String,String>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    createTime String
    The timestamp when the resource was created.
    effectiveAnnotations Map<String,String>
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Map<String,String>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name String
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    rolloutKindId String
    The ID value for the new rollout kind.
    rolloutOrchestrationStrategy String
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    uid String
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    unitFilter String
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    unitKind String
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    updateTime String
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    updateUnitKindStrategy String
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    annotations {[key: string]: string}
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    createTime string
    The timestamp when the resource was created.
    effectiveAnnotations {[key: string]: string}
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errorBudget RolloutKindErrorBudget
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels {[key: string]: string}
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name string
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    rolloutKindId string
    The ID value for the new rollout kind.
    rolloutOrchestrationStrategy string
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    uid string
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    unitFilter string
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    unitKind string
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    updateTime string
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    updateUnitKindStrategy string
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    annotations Mapping[str, str]
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    create_time str
    The timestamp when the resource was created.
    effective_annotations Mapping[str, str]
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    error_budget RolloutKindErrorBudgetArgs
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Mapping[str, str]
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    location str
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name str
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    rollout_kind_id str
    The ID value for the new rollout kind.
    rollout_orchestration_strategy str
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    uid str
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    unit_filter str
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    unit_kind str
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    update_time str
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    update_unit_kind_strategy str
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.
    annotations Map<String>
    Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.
    createTime String
    The timestamp when the resource was created.
    effectiveAnnotations Map<String>
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errorBudget Property Map
    The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. Structure is documented below.
    labels Map<String>
    The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name String
    Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}"
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    rolloutKindId String
    The ID value for the new rollout kind.
    rolloutOrchestrationStrategy String
    The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control a rollout.

    • "Google.Cloud.Simple.AllAtOnce"
    • "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations.
    uid String
    The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4.
    unitFilter String
    CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout.
    unitKind String
    UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts.
    updateTime String
    The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value.
    updateUnitKindStrategy String
    The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. Possible values: UPDATE_UNIT_KIND_STRATEGY_ON_START UPDATE_UNIT_KIND_STRATEGY_NEVER Possible values are: UPDATE_UNIT_KIND_STRATEGY_ON_START, UPDATE_UNIT_KIND_STRATEGY_NEVER.

    Supporting Types

    RolloutKindErrorBudget, RolloutKindErrorBudgetArgs

    AllowedCount int
    The maximum number of failed units allowed in a location without pausing the rollout.
    AllowedPercentage int
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.
    AllowedCount int
    The maximum number of failed units allowed in a location without pausing the rollout.
    AllowedPercentage int
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.
    allowedCount Integer
    The maximum number of failed units allowed in a location without pausing the rollout.
    allowedPercentage Integer
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.
    allowedCount number
    The maximum number of failed units allowed in a location without pausing the rollout.
    allowedPercentage number
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.
    allowed_count int
    The maximum number of failed units allowed in a location without pausing the rollout.
    allowed_percentage int
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.
    allowedCount Number
    The maximum number of failed units allowed in a location without pausing the rollout.
    allowedPercentage Number
    The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout.

    Import

    RolloutKind can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/rolloutKinds/{{rollout_kind_id}}

    • {{project}}/{{location}}/{{rollout_kind_id}}

    • {{location}}/{{rollout_kind_id}}

    When using the pulumi import command, RolloutKind can be imported using one of the formats above. For example:

    $ pulumi import gcp:saasruntime/rolloutKind:RolloutKind default projects/{{project}}/locations/{{location}}/rolloutKinds/{{rollout_kind_id}}
    
    $ pulumi import gcp:saasruntime/rolloutKind:RolloutKind default {{project}}/{{location}}/{{rollout_kind_id}}
    
    $ pulumi import gcp:saasruntime/rolloutKind:RolloutKind default {{location}}/{{rollout_kind_id}}
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Google Cloud (GCP) Classic pulumi/pulumi-gcp
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the google-beta Terraform Provider.
    gcp logo
    Google Cloud v9.3.0 published on Tuesday, Oct 7, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate