1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. cloudrunv2
  5. WorkerPool
Google Cloud v8.34.0 published on Wednesday, Jun 11, 2025 by Pulumi

gcp.cloudrunv2.WorkerPool

Explore with Pulumi AI

gcp logo
Google Cloud v8.34.0 published on Wednesday, Jun 11, 2025 by Pulumi

    WorkerPool acts as a top-level container that manages a set of configurations and revision templates which implement a pull-based workload. WorkerPool exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership.

    To get more information about WorkerPool, see:

    Example Usage

    Cloudrunv2 Worker Pool Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    					},
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
    

    Cloudrunv2 Worker Pool Limits

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                resources: {
                    limits: {
                        cpu: "2",
                        memory: "1024Mi",
                    },
                },
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                "resources": {
                    "limits": {
                        "cpu": "2",
                        "memory": "1024Mi",
                    },
                },
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						Resources: &cloudrunv2.WorkerPoolTemplateContainerResourcesArgs{
    							Limits: pulumi.StringMap{
    								"cpu":    pulumi.String("2"),
    								"memory": pulumi.String("1024Mi"),
    							},
    						},
    					},
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        Resources = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerResourcesArgs
                        {
                            Limits = 
                            {
                                { "cpu", "2" },
                                { "memory", "1024Mi" },
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .resources(WorkerPoolTemplateContainerResourcesArgs.builder()
                            .limits(Map.ofEntries(
                                Map.entry("cpu", "2"),
                                Map.entry("memory", "1024Mi")
                            ))
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
                resources:
                  limits:
                    cpu: '2'
                    memory: 1024Mi
    

    Cloudrunv2 Worker Pool Sql

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const secret = new gcp.secretmanager.Secret("secret", {
        secretId: "secret-1",
        replication: {
            auto: {},
        },
    });
    const secret_version_data = new gcp.secretmanager.SecretVersion("secret-version-data", {
        secret: secret.name,
        secretData: "secret-data",
    });
    const instance = new gcp.sql.DatabaseInstance("instance", {
        name: "cloudrun-sql",
        region: "us-central1",
        databaseVersion: "MYSQL_5_7",
        settings: {
            tier: "db-f1-micro",
        },
        deletionProtection: true,
    });
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            volumes: [{
                name: "cloudsql",
                cloudSqlInstance: {
                    instances: [instance.connectionName],
                },
            }],
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                envs: [
                    {
                        name: "FOO",
                        value: "bar",
                    },
                    {
                        name: "SECRET_ENV_VAR",
                        valueSource: {
                            secretKeyRef: {
                                secret: secret.secretId,
                                version: "1",
                            },
                        },
                    },
                ],
                volumeMounts: [{
                    name: "cloudsql",
                    mountPath: "/cloudsql",
                }],
            }],
        },
        instanceSplits: [{
            type: "INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST",
            percent: 100,
        }],
    }, {
        dependsOn: [secret_version_data],
    });
    const project = gcp.organizations.getProject({});
    const secret_access = new gcp.secretmanager.SecretIamMember("secret-access", {
        secretId: secret.id,
        role: "roles/secretmanager.secretAccessor",
        member: project.then(project => `serviceAccount:${project.number}-compute@developer.gserviceaccount.com`),
    }, {
        dependsOn: [secret],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    secret = gcp.secretmanager.Secret("secret",
        secret_id="secret-1",
        replication={
            "auto": {},
        })
    secret_version_data = gcp.secretmanager.SecretVersion("secret-version-data",
        secret=secret.name,
        secret_data="secret-data")
    instance = gcp.sql.DatabaseInstance("instance",
        name="cloudrun-sql",
        region="us-central1",
        database_version="MYSQL_5_7",
        settings={
            "tier": "db-f1-micro",
        },
        deletion_protection=True)
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "volumes": [{
                "name": "cloudsql",
                "cloud_sql_instance": {
                    "instances": [instance.connection_name],
                },
            }],
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                "envs": [
                    {
                        "name": "FOO",
                        "value": "bar",
                    },
                    {
                        "name": "SECRET_ENV_VAR",
                        "value_source": {
                            "secret_key_ref": {
                                "secret": secret.secret_id,
                                "version": "1",
                            },
                        },
                    },
                ],
                "volume_mounts": [{
                    "name": "cloudsql",
                    "mount_path": "/cloudsql",
                }],
            }],
        },
        instance_splits=[{
            "type": "INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST",
            "percent": 100,
        }],
        opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
    project = gcp.organizations.get_project()
    secret_access = gcp.secretmanager.SecretIamMember("secret-access",
        secret_id=secret.id,
        role="roles/secretmanager.secretAccessor",
        member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
        opts = pulumi.ResourceOptions(depends_on=[secret]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/secretmanager"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/sql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		secret, err := secretmanager.NewSecret(ctx, "secret", &secretmanager.SecretArgs{
    			SecretId: pulumi.String("secret-1"),
    			Replication: &secretmanager.SecretReplicationArgs{
    				Auto: &secretmanager.SecretReplicationAutoArgs{},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		secret_version_data, err := secretmanager.NewSecretVersion(ctx, "secret-version-data", &secretmanager.SecretVersionArgs{
    			Secret:     secret.Name,
    			SecretData: pulumi.String("secret-data"),
    		})
    		if err != nil {
    			return err
    		}
    		instance, err := sql.NewDatabaseInstance(ctx, "instance", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("cloudrun-sql"),
    			Region:          pulumi.String("us-central1"),
    			DatabaseVersion: pulumi.String("MYSQL_5_7"),
    			Settings: &sql.DatabaseInstanceSettingsArgs{
    				Tier: pulumi.String("db-f1-micro"),
    			},
    			DeletionProtection: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    					&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    						Name: pulumi.String("cloudsql"),
    						CloudSqlInstance: &cloudrunv2.WorkerPoolTemplateVolumeCloudSqlInstanceArgs{
    							Instances: pulumi.StringArray{
    								instance.ConnectionName,
    							},
    						},
    					},
    				},
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						Envs: cloudrunv2.WorkerPoolTemplateContainerEnvArray{
    							&cloudrunv2.WorkerPoolTemplateContainerEnvArgs{
    								Name:  pulumi.String("FOO"),
    								Value: pulumi.String("bar"),
    							},
    							&cloudrunv2.WorkerPoolTemplateContainerEnvArgs{
    								Name: pulumi.String("SECRET_ENV_VAR"),
    								ValueSource: &cloudrunv2.WorkerPoolTemplateContainerEnvValueSourceArgs{
    									SecretKeyRef: &cloudrunv2.WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs{
    										Secret:  secret.SecretId,
    										Version: pulumi.String("1"),
    									},
    								},
    							},
    						},
    						VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    							&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    								Name:      pulumi.String("cloudsql"),
    								MountPath: pulumi.String("/cloudsql"),
    							},
    						},
    					},
    				},
    			},
    			InstanceSplits: cloudrunv2.WorkerPoolInstanceSplitArray{
    				&cloudrunv2.WorkerPoolInstanceSplitArgs{
    					Type:    pulumi.String("INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST"),
    					Percent: pulumi.Int(100),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			secret_version_data,
    		}))
    		if err != nil {
    			return err
    		}
    		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = secretmanager.NewSecretIamMember(ctx, "secret-access", &secretmanager.SecretIamMemberArgs{
    			SecretId: secret.ID(),
    			Role:     pulumi.String("roles/secretmanager.secretAccessor"),
    			Member:   pulumi.Sprintf("serviceAccount:%v-compute@developer.gserviceaccount.com", project.Number),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			secret,
    		}))
    		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 secret = new Gcp.SecretManager.Secret("secret", new()
        {
            SecretId = "secret-1",
            Replication = new Gcp.SecretManager.Inputs.SecretReplicationArgs
            {
                Auto = null,
            },
        });
    
        var secret_version_data = new Gcp.SecretManager.SecretVersion("secret-version-data", new()
        {
            Secret = secret.Name,
            SecretData = "secret-data",
        });
    
        var instance = new Gcp.Sql.DatabaseInstance("instance", new()
        {
            Name = "cloudrun-sql",
            Region = "us-central1",
            DatabaseVersion = "MYSQL_5_7",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-f1-micro",
            },
            DeletionProtection = true,
        });
    
        var @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Volumes = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                    {
                        Name = "cloudsql",
                        CloudSqlInstance = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeCloudSqlInstanceArgs
                        {
                            Instances = new[]
                            {
                                instance.ConnectionName,
                            },
                        },
                    },
                },
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        Envs = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvArgs
                            {
                                Name = "FOO",
                                Value = "bar",
                            },
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvArgs
                            {
                                Name = "SECRET_ENV_VAR",
                                ValueSource = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvValueSourceArgs
                                {
                                    SecretKeyRef = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs
                                    {
                                        Secret = secret.SecretId,
                                        Version = "1",
                                    },
                                },
                            },
                        },
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                            {
                                Name = "cloudsql",
                                MountPath = "/cloudsql",
                            },
                        },
                    },
                },
            },
            InstanceSplits = new[]
            {
                new Gcp.CloudRunV2.Inputs.WorkerPoolInstanceSplitArgs
                {
                    Type = "INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST",
                    Percent = 100,
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                secret_version_data,
            },
        });
    
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var secret_access = new Gcp.SecretManager.SecretIamMember("secret-access", new()
        {
            SecretId = secret.Id,
            Role = "roles/secretmanager.secretAccessor",
            Member = $"serviceAccount:{project.Apply(getProjectResult => getProjectResult.Number)}-compute@developer.gserviceaccount.com",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                secret,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.secretmanager.Secret;
    import com.pulumi.gcp.secretmanager.SecretArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationAutoArgs;
    import com.pulumi.gcp.secretmanager.SecretVersion;
    import com.pulumi.gcp.secretmanager.SecretVersionArgs;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolInstanceSplitArgs;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.secretmanager.SecretIamMember;
    import com.pulumi.gcp.secretmanager.SecretIamMemberArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 secret = new Secret("secret", SecretArgs.builder()
                .secretId("secret-1")
                .replication(SecretReplicationArgs.builder()
                    .auto(SecretReplicationAutoArgs.builder()
                        .build())
                    .build())
                .build());
    
            var secret_version_data = new SecretVersion("secret-version-data", SecretVersionArgs.builder()
                .secret(secret.name())
                .secretData("secret-data")
                .build());
    
            var instance = new DatabaseInstance("instance", DatabaseInstanceArgs.builder()
                .name("cloudrun-sql")
                .region("us-central1")
                .databaseVersion("MYSQL_5_7")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-f1-micro")
                    .build())
                .deletionProtection(true)
                .build());
    
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .volumes(WorkerPoolTemplateVolumeArgs.builder()
                        .name("cloudsql")
                        .cloudSqlInstance(WorkerPoolTemplateVolumeCloudSqlInstanceArgs.builder()
                            .instances(instance.connectionName())
                            .build())
                        .build())
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .envs(                    
                            WorkerPoolTemplateContainerEnvArgs.builder()
                                .name("FOO")
                                .value("bar")
                                .build(),
                            WorkerPoolTemplateContainerEnvArgs.builder()
                                .name("SECRET_ENV_VAR")
                                .valueSource(WorkerPoolTemplateContainerEnvValueSourceArgs.builder()
                                    .secretKeyRef(WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs.builder()
                                        .secret(secret.secretId())
                                        .version("1")
                                        .build())
                                    .build())
                                .build())
                        .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                            .name("cloudsql")
                            .mountPath("/cloudsql")
                            .build())
                        .build())
                    .build())
                .instanceSplits(WorkerPoolInstanceSplitArgs.builder()
                    .type("INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST")
                    .percent(100)
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(secret_version_data)
                    .build());
    
            final var project = OrganizationsFunctions.getProject(GetProjectArgs.builder()
                .build());
    
            var secret_access = new SecretIamMember("secret-access", SecretIamMemberArgs.builder()
                .secretId(secret.id())
                .role("roles/secretmanager.secretAccessor")
                .member(String.format("serviceAccount:%s-compute@developer.gserviceaccount.com", project.number()))
                .build(), CustomResourceOptions.builder()
                    .dependsOn(secret)
                    .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            volumes:
              - name: cloudsql
                cloudSqlInstance:
                  instances:
                    - ${instance.connectionName}
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
                envs:
                  - name: FOO
                    value: bar
                  - name: SECRET_ENV_VAR
                    valueSource:
                      secretKeyRef:
                        secret: ${secret.secretId}
                        version: '1'
                volumeMounts:
                  - name: cloudsql
                    mountPath: /cloudsql
          instanceSplits:
            - type: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST
              percent: 100
        options:
          dependsOn:
            - ${["secret-version-data"]}
      secret:
        type: gcp:secretmanager:Secret
        properties:
          secretId: secret-1
          replication:
            auto: {}
      secret-version-data:
        type: gcp:secretmanager:SecretVersion
        properties:
          secret: ${secret.name}
          secretData: secret-data
      secret-access:
        type: gcp:secretmanager:SecretIamMember
        properties:
          secretId: ${secret.id}
          role: roles/secretmanager.secretAccessor
          member: serviceAccount:${project.number}-compute@developer.gserviceaccount.com
        options:
          dependsOn:
            - ${secret}
      instance:
        type: gcp:sql:DatabaseInstance
        properties:
          name: cloudrun-sql
          region: us-central1
          databaseVersion: MYSQL_5_7
          settings:
            tier: db-f1-micro
          deletionProtection: true
    variables:
      project:
        fn::invoke:
          function: gcp:organizations:getProject
          arguments: {}
    

    Cloudrunv2 Worker Pool Directvpc

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
            vpcAccess: {
                networkInterfaces: [{
                    network: "default",
                    subnetwork: "default",
                    tags: [
                        "tag1",
                        "tag2",
                        "tag3",
                    ],
                }],
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
            "vpc_access": {
                "network_interfaces": [{
                    "network": "default",
                    "subnetwork": "default",
                    "tags": [
                        "tag1",
                        "tag2",
                        "tag3",
                    ],
                }],
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    					},
    				},
    				VpcAccess: &cloudrunv2.WorkerPoolTemplateVpcAccessArgs{
    					NetworkInterfaces: cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArray{
    						&cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs{
    							Network:    pulumi.String("default"),
    							Subnetwork: pulumi.String("default"),
    							Tags: pulumi.StringArray{
    								pulumi.String("tag1"),
    								pulumi.String("tag2"),
    								pulumi.String("tag3"),
    							},
    						},
    					},
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    },
                },
                VpcAccess = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessArgs
                {
                    NetworkInterfaces = new[]
                    {
                        new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs
                        {
                            Network = "default",
                            Subnetwork = "default",
                            Tags = new[]
                            {
                                "tag1",
                                "tag2",
                                "tag3",
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateVpcAccessArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .build())
                    .vpcAccess(WorkerPoolTemplateVpcAccessArgs.builder()
                        .networkInterfaces(WorkerPoolTemplateVpcAccessNetworkInterfaceArgs.builder()
                            .network("default")
                            .subnetwork("default")
                            .tags(                        
                                "tag1",
                                "tag2",
                                "tag3")
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
            vpcAccess:
              networkInterfaces:
                - network: default
                  subnetwork: default
                  tags:
                    - tag1
                    - tag2
                    - tag3
    

    Cloudrunv2 Worker Pool Gpu

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                resources: {
                    limits: {
                        cpu: "4",
                        memory: "16Gi",
                        "nvidia.com/gpu": "1",
                    },
                },
            }],
            nodeSelector: {
                accelerator: "nvidia-l4",
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                "resources": {
                    "limits": {
                        "cpu": "4",
                        "memory": "16Gi",
                        "nvidia.com/gpu": "1",
                    },
                },
            }],
            "node_selector": {
                "accelerator": "nvidia-l4",
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						Resources: &cloudrunv2.WorkerPoolTemplateContainerResourcesArgs{
    							Limits: pulumi.StringMap{
    								"cpu":            pulumi.String("4"),
    								"memory":         pulumi.String("16Gi"),
    								"nvidia.com/gpu": pulumi.String("1"),
    							},
    						},
    					},
    				},
    				NodeSelector: &cloudrunv2.WorkerPoolTemplateNodeSelectorArgs{
    					Accelerator: pulumi.String("nvidia-l4"),
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        Resources = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerResourcesArgs
                        {
                            Limits = 
                            {
                                { "cpu", "4" },
                                { "memory", "16Gi" },
                                { "nvidia.com/gpu", "1" },
                            },
                        },
                    },
                },
                NodeSelector = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateNodeSelectorArgs
                {
                    Accelerator = "nvidia-l4",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateNodeSelectorArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .resources(WorkerPoolTemplateContainerResourcesArgs.builder()
                            .limits(Map.ofEntries(
                                Map.entry("cpu", "4"),
                                Map.entry("memory", "16Gi"),
                                Map.entry("nvidia.com/gpu", "1")
                            ))
                            .build())
                        .build())
                    .nodeSelector(WorkerPoolTemplateNodeSelectorArgs.builder()
                        .accelerator("nvidia-l4")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
                resources:
                  limits:
                    cpu: '4'
                    memory: 16Gi
                    nvidia.com/gpu: '1'
            nodeSelector:
              accelerator: nvidia-l4
    

    Cloudrunv2 Worker Pool Secret

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const secret = new gcp.secretmanager.Secret("secret", {
        secretId: "secret-1",
        replication: {
            auto: {},
        },
    });
    const secret_version_data = new gcp.secretmanager.SecretVersion("secret-version-data", {
        secret: secret.name,
        secretData: "secret-data",
    });
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            volumes: [{
                name: "a-volume",
                secret: {
                    secret: secret.secretId,
                    defaultMode: 292,
                    items: [{
                        version: "1",
                        path: "my-secret",
                        mode: 444,
                    }],
                },
            }],
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                volumeMounts: [{
                    name: "a-volume",
                    mountPath: "/secrets",
                }],
            }],
        },
    }, {
        dependsOn: [secret_version_data],
    });
    const project = gcp.organizations.getProject({});
    const secret_access = new gcp.secretmanager.SecretIamMember("secret-access", {
        secretId: secret.id,
        role: "roles/secretmanager.secretAccessor",
        member: project.then(project => `serviceAccount:${project.number}-compute@developer.gserviceaccount.com`),
    }, {
        dependsOn: [secret],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    secret = gcp.secretmanager.Secret("secret",
        secret_id="secret-1",
        replication={
            "auto": {},
        })
    secret_version_data = gcp.secretmanager.SecretVersion("secret-version-data",
        secret=secret.name,
        secret_data="secret-data")
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "volumes": [{
                "name": "a-volume",
                "secret": {
                    "secret": secret.secret_id,
                    "default_mode": 292,
                    "items": [{
                        "version": "1",
                        "path": "my-secret",
                        "mode": 444,
                    }],
                },
            }],
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                "volume_mounts": [{
                    "name": "a-volume",
                    "mount_path": "/secrets",
                }],
            }],
        },
        opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
    project = gcp.organizations.get_project()
    secret_access = gcp.secretmanager.SecretIamMember("secret-access",
        secret_id=secret.id,
        role="roles/secretmanager.secretAccessor",
        member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
        opts = pulumi.ResourceOptions(depends_on=[secret]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/secretmanager"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		secret, err := secretmanager.NewSecret(ctx, "secret", &secretmanager.SecretArgs{
    			SecretId: pulumi.String("secret-1"),
    			Replication: &secretmanager.SecretReplicationArgs{
    				Auto: &secretmanager.SecretReplicationAutoArgs{},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		secret_version_data, err := secretmanager.NewSecretVersion(ctx, "secret-version-data", &secretmanager.SecretVersionArgs{
    			Secret:     secret.Name,
    			SecretData: pulumi.String("secret-data"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    					&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    						Name: pulumi.String("a-volume"),
    						Secret: &cloudrunv2.WorkerPoolTemplateVolumeSecretArgs{
    							Secret:      secret.SecretId,
    							DefaultMode: pulumi.Int(292),
    							Items: cloudrunv2.WorkerPoolTemplateVolumeSecretItemArray{
    								&cloudrunv2.WorkerPoolTemplateVolumeSecretItemArgs{
    									Version: pulumi.String("1"),
    									Path:    pulumi.String("my-secret"),
    									Mode:    pulumi.Int(444),
    								},
    							},
    						},
    					},
    				},
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    							&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    								Name:      pulumi.String("a-volume"),
    								MountPath: pulumi.String("/secrets"),
    							},
    						},
    					},
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			secret_version_data,
    		}))
    		if err != nil {
    			return err
    		}
    		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = secretmanager.NewSecretIamMember(ctx, "secret-access", &secretmanager.SecretIamMemberArgs{
    			SecretId: secret.ID(),
    			Role:     pulumi.String("roles/secretmanager.secretAccessor"),
    			Member:   pulumi.Sprintf("serviceAccount:%v-compute@developer.gserviceaccount.com", project.Number),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			secret,
    		}))
    		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 secret = new Gcp.SecretManager.Secret("secret", new()
        {
            SecretId = "secret-1",
            Replication = new Gcp.SecretManager.Inputs.SecretReplicationArgs
            {
                Auto = null,
            },
        });
    
        var secret_version_data = new Gcp.SecretManager.SecretVersion("secret-version-data", new()
        {
            Secret = secret.Name,
            SecretData = "secret-data",
        });
    
        var @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Volumes = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                    {
                        Name = "a-volume",
                        Secret = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeSecretArgs
                        {
                            Secret = secret.SecretId,
                            DefaultMode = 292,
                            Items = new[]
                            {
                                new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeSecretItemArgs
                                {
                                    Version = "1",
                                    Path = "my-secret",
                                    Mode = 444,
                                },
                            },
                        },
                    },
                },
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                            {
                                Name = "a-volume",
                                MountPath = "/secrets",
                            },
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                secret_version_data,
            },
        });
    
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var secret_access = new Gcp.SecretManager.SecretIamMember("secret-access", new()
        {
            SecretId = secret.Id,
            Role = "roles/secretmanager.secretAccessor",
            Member = $"serviceAccount:{project.Apply(getProjectResult => getProjectResult.Number)}-compute@developer.gserviceaccount.com",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                secret,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.secretmanager.Secret;
    import com.pulumi.gcp.secretmanager.SecretArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationAutoArgs;
    import com.pulumi.gcp.secretmanager.SecretVersion;
    import com.pulumi.gcp.secretmanager.SecretVersionArgs;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.secretmanager.SecretIamMember;
    import com.pulumi.gcp.secretmanager.SecretIamMemberArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 secret = new Secret("secret", SecretArgs.builder()
                .secretId("secret-1")
                .replication(SecretReplicationArgs.builder()
                    .auto(SecretReplicationAutoArgs.builder()
                        .build())
                    .build())
                .build());
    
            var secret_version_data = new SecretVersion("secret-version-data", SecretVersionArgs.builder()
                .secret(secret.name())
                .secretData("secret-data")
                .build());
    
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .volumes(WorkerPoolTemplateVolumeArgs.builder()
                        .name("a-volume")
                        .secret(WorkerPoolTemplateVolumeSecretArgs.builder()
                            .secret(secret.secretId())
                            .defaultMode(292)
                            .items(WorkerPoolTemplateVolumeSecretItemArgs.builder()
                                .version("1")
                                .path("my-secret")
                                .mode(444)
                                .build())
                            .build())
                        .build())
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                            .name("a-volume")
                            .mountPath("/secrets")
                            .build())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(secret_version_data)
                    .build());
    
            final var project = OrganizationsFunctions.getProject(GetProjectArgs.builder()
                .build());
    
            var secret_access = new SecretIamMember("secret-access", SecretIamMemberArgs.builder()
                .secretId(secret.id())
                .role("roles/secretmanager.secretAccessor")
                .member(String.format("serviceAccount:%s-compute@developer.gserviceaccount.com", project.number()))
                .build(), CustomResourceOptions.builder()
                    .dependsOn(secret)
                    .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            volumes:
              - name: a-volume
                secret:
                  secret: ${secret.secretId}
                  defaultMode: 292
                  items:
                    - version: '1'
                      path: my-secret
                      mode: 444
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
                volumeMounts:
                  - name: a-volume
                    mountPath: /secrets
        options:
          dependsOn:
            - ${["secret-version-data"]}
      secret:
        type: gcp:secretmanager:Secret
        properties:
          secretId: secret-1
          replication:
            auto: {}
      secret-version-data:
        type: gcp:secretmanager:SecretVersion
        properties:
          secret: ${secret.name}
          secretData: secret-data
      secret-access:
        type: gcp:secretmanager:SecretIamMember
        properties:
          secretId: ${secret.id}
          role: roles/secretmanager.secretAccessor
          member: serviceAccount:${project.number}-compute@developer.gserviceaccount.com
        options:
          dependsOn:
            - ${secret}
    variables:
      project:
        fn::invoke:
          function: gcp:organizations:getProject
          arguments: {}
    

    Cloudrunv2 Worker Pool Multicontainer

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [
                {
                    name: "hello-1",
                    image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    dependsOns: ["hello-2"],
                    volumeMounts: [{
                        name: "empty-dir-volume",
                        mountPath: "/mnt",
                    }],
                },
                {
                    name: "hello-2",
                    image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                },
            ],
            volumes: [{
                name: "empty-dir-volume",
                emptyDir: {
                    medium: "MEMORY",
                    sizeLimit: "256Mi",
                },
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [
                {
                    "name": "hello-1",
                    "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    "depends_ons": ["hello-2"],
                    "volume_mounts": [{
                        "name": "empty-dir-volume",
                        "mount_path": "/mnt",
                    }],
                },
                {
                    "name": "hello-2",
                    "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                },
            ],
            "volumes": [{
                "name": "empty-dir-volume",
                "empty_dir": {
                    "medium": "MEMORY",
                    "size_limit": "256Mi",
                },
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Name:  pulumi.String("hello-1"),
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						DependsOns: pulumi.StringArray{
    							pulumi.String("hello-2"),
    						},
    						VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    							&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    								Name:      pulumi.String("empty-dir-volume"),
    								MountPath: pulumi.String("/mnt"),
    							},
    						},
    					},
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Name:  pulumi.String("hello-2"),
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    					},
    				},
    				Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    					&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    						Name: pulumi.String("empty-dir-volume"),
    						EmptyDir: &cloudrunv2.WorkerPoolTemplateVolumeEmptyDirArgs{
    							Medium:    pulumi.String("MEMORY"),
    							SizeLimit: pulumi.String("256Mi"),
    						},
    					},
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Name = "hello-1",
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        DependsOns = new[]
                        {
                            "hello-2",
                        },
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                            {
                                Name = "empty-dir-volume",
                                MountPath = "/mnt",
                            },
                        },
                    },
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Name = "hello-2",
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    },
                },
                Volumes = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                    {
                        Name = "empty-dir-volume",
                        EmptyDir = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeEmptyDirArgs
                        {
                            Medium = "MEMORY",
                            SizeLimit = "256Mi",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(                
                        WorkerPoolTemplateContainerArgs.builder()
                            .name("hello-1")
                            .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                            .dependsOns("hello-2")
                            .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                                .name("empty-dir-volume")
                                .mountPath("/mnt")
                                .build())
                            .build(),
                        WorkerPoolTemplateContainerArgs.builder()
                            .name("hello-2")
                            .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                            .build())
                    .volumes(WorkerPoolTemplateVolumeArgs.builder()
                        .name("empty-dir-volume")
                        .emptyDir(WorkerPoolTemplateVolumeEmptyDirArgs.builder()
                            .medium("MEMORY")
                            .sizeLimit("256Mi")
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - name: hello-1
                image: us-docker.pkg.dev/cloudrun/container/worker-pool
                dependsOns:
                  - hello-2
                volumeMounts:
                  - name: empty-dir-volume
                    mountPath: /mnt
              - name: hello-2
                image: us-docker.pkg.dev/cloudrun/container/worker-pool
            volumes:
              - name: empty-dir-volume
                emptyDir:
                  medium: MEMORY
                  sizeLimit: 256Mi
    

    Cloudrunv2 Worker Pool Mount Gcs

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const defaultBucket = new gcp.storage.Bucket("default", {
        name: "cloudrun-worker-pool",
        location: "US",
        uniformBucketLevelAccess: true,
    });
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
                volumeMounts: [{
                    name: "bucket",
                    mountPath: "/var/www",
                }],
            }],
            volumes: [{
                name: "bucket",
                gcs: {
                    bucket: defaultBucket.name,
                    readOnly: false,
                },
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default_bucket = gcp.storage.Bucket("default",
        name="cloudrun-worker-pool",
        location="US",
        uniform_bucket_level_access=True)
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
                "volume_mounts": [{
                    "name": "bucket",
                    "mount_path": "/var/www",
                }],
            }],
            "volumes": [{
                "name": "bucket",
                "gcs": {
                    "bucket": default_bucket.name,
                    "read_only": False,
                },
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultBucket, err := storage.NewBucket(ctx, "default", &storage.BucketArgs{
    			Name:                     pulumi.String("cloudrun-worker-pool"),
    			Location:                 pulumi.String("US"),
    			UniformBucketLevelAccess: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    						VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    							&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    								Name:      pulumi.String("bucket"),
    								MountPath: pulumi.String("/var/www"),
    							},
    						},
    					},
    				},
    				Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    					&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    						Name: pulumi.String("bucket"),
    						Gcs: &cloudrunv2.WorkerPoolTemplateVolumeGcsArgs{
    							Bucket:   defaultBucket.Name,
    							ReadOnly: pulumi.Bool(false),
    						},
    					},
    				},
    			},
    		})
    		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 defaultBucket = new Gcp.Storage.Bucket("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "US",
            UniformBucketLevelAccess = true,
        });
    
        var @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                            {
                                Name = "bucket",
                                MountPath = "/var/www",
                            },
                        },
                    },
                },
                Volumes = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                    {
                        Name = "bucket",
                        Gcs = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeGcsArgs
                        {
                            Bucket = defaultBucket.Name,
                            ReadOnly = false,
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.storage.Bucket;
    import com.pulumi.gcp.storage.BucketArgs;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    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 defaultBucket = new Bucket("defaultBucket", BucketArgs.builder()
                .name("cloudrun-worker-pool")
                .location("US")
                .uniformBucketLevelAccess(true)
                .build());
    
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                            .name("bucket")
                            .mountPath("/var/www")
                            .build())
                        .build())
                    .volumes(WorkerPoolTemplateVolumeArgs.builder()
                        .name("bucket")
                        .gcs(WorkerPoolTemplateVolumeGcsArgs.builder()
                            .bucket(defaultBucket.name())
                            .readOnly(false)
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
                volumeMounts:
                  - name: bucket
                    mountPath: /var/www
            volumes:
              - name: bucket
                gcs:
                  bucket: ${defaultBucket.name}
                  readOnly: false
      defaultBucket:
        type: gcp:storage:Bucket
        name: default
        properties:
          name: cloudrun-worker-pool
          location: US
          uniformBucketLevelAccess: true
    

    Cloudrunv2 Worker Pool Mount Nfs

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const defaultInstance = new gcp.filestore.Instance("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1-b",
        tier: "BASIC_HDD",
        fileShares: {
            capacityGb: 1024,
            name: "share1",
        },
        networks: [{
            network: "default",
            modes: ["MODE_IPV4"],
        }],
    });
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool:latest",
                volumeMounts: [{
                    name: "nfs",
                    mountPath: "/mnt/nfs/filestore",
                }],
            }],
            vpcAccess: {
                networkInterfaces: [{
                    network: "default",
                    subnetwork: "default",
                }],
            },
            volumes: [{
                name: "nfs",
                nfs: {
                    server: defaultInstance.networks.apply(networks => networks[0].ipAddresses?.[0]),
                    path: "/share1",
                    readOnly: false,
                },
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default_instance = gcp.filestore.Instance("default",
        name="cloudrun-worker-pool",
        location="us-central1-b",
        tier="BASIC_HDD",
        file_shares={
            "capacity_gb": 1024,
            "name": "share1",
        },
        networks=[{
            "network": "default",
            "modes": ["MODE_IPV4"],
        }])
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool:latest",
                "volume_mounts": [{
                    "name": "nfs",
                    "mount_path": "/mnt/nfs/filestore",
                }],
            }],
            "vpc_access": {
                "network_interfaces": [{
                    "network": "default",
                    "subnetwork": "default",
                }],
            },
            "volumes": [{
                "name": "nfs",
                "nfs": {
                    "server": default_instance.networks[0].ip_addresses[0],
                    "path": "/share1",
                    "read_only": False,
                },
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/filestore"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultInstance, err := filestore.NewInstance(ctx, "default", &filestore.InstanceArgs{
    			Name:     pulumi.String("cloudrun-worker-pool"),
    			Location: pulumi.String("us-central1-b"),
    			Tier:     pulumi.String("BASIC_HDD"),
    			FileShares: &filestore.InstanceFileSharesArgs{
    				CapacityGb: pulumi.Int(1024),
    				Name:       pulumi.String("share1"),
    			},
    			Networks: filestore.InstanceNetworkArray{
    				&filestore.InstanceNetworkArgs{
    					Network: pulumi.String("default"),
    					Modes: pulumi.StringArray{
    						pulumi.String("MODE_IPV4"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool:latest"),
    						VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    							&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    								Name:      pulumi.String("nfs"),
    								MountPath: pulumi.String("/mnt/nfs/filestore"),
    							},
    						},
    					},
    				},
    				VpcAccess: &cloudrunv2.WorkerPoolTemplateVpcAccessArgs{
    					NetworkInterfaces: cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArray{
    						&cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs{
    							Network:    pulumi.String("default"),
    							Subnetwork: pulumi.String("default"),
    						},
    					},
    				},
    				Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    					&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    						Name: pulumi.String("nfs"),
    						Nfs: &cloudrunv2.WorkerPoolTemplateVolumeNfsArgs{
    							Server: defaultInstance.Networks.ApplyT(func(networks []filestore.InstanceNetwork) (*string, error) {
    								return &networks[0].IpAddresses[0], nil
    							}).(pulumi.StringPtrOutput),
    							Path:     pulumi.String("/share1"),
    							ReadOnly: pulumi.Bool(false),
    						},
    					},
    				},
    			},
    		})
    		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 defaultInstance = new Gcp.Filestore.Instance("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1-b",
            Tier = "BASIC_HDD",
            FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
            {
                CapacityGb = 1024,
                Name = "share1",
            },
            Networks = new[]
            {
                new Gcp.Filestore.Inputs.InstanceNetworkArgs
                {
                    Network = "default",
                    Modes = new[]
                    {
                        "MODE_IPV4",
                    },
                },
            },
        });
    
        var @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool:latest",
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                            {
                                Name = "nfs",
                                MountPath = "/mnt/nfs/filestore",
                            },
                        },
                    },
                },
                VpcAccess = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessArgs
                {
                    NetworkInterfaces = new[]
                    {
                        new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs
                        {
                            Network = "default",
                            Subnetwork = "default",
                        },
                    },
                },
                Volumes = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                    {
                        Name = "nfs",
                        Nfs = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeNfsArgs
                        {
                            Server = defaultInstance.Networks.Apply(networks => networks[0].IpAddresses[0]),
                            Path = "/share1",
                            ReadOnly = false,
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.filestore.Instance;
    import com.pulumi.gcp.filestore.InstanceArgs;
    import com.pulumi.gcp.filestore.inputs.InstanceFileSharesArgs;
    import com.pulumi.gcp.filestore.inputs.InstanceNetworkArgs;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateVpcAccessArgs;
    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 defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1-b")
                .tier("BASIC_HDD")
                .fileShares(InstanceFileSharesArgs.builder()
                    .capacityGb(1024)
                    .name("share1")
                    .build())
                .networks(InstanceNetworkArgs.builder()
                    .network("default")
                    .modes("MODE_IPV4")
                    .build())
                .build());
    
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool:latest")
                        .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                            .name("nfs")
                            .mountPath("/mnt/nfs/filestore")
                            .build())
                        .build())
                    .vpcAccess(WorkerPoolTemplateVpcAccessArgs.builder()
                        .networkInterfaces(WorkerPoolTemplateVpcAccessNetworkInterfaceArgs.builder()
                            .network("default")
                            .subnetwork("default")
                            .build())
                        .build())
                    .volumes(WorkerPoolTemplateVolumeArgs.builder()
                        .name("nfs")
                        .nfs(WorkerPoolTemplateVolumeNfsArgs.builder()
                            .server(defaultInstance.networks().applyValue(_networks -> _networks[0].ipAddresses()[0]))
                            .path("/share1")
                            .readOnly(false)
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool:latest
                volumeMounts:
                  - name: nfs
                    mountPath: /mnt/nfs/filestore
            vpcAccess:
              networkInterfaces:
                - network: default
                  subnetwork: default
            volumes:
              - name: nfs
                nfs:
                  server: ${defaultInstance.networks[0].ipAddresses[0]}
                  path: /share1
                  readOnly: false
      defaultInstance:
        type: gcp:filestore:Instance
        name: default
        properties:
          name: cloudrun-worker-pool
          location: us-central1-b
          tier: BASIC_HDD
          fileShares:
            capacityGb: 1024
            name: share1
          networks:
            - network: default
              modes:
                - MODE_IPV4
    

    Cloudrunv2 Worker Pool Custom Audiences

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrunv2.WorkerPool("default", {
        name: "cloudrun-worker-pool",
        location: "us-central1",
        deletionProtection: false,
        launchStage: "ALPHA",
        customAudiences: ["aud1"],
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrunv2.WorkerPool("default",
        name="cloudrun-worker-pool",
        location="us-central1",
        deletion_protection=False,
        launch_stage="ALPHA",
        custom_audiences=["aud1"],
        template={
            "containers": [{
                "image": "us-docker.pkg.dev/cloudrun/container/worker-pool",
            }],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrunv2.NewWorkerPool(ctx, "default", &cloudrunv2.WorkerPoolArgs{
    			Name:               pulumi.String("cloudrun-worker-pool"),
    			Location:           pulumi.String("us-central1"),
    			DeletionProtection: pulumi.Bool(false),
    			LaunchStage:        pulumi.String("ALPHA"),
    			CustomAudiences: pulumi.StringArray{
    				pulumi.String("aud1"),
    			},
    			Template: &cloudrunv2.WorkerPoolTemplateArgs{
    				Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    					&cloudrunv2.WorkerPoolTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/worker-pool"),
    					},
    				},
    			},
    		})
    		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 @default = new Gcp.CloudRunV2.WorkerPool("default", new()
        {
            Name = "cloudrun-worker-pool",
            Location = "us-central1",
            DeletionProtection = false,
            LaunchStage = "ALPHA",
            CustomAudiences = new[]
            {
                "aud1",
            },
            Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/worker-pool",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrunv2.WorkerPool;
    import com.pulumi.gcp.cloudrunv2.WorkerPoolArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.WorkerPoolTemplateArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new WorkerPool("default", WorkerPoolArgs.builder()
                .name("cloudrun-worker-pool")
                .location("us-central1")
                .deletionProtection(false)
                .launchStage("ALPHA")
                .customAudiences("aud1")
                .template(WorkerPoolTemplateArgs.builder()
                    .containers(WorkerPoolTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/worker-pool")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrunv2:WorkerPool
        properties:
          name: cloudrun-worker-pool
          location: us-central1
          deletionProtection: false
          launchStage: ALPHA
          customAudiences:
            - aud1
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/worker-pool
    

    Create WorkerPool Resource

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

    Constructor syntax

    new WorkerPool(name: string, args: WorkerPoolArgs, opts?: CustomResourceOptions);
    @overload
    def WorkerPool(resource_name: str,
                   args: WorkerPoolArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def WorkerPool(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   location: Optional[str] = None,
                   template: Optional[WorkerPoolTemplateArgs] = None,
                   description: Optional[str] = None,
                   client_version: Optional[str] = None,
                   custom_audiences: Optional[Sequence[str]] = None,
                   deletion_protection: Optional[bool] = None,
                   annotations: Optional[Mapping[str, str]] = None,
                   instance_splits: Optional[Sequence[WorkerPoolInstanceSplitArgs]] = None,
                   labels: Optional[Mapping[str, str]] = None,
                   launch_stage: Optional[str] = None,
                   client: Optional[str] = None,
                   name: Optional[str] = None,
                   project: Optional[str] = None,
                   scaling: Optional[WorkerPoolScalingArgs] = None,
                   binary_authorization: Optional[WorkerPoolBinaryAuthorizationArgs] = None)
    func NewWorkerPool(ctx *Context, name string, args WorkerPoolArgs, opts ...ResourceOption) (*WorkerPool, error)
    public WorkerPool(string name, WorkerPoolArgs args, CustomResourceOptions? opts = null)
    public WorkerPool(String name, WorkerPoolArgs args)
    public WorkerPool(String name, WorkerPoolArgs args, CustomResourceOptions options)
    
    type: gcp:cloudrunv2:WorkerPool
    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 WorkerPoolArgs
    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 WorkerPoolArgs
    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 WorkerPoolArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args WorkerPoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args WorkerPoolArgs
    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 gcpWorkerPoolResource = new Gcp.CloudRunV2.WorkerPool("gcpWorkerPoolResource", new()
    {
        Location = "string",
        Template = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            Containers = new[]
            {
                new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerArgs
                {
                    Image = "string",
                    Args = new[]
                    {
                        "string",
                    },
                    Commands = new[]
                    {
                        "string",
                    },
                    DependsOns = new[]
                    {
                        "string",
                    },
                    Envs = new[]
                    {
                        new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvArgs
                        {
                            Name = "string",
                            Value = "string",
                            ValueSource = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvValueSourceArgs
                            {
                                SecretKeyRef = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs
                                {
                                    Secret = "string",
                                    Version = "string",
                                },
                            },
                        },
                    },
                    Name = "string",
                    Resources = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerResourcesArgs
                    {
                        Limits = 
                        {
                            { "string", "string" },
                        },
                    },
                    VolumeMounts = new[]
                    {
                        new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateContainerVolumeMountArgs
                        {
                            MountPath = "string",
                            Name = "string",
                        },
                    },
                    WorkingDir = "string",
                },
            },
            EncryptionKey = "string",
            EncryptionKeyRevocationAction = "string",
            EncryptionKeyShutdownDuration = "string",
            GpuZonalRedundancyDisabled = false,
            Labels = 
            {
                { "string", "string" },
            },
            NodeSelector = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateNodeSelectorArgs
            {
                Accelerator = "string",
            },
            Revision = "string",
            ServiceAccount = "string",
            Volumes = new[]
            {
                new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeArgs
                {
                    Name = "string",
                    CloudSqlInstance = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeCloudSqlInstanceArgs
                    {
                        Instances = new[]
                        {
                            "string",
                        },
                    },
                    EmptyDir = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeEmptyDirArgs
                    {
                        Medium = "string",
                        SizeLimit = "string",
                    },
                    Gcs = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeGcsArgs
                    {
                        Bucket = "string",
                        MountOptions = new[]
                        {
                            "string",
                        },
                        ReadOnly = false,
                    },
                    Nfs = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeNfsArgs
                    {
                        Path = "string",
                        Server = "string",
                        ReadOnly = false,
                    },
                    Secret = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeSecretArgs
                    {
                        Secret = "string",
                        DefaultMode = 0,
                        Items = new[]
                        {
                            new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVolumeSecretItemArgs
                            {
                                Path = "string",
                                Mode = 0,
                                Version = "string",
                            },
                        },
                    },
                },
            },
            VpcAccess = new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessArgs
            {
                Egress = "string",
                NetworkInterfaces = new[]
                {
                    new Gcp.CloudRunV2.Inputs.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs
                    {
                        Network = "string",
                        Subnetwork = "string",
                        Tags = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        Description = "string",
        ClientVersion = "string",
        CustomAudiences = new[]
        {
            "string",
        },
        DeletionProtection = false,
        Annotations = 
        {
            { "string", "string" },
        },
        InstanceSplits = new[]
        {
            new Gcp.CloudRunV2.Inputs.WorkerPoolInstanceSplitArgs
            {
                Percent = 0,
                Revision = "string",
                Type = "string",
            },
        },
        Labels = 
        {
            { "string", "string" },
        },
        LaunchStage = "string",
        Client = "string",
        Name = "string",
        Project = "string",
        Scaling = new Gcp.CloudRunV2.Inputs.WorkerPoolScalingArgs
        {
            ManualInstanceCount = 0,
            MaxInstanceCount = 0,
            MinInstanceCount = 0,
            ScalingMode = "string",
        },
        BinaryAuthorization = new Gcp.CloudRunV2.Inputs.WorkerPoolBinaryAuthorizationArgs
        {
            BreakglassJustification = "string",
            Policy = "string",
            UseDefault = false,
        },
    });
    
    example, err := cloudrunv2.NewWorkerPool(ctx, "gcpWorkerPoolResource", &cloudrunv2.WorkerPoolArgs{
    	Location: pulumi.String("string"),
    	Template: &cloudrunv2.WorkerPoolTemplateArgs{
    		Annotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Containers: cloudrunv2.WorkerPoolTemplateContainerArray{
    			&cloudrunv2.WorkerPoolTemplateContainerArgs{
    				Image: pulumi.String("string"),
    				Args: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Commands: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				DependsOns: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Envs: cloudrunv2.WorkerPoolTemplateContainerEnvArray{
    					&cloudrunv2.WorkerPoolTemplateContainerEnvArgs{
    						Name:  pulumi.String("string"),
    						Value: pulumi.String("string"),
    						ValueSource: &cloudrunv2.WorkerPoolTemplateContainerEnvValueSourceArgs{
    							SecretKeyRef: &cloudrunv2.WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs{
    								Secret:  pulumi.String("string"),
    								Version: pulumi.String("string"),
    							},
    						},
    					},
    				},
    				Name: pulumi.String("string"),
    				Resources: &cloudrunv2.WorkerPoolTemplateContainerResourcesArgs{
    					Limits: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    				},
    				VolumeMounts: cloudrunv2.WorkerPoolTemplateContainerVolumeMountArray{
    					&cloudrunv2.WorkerPoolTemplateContainerVolumeMountArgs{
    						MountPath: pulumi.String("string"),
    						Name:      pulumi.String("string"),
    					},
    				},
    				WorkingDir: pulumi.String("string"),
    			},
    		},
    		EncryptionKey:                 pulumi.String("string"),
    		EncryptionKeyRevocationAction: pulumi.String("string"),
    		EncryptionKeyShutdownDuration: pulumi.String("string"),
    		GpuZonalRedundancyDisabled:    pulumi.Bool(false),
    		Labels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		NodeSelector: &cloudrunv2.WorkerPoolTemplateNodeSelectorArgs{
    			Accelerator: pulumi.String("string"),
    		},
    		Revision:       pulumi.String("string"),
    		ServiceAccount: pulumi.String("string"),
    		Volumes: cloudrunv2.WorkerPoolTemplateVolumeArray{
    			&cloudrunv2.WorkerPoolTemplateVolumeArgs{
    				Name: pulumi.String("string"),
    				CloudSqlInstance: &cloudrunv2.WorkerPoolTemplateVolumeCloudSqlInstanceArgs{
    					Instances: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    				EmptyDir: &cloudrunv2.WorkerPoolTemplateVolumeEmptyDirArgs{
    					Medium:    pulumi.String("string"),
    					SizeLimit: pulumi.String("string"),
    				},
    				Gcs: &cloudrunv2.WorkerPoolTemplateVolumeGcsArgs{
    					Bucket: pulumi.String("string"),
    					MountOptions: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					ReadOnly: pulumi.Bool(false),
    				},
    				Nfs: &cloudrunv2.WorkerPoolTemplateVolumeNfsArgs{
    					Path:     pulumi.String("string"),
    					Server:   pulumi.String("string"),
    					ReadOnly: pulumi.Bool(false),
    				},
    				Secret: &cloudrunv2.WorkerPoolTemplateVolumeSecretArgs{
    					Secret:      pulumi.String("string"),
    					DefaultMode: pulumi.Int(0),
    					Items: cloudrunv2.WorkerPoolTemplateVolumeSecretItemArray{
    						&cloudrunv2.WorkerPoolTemplateVolumeSecretItemArgs{
    							Path:    pulumi.String("string"),
    							Mode:    pulumi.Int(0),
    							Version: pulumi.String("string"),
    						},
    					},
    				},
    			},
    		},
    		VpcAccess: &cloudrunv2.WorkerPoolTemplateVpcAccessArgs{
    			Egress: pulumi.String("string"),
    			NetworkInterfaces: cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArray{
    				&cloudrunv2.WorkerPoolTemplateVpcAccessNetworkInterfaceArgs{
    					Network:    pulumi.String("string"),
    					Subnetwork: pulumi.String("string"),
    					Tags: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	Description:   pulumi.String("string"),
    	ClientVersion: pulumi.String("string"),
    	CustomAudiences: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	DeletionProtection: pulumi.Bool(false),
    	Annotations: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	InstanceSplits: cloudrunv2.WorkerPoolInstanceSplitArray{
    		&cloudrunv2.WorkerPoolInstanceSplitArgs{
    			Percent:  pulumi.Int(0),
    			Revision: pulumi.String("string"),
    			Type:     pulumi.String("string"),
    		},
    	},
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	LaunchStage: pulumi.String("string"),
    	Client:      pulumi.String("string"),
    	Name:        pulumi.String("string"),
    	Project:     pulumi.String("string"),
    	Scaling: &cloudrunv2.WorkerPoolScalingArgs{
    		ManualInstanceCount: pulumi.Int(0),
    		MaxInstanceCount:    pulumi.Int(0),
    		MinInstanceCount:    pulumi.Int(0),
    		ScalingMode:         pulumi.String("string"),
    	},
    	BinaryAuthorization: &cloudrunv2.WorkerPoolBinaryAuthorizationArgs{
    		BreakglassJustification: pulumi.String("string"),
    		Policy:                  pulumi.String("string"),
    		UseDefault:              pulumi.Bool(false),
    	},
    })
    
    var gcpWorkerPoolResource = new com.pulumi.gcp.cloudrunv2.WorkerPool("gcpWorkerPoolResource", com.pulumi.gcp.cloudrunv2.WorkerPoolArgs.builder()
        .location("string")
        .template(WorkerPoolTemplateArgs.builder()
            .annotations(Map.of("string", "string"))
            .containers(WorkerPoolTemplateContainerArgs.builder()
                .image("string")
                .args("string")
                .commands("string")
                .dependsOns("string")
                .envs(WorkerPoolTemplateContainerEnvArgs.builder()
                    .name("string")
                    .value("string")
                    .valueSource(WorkerPoolTemplateContainerEnvValueSourceArgs.builder()
                        .secretKeyRef(WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs.builder()
                            .secret("string")
                            .version("string")
                            .build())
                        .build())
                    .build())
                .name("string")
                .resources(WorkerPoolTemplateContainerResourcesArgs.builder()
                    .limits(Map.of("string", "string"))
                    .build())
                .volumeMounts(WorkerPoolTemplateContainerVolumeMountArgs.builder()
                    .mountPath("string")
                    .name("string")
                    .build())
                .workingDir("string")
                .build())
            .encryptionKey("string")
            .encryptionKeyRevocationAction("string")
            .encryptionKeyShutdownDuration("string")
            .gpuZonalRedundancyDisabled(false)
            .labels(Map.of("string", "string"))
            .nodeSelector(WorkerPoolTemplateNodeSelectorArgs.builder()
                .accelerator("string")
                .build())
            .revision("string")
            .serviceAccount("string")
            .volumes(WorkerPoolTemplateVolumeArgs.builder()
                .name("string")
                .cloudSqlInstance(WorkerPoolTemplateVolumeCloudSqlInstanceArgs.builder()
                    .instances("string")
                    .build())
                .emptyDir(WorkerPoolTemplateVolumeEmptyDirArgs.builder()
                    .medium("string")
                    .sizeLimit("string")
                    .build())
                .gcs(WorkerPoolTemplateVolumeGcsArgs.builder()
                    .bucket("string")
                    .mountOptions("string")
                    .readOnly(false)
                    .build())
                .nfs(WorkerPoolTemplateVolumeNfsArgs.builder()
                    .path("string")
                    .server("string")
                    .readOnly(false)
                    .build())
                .secret(WorkerPoolTemplateVolumeSecretArgs.builder()
                    .secret("string")
                    .defaultMode(0)
                    .items(WorkerPoolTemplateVolumeSecretItemArgs.builder()
                        .path("string")
                        .mode(0)
                        .version("string")
                        .build())
                    .build())
                .build())
            .vpcAccess(WorkerPoolTemplateVpcAccessArgs.builder()
                .egress("string")
                .networkInterfaces(WorkerPoolTemplateVpcAccessNetworkInterfaceArgs.builder()
                    .network("string")
                    .subnetwork("string")
                    .tags("string")
                    .build())
                .build())
            .build())
        .description("string")
        .clientVersion("string")
        .customAudiences("string")
        .deletionProtection(false)
        .annotations(Map.of("string", "string"))
        .instanceSplits(WorkerPoolInstanceSplitArgs.builder()
            .percent(0)
            .revision("string")
            .type("string")
            .build())
        .labels(Map.of("string", "string"))
        .launchStage("string")
        .client("string")
        .name("string")
        .project("string")
        .scaling(WorkerPoolScalingArgs.builder()
            .manualInstanceCount(0)
            .maxInstanceCount(0)
            .minInstanceCount(0)
            .scalingMode("string")
            .build())
        .binaryAuthorization(WorkerPoolBinaryAuthorizationArgs.builder()
            .breakglassJustification("string")
            .policy("string")
            .useDefault(false)
            .build())
        .build());
    
    gcp_worker_pool_resource = gcp.cloudrunv2.WorkerPool("gcpWorkerPoolResource",
        location="string",
        template={
            "annotations": {
                "string": "string",
            },
            "containers": [{
                "image": "string",
                "args": ["string"],
                "commands": ["string"],
                "depends_ons": ["string"],
                "envs": [{
                    "name": "string",
                    "value": "string",
                    "value_source": {
                        "secret_key_ref": {
                            "secret": "string",
                            "version": "string",
                        },
                    },
                }],
                "name": "string",
                "resources": {
                    "limits": {
                        "string": "string",
                    },
                },
                "volume_mounts": [{
                    "mount_path": "string",
                    "name": "string",
                }],
                "working_dir": "string",
            }],
            "encryption_key": "string",
            "encryption_key_revocation_action": "string",
            "encryption_key_shutdown_duration": "string",
            "gpu_zonal_redundancy_disabled": False,
            "labels": {
                "string": "string",
            },
            "node_selector": {
                "accelerator": "string",
            },
            "revision": "string",
            "service_account": "string",
            "volumes": [{
                "name": "string",
                "cloud_sql_instance": {
                    "instances": ["string"],
                },
                "empty_dir": {
                    "medium": "string",
                    "size_limit": "string",
                },
                "gcs": {
                    "bucket": "string",
                    "mount_options": ["string"],
                    "read_only": False,
                },
                "nfs": {
                    "path": "string",
                    "server": "string",
                    "read_only": False,
                },
                "secret": {
                    "secret": "string",
                    "default_mode": 0,
                    "items": [{
                        "path": "string",
                        "mode": 0,
                        "version": "string",
                    }],
                },
            }],
            "vpc_access": {
                "egress": "string",
                "network_interfaces": [{
                    "network": "string",
                    "subnetwork": "string",
                    "tags": ["string"],
                }],
            },
        },
        description="string",
        client_version="string",
        custom_audiences=["string"],
        deletion_protection=False,
        annotations={
            "string": "string",
        },
        instance_splits=[{
            "percent": 0,
            "revision": "string",
            "type": "string",
        }],
        labels={
            "string": "string",
        },
        launch_stage="string",
        client="string",
        name="string",
        project="string",
        scaling={
            "manual_instance_count": 0,
            "max_instance_count": 0,
            "min_instance_count": 0,
            "scaling_mode": "string",
        },
        binary_authorization={
            "breakglass_justification": "string",
            "policy": "string",
            "use_default": False,
        })
    
    const gcpWorkerPoolResource = new gcp.cloudrunv2.WorkerPool("gcpWorkerPoolResource", {
        location: "string",
        template: {
            annotations: {
                string: "string",
            },
            containers: [{
                image: "string",
                args: ["string"],
                commands: ["string"],
                dependsOns: ["string"],
                envs: [{
                    name: "string",
                    value: "string",
                    valueSource: {
                        secretKeyRef: {
                            secret: "string",
                            version: "string",
                        },
                    },
                }],
                name: "string",
                resources: {
                    limits: {
                        string: "string",
                    },
                },
                volumeMounts: [{
                    mountPath: "string",
                    name: "string",
                }],
                workingDir: "string",
            }],
            encryptionKey: "string",
            encryptionKeyRevocationAction: "string",
            encryptionKeyShutdownDuration: "string",
            gpuZonalRedundancyDisabled: false,
            labels: {
                string: "string",
            },
            nodeSelector: {
                accelerator: "string",
            },
            revision: "string",
            serviceAccount: "string",
            volumes: [{
                name: "string",
                cloudSqlInstance: {
                    instances: ["string"],
                },
                emptyDir: {
                    medium: "string",
                    sizeLimit: "string",
                },
                gcs: {
                    bucket: "string",
                    mountOptions: ["string"],
                    readOnly: false,
                },
                nfs: {
                    path: "string",
                    server: "string",
                    readOnly: false,
                },
                secret: {
                    secret: "string",
                    defaultMode: 0,
                    items: [{
                        path: "string",
                        mode: 0,
                        version: "string",
                    }],
                },
            }],
            vpcAccess: {
                egress: "string",
                networkInterfaces: [{
                    network: "string",
                    subnetwork: "string",
                    tags: ["string"],
                }],
            },
        },
        description: "string",
        clientVersion: "string",
        customAudiences: ["string"],
        deletionProtection: false,
        annotations: {
            string: "string",
        },
        instanceSplits: [{
            percent: 0,
            revision: "string",
            type: "string",
        }],
        labels: {
            string: "string",
        },
        launchStage: "string",
        client: "string",
        name: "string",
        project: "string",
        scaling: {
            manualInstanceCount: 0,
            maxInstanceCount: 0,
            minInstanceCount: 0,
            scalingMode: "string",
        },
        binaryAuthorization: {
            breakglassJustification: "string",
            policy: "string",
            useDefault: false,
        },
    });
    
    type: gcp:cloudrunv2:WorkerPool
    properties:
        annotations:
            string: string
        binaryAuthorization:
            breakglassJustification: string
            policy: string
            useDefault: false
        client: string
        clientVersion: string
        customAudiences:
            - string
        deletionProtection: false
        description: string
        instanceSplits:
            - percent: 0
              revision: string
              type: string
        labels:
            string: string
        launchStage: string
        location: string
        name: string
        project: string
        scaling:
            manualInstanceCount: 0
            maxInstanceCount: 0
            minInstanceCount: 0
            scalingMode: string
        template:
            annotations:
                string: string
            containers:
                - args:
                    - string
                  commands:
                    - string
                  dependsOns:
                    - string
                  envs:
                    - name: string
                      value: string
                      valueSource:
                        secretKeyRef:
                            secret: string
                            version: string
                  image: string
                  name: string
                  resources:
                    limits:
                        string: string
                  volumeMounts:
                    - mountPath: string
                      name: string
                  workingDir: string
            encryptionKey: string
            encryptionKeyRevocationAction: string
            encryptionKeyShutdownDuration: string
            gpuZonalRedundancyDisabled: false
            labels:
                string: string
            nodeSelector:
                accelerator: string
            revision: string
            serviceAccount: string
            volumes:
                - cloudSqlInstance:
                    instances:
                        - string
                  emptyDir:
                    medium: string
                    sizeLimit: string
                  gcs:
                    bucket: string
                    mountOptions:
                        - string
                    readOnly: false
                  name: string
                  nfs:
                    path: string
                    readOnly: false
                    server: string
                  secret:
                    defaultMode: 0
                    items:
                        - mode: 0
                          path: string
                          version: string
                    secret: string
            vpcAccess:
                egress: string
                networkInterfaces:
                    - network: string
                      subnetwork: string
                      tags:
                        - string
    

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

    Location string
    The location of the cloud run worker pool
    Template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    Annotations Dictionary<string, string>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    BinaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    Client string
    Arbitrary identifier for the API client.
    ClientVersion string
    Arbitrary version identifier for the API client.
    CustomAudiences List<string>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    DeletionProtection bool
    Description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    InstanceSplits List<WorkerPoolInstanceSplit>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    Labels Dictionary<string, string>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    LaunchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    Name string
    Name of the WorkerPool.
    Project string
    Scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    Location string
    The location of the cloud run worker pool
    Template WorkerPoolTemplateArgs
    The template used to create revisions for this WorkerPool. Structure is documented below.
    Annotations map[string]string
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    BinaryAuthorization WorkerPoolBinaryAuthorizationArgs
    Settings for the Binary Authorization feature.
    Client string
    Arbitrary identifier for the API client.
    ClientVersion string
    Arbitrary version identifier for the API client.
    CustomAudiences []string
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    DeletionProtection bool
    Description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    InstanceSplits []WorkerPoolInstanceSplitArgs
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    Labels map[string]string
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    LaunchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    Name string
    Name of the WorkerPool.
    Project string
    Scaling WorkerPoolScalingArgs
    Scaling settings that apply to the worker pool.
    location String
    The location of the cloud run worker pool
    template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    annotations Map<String,String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    client String
    Arbitrary identifier for the API client.
    clientVersion String
    Arbitrary version identifier for the API client.
    customAudiences List<String>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deletionProtection Boolean
    description String
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    instanceSplits List<WorkerPoolInstanceSplit>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Map<String,String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    launchStage String
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    name String
    Name of the WorkerPool.
    project String
    scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    location string
    The location of the cloud run worker pool
    template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    annotations {[key: string]: string}
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    client string
    Arbitrary identifier for the API client.
    clientVersion string
    Arbitrary version identifier for the API client.
    customAudiences string[]
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deletionProtection boolean
    description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    instanceSplits WorkerPoolInstanceSplit[]
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels {[key: string]: string}
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    launchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    name string
    Name of the WorkerPool.
    project string
    scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    location str
    The location of the cloud run worker pool
    template WorkerPoolTemplateArgs
    The template used to create revisions for this WorkerPool. Structure is documented below.
    annotations Mapping[str, str]
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binary_authorization WorkerPoolBinaryAuthorizationArgs
    Settings for the Binary Authorization feature.
    client str
    Arbitrary identifier for the API client.
    client_version str
    Arbitrary version identifier for the API client.
    custom_audiences Sequence[str]
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deletion_protection bool
    description str
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    instance_splits Sequence[WorkerPoolInstanceSplitArgs]
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Mapping[str, str]
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    launch_stage str
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    name str
    Name of the WorkerPool.
    project str
    scaling WorkerPoolScalingArgs
    Scaling settings that apply to the worker pool.
    location String
    The location of the cloud run worker pool
    template Property Map
    The template used to create revisions for this WorkerPool. Structure is documented below.
    annotations Map<String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization Property Map
    Settings for the Binary Authorization feature.
    client String
    Arbitrary identifier for the API client.
    clientVersion String
    Arbitrary version identifier for the API client.
    customAudiences List<String>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deletionProtection Boolean
    description String
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    instanceSplits List<Property Map>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Map<String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    launchStage String
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    name String
    Name of the WorkerPool.
    project String
    scaling Property Map
    Scaling settings that apply to the worker pool.

    Outputs

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

    Conditions List<WorkerPoolCondition>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    CreateTime string
    The creation time.
    Creator string
    Email address of the authenticated creator.
    DeleteTime string
    The deletion time.
    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.
    Etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    ExpireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    Generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    Id string
    The provider-assigned unique ID for this managed resource.
    InstanceSplitStatuses List<WorkerPoolInstanceSplitStatus>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    LastModifier string
    Email address of the last authenticated modifier.
    LatestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LatestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    ObservedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    TerminalConditions List<WorkerPoolTerminalCondition>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    Uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    UpdateTime string
    The last-modified time.
    Conditions []WorkerPoolCondition
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    CreateTime string
    The creation time.
    Creator string
    Email address of the authenticated creator.
    DeleteTime string
    The deletion time.
    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.
    Etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    ExpireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    Generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    Id string
    The provider-assigned unique ID for this managed resource.
    InstanceSplitStatuses []WorkerPoolInstanceSplitStatus
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    LastModifier string
    Email address of the last authenticated modifier.
    LatestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LatestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    ObservedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    TerminalConditions []WorkerPoolTerminalCondition
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    Uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    UpdateTime string
    The last-modified time.
    conditions List<WorkerPoolCondition>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime String
    The creation time.
    creator String
    Email address of the authenticated creator.
    deleteTime String
    The deletion time.
    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.
    etag String
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime String
    For a deleted resource, the time after which it will be permanently deleted.
    generation String
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    id String
    The provider-assigned unique ID for this managed resource.
    instanceSplitStatuses List<WorkerPoolInstanceSplitStatus>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    lastModifier String
    Email address of the last authenticated modifier.
    latestCreatedRevision String
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision String
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    observedGeneration String
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling Boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    terminalConditions List<WorkerPoolTerminalCondition>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid String
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime String
    The last-modified time.
    conditions WorkerPoolCondition[]
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime string
    The creation time.
    creator string
    Email address of the authenticated creator.
    deleteTime string
    The deletion time.
    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.
    etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    id string
    The provider-assigned unique ID for this managed resource.
    instanceSplitStatuses WorkerPoolInstanceSplitStatus[]
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    lastModifier string
    Email address of the last authenticated modifier.
    latestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    observedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    terminalConditions WorkerPoolTerminalCondition[]
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime string
    The last-modified time.
    conditions Sequence[WorkerPoolCondition]
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    create_time str
    The creation time.
    creator str
    Email address of the authenticated creator.
    delete_time str
    The deletion time.
    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.
    etag str
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expire_time str
    For a deleted resource, the time after which it will be permanently deleted.
    generation str
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    id str
    The provider-assigned unique ID for this managed resource.
    instance_split_statuses Sequence[WorkerPoolInstanceSplitStatus]
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    last_modifier str
    Email address of the last authenticated modifier.
    latest_created_revision str
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latest_ready_revision str
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    observed_generation str
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    terminal_conditions Sequence[WorkerPoolTerminalCondition]
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid str
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    update_time str
    The last-modified time.
    conditions List<Property Map>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime String
    The creation time.
    creator String
    Email address of the authenticated creator.
    deleteTime String
    The deletion time.
    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.
    etag String
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime String
    For a deleted resource, the time after which it will be permanently deleted.
    generation String
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    id String
    The provider-assigned unique ID for this managed resource.
    instanceSplitStatuses List<Property Map>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    lastModifier String
    Email address of the last authenticated modifier.
    latestCreatedRevision String
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision String
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    observedGeneration String
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling Boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    terminalConditions List<Property Map>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid String
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime String
    The last-modified time.

    Look up Existing WorkerPool Resource

    Get an existing WorkerPool 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?: WorkerPoolState, opts?: CustomResourceOptions): WorkerPool
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            annotations: Optional[Mapping[str, str]] = None,
            binary_authorization: Optional[WorkerPoolBinaryAuthorizationArgs] = None,
            client: Optional[str] = None,
            client_version: Optional[str] = None,
            conditions: Optional[Sequence[WorkerPoolConditionArgs]] = None,
            create_time: Optional[str] = None,
            creator: Optional[str] = None,
            custom_audiences: Optional[Sequence[str]] = None,
            delete_time: Optional[str] = None,
            deletion_protection: Optional[bool] = None,
            description: Optional[str] = None,
            effective_annotations: Optional[Mapping[str, str]] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            etag: Optional[str] = None,
            expire_time: Optional[str] = None,
            generation: Optional[str] = None,
            instance_split_statuses: Optional[Sequence[WorkerPoolInstanceSplitStatusArgs]] = None,
            instance_splits: Optional[Sequence[WorkerPoolInstanceSplitArgs]] = None,
            labels: Optional[Mapping[str, str]] = None,
            last_modifier: Optional[str] = None,
            latest_created_revision: Optional[str] = None,
            latest_ready_revision: Optional[str] = None,
            launch_stage: Optional[str] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            observed_generation: Optional[str] = None,
            project: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            reconciling: Optional[bool] = None,
            scaling: Optional[WorkerPoolScalingArgs] = None,
            template: Optional[WorkerPoolTemplateArgs] = None,
            terminal_conditions: Optional[Sequence[WorkerPoolTerminalConditionArgs]] = None,
            uid: Optional[str] = None,
            update_time: Optional[str] = None) -> WorkerPool
    func GetWorkerPool(ctx *Context, name string, id IDInput, state *WorkerPoolState, opts ...ResourceOption) (*WorkerPool, error)
    public static WorkerPool Get(string name, Input<string> id, WorkerPoolState? state, CustomResourceOptions? opts = null)
    public static WorkerPool get(String name, Output<String> id, WorkerPoolState state, CustomResourceOptions options)
    resources:  _:    type: gcp:cloudrunv2:WorkerPool    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>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    BinaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    Client string
    Arbitrary identifier for the API client.
    ClientVersion string
    Arbitrary version identifier for the API client.
    Conditions List<WorkerPoolCondition>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    CreateTime string
    The creation time.
    Creator string
    Email address of the authenticated creator.
    CustomAudiences List<string>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    DeleteTime string
    The deletion time.
    DeletionProtection bool
    Description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    Etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    ExpireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    Generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    InstanceSplitStatuses List<WorkerPoolInstanceSplitStatus>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    InstanceSplits List<WorkerPoolInstanceSplit>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    Labels Dictionary<string, string>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    LastModifier string
    Email address of the last authenticated modifier.
    LatestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LatestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LaunchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    Location string
    The location of the cloud run worker pool
    Name string
    Name of the WorkerPool.
    ObservedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    Project string
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    Scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    Template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    TerminalConditions List<WorkerPoolTerminalCondition>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    Uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    UpdateTime string
    The last-modified time.
    Annotations map[string]string
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    BinaryAuthorization WorkerPoolBinaryAuthorizationArgs
    Settings for the Binary Authorization feature.
    Client string
    Arbitrary identifier for the API client.
    ClientVersion string
    Arbitrary version identifier for the API client.
    Conditions []WorkerPoolConditionArgs
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    CreateTime string
    The creation time.
    Creator string
    Email address of the authenticated creator.
    CustomAudiences []string
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    DeleteTime string
    The deletion time.
    DeletionProtection bool
    Description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    Etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    ExpireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    Generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    InstanceSplitStatuses []WorkerPoolInstanceSplitStatusArgs
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    InstanceSplits []WorkerPoolInstanceSplitArgs
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    Labels map[string]string
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    LastModifier string
    Email address of the last authenticated modifier.
    LatestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LatestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    LaunchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    Location string
    The location of the cloud run worker pool
    Name string
    Name of the WorkerPool.
    ObservedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    Project string
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    Reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    Scaling WorkerPoolScalingArgs
    Scaling settings that apply to the worker pool.
    Template WorkerPoolTemplateArgs
    The template used to create revisions for this WorkerPool. Structure is documented below.
    TerminalConditions []WorkerPoolTerminalConditionArgs
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    Uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    UpdateTime string
    The last-modified time.
    annotations Map<String,String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    client String
    Arbitrary identifier for the API client.
    clientVersion String
    Arbitrary version identifier for the API client.
    conditions List<WorkerPoolCondition>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime String
    The creation time.
    creator String
    Email address of the authenticated creator.
    customAudiences List<String>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deleteTime String
    The deletion time.
    deletionProtection Boolean
    description String
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    etag String
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime String
    For a deleted resource, the time after which it will be permanently deleted.
    generation String
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    instanceSplitStatuses List<WorkerPoolInstanceSplitStatus>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    instanceSplits List<WorkerPoolInstanceSplit>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Map<String,String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    lastModifier String
    Email address of the last authenticated modifier.
    latestCreatedRevision String
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision String
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    launchStage String
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    location String
    The location of the cloud run worker pool
    name String
    Name of the WorkerPool.
    observedGeneration String
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    project String
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling Boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    terminalConditions List<WorkerPoolTerminalCondition>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid String
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime String
    The last-modified time.
    annotations {[key: string]: string}
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization WorkerPoolBinaryAuthorization
    Settings for the Binary Authorization feature.
    client string
    Arbitrary identifier for the API client.
    clientVersion string
    Arbitrary version identifier for the API client.
    conditions WorkerPoolCondition[]
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime string
    The creation time.
    creator string
    Email address of the authenticated creator.
    customAudiences string[]
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deleteTime string
    The deletion time.
    deletionProtection boolean
    description string
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    etag string
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime string
    For a deleted resource, the time after which it will be permanently deleted.
    generation string
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    instanceSplitStatuses WorkerPoolInstanceSplitStatus[]
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    instanceSplits WorkerPoolInstanceSplit[]
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels {[key: string]: string}
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    lastModifier string
    Email address of the last authenticated modifier.
    latestCreatedRevision string
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision string
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    launchStage string
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    location string
    The location of the cloud run worker pool
    name string
    Name of the WorkerPool.
    observedGeneration string
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    project string
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    scaling WorkerPoolScaling
    Scaling settings that apply to the worker pool.
    template WorkerPoolTemplate
    The template used to create revisions for this WorkerPool. Structure is documented below.
    terminalConditions WorkerPoolTerminalCondition[]
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid string
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime string
    The last-modified time.
    annotations Mapping[str, str]
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binary_authorization WorkerPoolBinaryAuthorizationArgs
    Settings for the Binary Authorization feature.
    client str
    Arbitrary identifier for the API client.
    client_version str
    Arbitrary version identifier for the API client.
    conditions Sequence[WorkerPoolConditionArgs]
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    create_time str
    The creation time.
    creator str
    Email address of the authenticated creator.
    custom_audiences Sequence[str]
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    delete_time str
    The deletion time.
    deletion_protection bool
    description str
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    etag str
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expire_time str
    For a deleted resource, the time after which it will be permanently deleted.
    generation str
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    instance_split_statuses Sequence[WorkerPoolInstanceSplitStatusArgs]
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    instance_splits Sequence[WorkerPoolInstanceSplitArgs]
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Mapping[str, str]
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    last_modifier str
    Email address of the last authenticated modifier.
    latest_created_revision str
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latest_ready_revision str
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    launch_stage str
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    location str
    The location of the cloud run worker pool
    name str
    Name of the WorkerPool.
    observed_generation str
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    project str
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling bool
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    scaling WorkerPoolScalingArgs
    Scaling settings that apply to the worker pool.
    template WorkerPoolTemplateArgs
    The template used to create revisions for this WorkerPool. Structure is documented below.
    terminal_conditions Sequence[WorkerPoolTerminalConditionArgs]
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid str
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    update_time str
    The last-modified time.
    annotations Map<String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected in new resources. All system annotations in v1 now have a corresponding field in v2 WorkerPool. This field follows Kubernetes annotations' namespacing, limits, and rules. 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.
    binaryAuthorization Property Map
    Settings for the Binary Authorization feature.
    client String
    Arbitrary identifier for the API client.
    clientVersion String
    Arbitrary version identifier for the API client.
    conditions List<Property Map>
    The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the WorkerPool does not reach its Serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    createTime String
    The creation time.
    creator String
    Email address of the authenticated creator.
    customAudiences List<String>
    One or more custom audiences that you want this worker pool to support. Specify each custom audience as the full URL in a string. The custom audiences are encoded in the token and used to authenticate requests. For more information, see https://cloud.google.com/run/docs/configuring/custom-audiences.
    deleteTime String
    The deletion time.
    deletionProtection Boolean
    description String
    User-provided description of the WorkerPool. This field currently has a 512-character limit.
    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.
    etag String
    A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
    expireTime String
    For a deleted resource, the time after which it will be permanently deleted.
    generation String
    A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    instanceSplitStatuses List<Property Map>
    Detailed status information for corresponding instance splits. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    instanceSplits List<Property Map>
    Specifies how to distribute instances over a collection of Revisions belonging to the WorkerPool. If instance split is empty or not provided, defaults to 100% instances assigned to the latest Ready Revision.
    labels Map<String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with 'run.googleapis.com', 'cloud.googleapis.com', 'serving.knative.dev', or 'autoscaling.knative.dev' namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPool. 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.
    lastModifier String
    Email address of the last authenticated modifier.
    latestCreatedRevision String
    Name of the last created revision. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    latestReadyRevision String
    Name of the latest revision that is serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run.
    launchStage String
    The launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values: ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
    location String
    The location of the cloud run worker pool
    name String
    Name of the WorkerPool.
    observedGeneration String
    The generation of this WorkerPool currently serving traffic. See comments in reconciling for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a string instead of an integer.
    project String
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    reconciling Boolean
    Returns true if the WorkerPool is currently being acted upon by the system to bring it into the desired state. When a new WorkerPool is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the WorkerPool to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the WorkerPool, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state. If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision. If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created WorkerPools. Additional information on the failure can be found in terminalCondition and conditions.
    scaling Property Map
    Scaling settings that apply to the worker pool.
    template Property Map
    The template used to create revisions for this WorkerPool. Structure is documented below.
    terminalConditions List<Property Map>
    The Condition of this WorkerPool, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run. Structure is documented below.
    uid String
    Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
    updateTime String
    The last-modified time.

    Supporting Types

    WorkerPoolBinaryAuthorization, WorkerPoolBinaryAuthorizationArgs

    BreakglassJustification string
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    Policy string
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    UseDefault bool
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.
    BreakglassJustification string
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    Policy string
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    UseDefault bool
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.
    breakglassJustification String
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    policy String
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    useDefault Boolean
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.
    breakglassJustification string
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    policy string
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    useDefault boolean
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.
    breakglass_justification str
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    policy str
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    use_default bool
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.
    breakglassJustification String
    If present, indicates to use Breakglass using this justification. If useDefault is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass
    policy String
    The path to a binary authorization policy. Format: projects/{project}/platforms/cloudRun/{policy-name}
    useDefault Boolean
    If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled.

    WorkerPoolCondition, WorkerPoolConditionArgs

    ExecutionReason string
    (Output) A reason for the execution condition.
    LastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) A common (workerPool-level) reason for this condition.
    RevisionReason string
    (Output) A reason for the revision condition.
    Severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    State string
    (Output) State of the condition.
    Type string
    (Output) The allocation type for this instance split.
    ExecutionReason string
    (Output) A reason for the execution condition.
    LastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) A common (workerPool-level) reason for this condition.
    RevisionReason string
    (Output) A reason for the revision condition.
    Severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    State string
    (Output) State of the condition.
    Type string
    (Output) The allocation type for this instance split.
    executionReason String
    (Output) A reason for the execution condition.
    lastTransitionTime String
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason String
    (Output) A reason for the revision condition.
    severity String
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state String
    (Output) State of the condition.
    type String
    (Output) The allocation type for this instance split.
    executionReason string
    (Output) A reason for the execution condition.
    lastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message string
    (Output) Human readable message indicating details about the current status.
    reason string
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason string
    (Output) A reason for the revision condition.
    severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state string
    (Output) State of the condition.
    type string
    (Output) The allocation type for this instance split.
    execution_reason str
    (Output) A reason for the execution condition.
    last_transition_time str
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message str
    (Output) Human readable message indicating details about the current status.
    reason str
    (Output) A common (workerPool-level) reason for this condition.
    revision_reason str
    (Output) A reason for the revision condition.
    severity str
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state str
    (Output) State of the condition.
    type str
    (Output) The allocation type for this instance split.
    executionReason String
    (Output) A reason for the execution condition.
    lastTransitionTime String
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason String
    (Output) A reason for the revision condition.
    severity String
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state String
    (Output) State of the condition.
    type String
    (Output) The allocation type for this instance split.

    WorkerPoolInstanceSplit, WorkerPoolInstanceSplitArgs

    Percent int
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    Revision string
    Revision to which to assign this portion of instances, if split allocation is by revision.
    Type string
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.
    Percent int
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    Revision string
    Revision to which to assign this portion of instances, if split allocation is by revision.
    Type string
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.
    percent Integer
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    revision String
    Revision to which to assign this portion of instances, if split allocation is by revision.
    type String
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.
    percent number
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    revision string
    Revision to which to assign this portion of instances, if split allocation is by revision.
    type string
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.
    percent int
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    revision str
    Revision to which to assign this portion of instances, if split allocation is by revision.
    type str
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.
    percent Number
    Specifies percent of the instance split to this Revision. This defaults to zero if unspecified.
    revision String
    Revision to which to assign this portion of instances, if split allocation is by revision.
    type String
    The allocation type for this instance split. Possible values are: INSTANCE_SPLIT_ALLOCATION_TYPE_LATEST, INSTANCE_SPLIT_ALLOCATION_TYPE_REVISION.

    WorkerPoolInstanceSplitStatus, WorkerPoolInstanceSplitStatusArgs

    Percent int
    (Output) Specifies percent of the instance split to this Revision.
    Revision string
    (Output) Revision to which this instance split is assigned.
    Type string
    (Output) The allocation type for this instance split.
    Percent int
    (Output) Specifies percent of the instance split to this Revision.
    Revision string
    (Output) Revision to which this instance split is assigned.
    Type string
    (Output) The allocation type for this instance split.
    percent Integer
    (Output) Specifies percent of the instance split to this Revision.
    revision String
    (Output) Revision to which this instance split is assigned.
    type String
    (Output) The allocation type for this instance split.
    percent number
    (Output) Specifies percent of the instance split to this Revision.
    revision string
    (Output) Revision to which this instance split is assigned.
    type string
    (Output) The allocation type for this instance split.
    percent int
    (Output) Specifies percent of the instance split to this Revision.
    revision str
    (Output) Revision to which this instance split is assigned.
    type str
    (Output) The allocation type for this instance split.
    percent Number
    (Output) Specifies percent of the instance split to this Revision.
    revision String
    (Output) Revision to which this instance split is assigned.
    type String
    (Output) The allocation type for this instance split.

    WorkerPoolScaling, WorkerPoolScalingArgs

    ManualInstanceCount int
    The total number of instances in manual scaling mode.
    MaxInstanceCount int
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    MinInstanceCount int
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    ScalingMode string
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.
    ManualInstanceCount int
    The total number of instances in manual scaling mode.
    MaxInstanceCount int
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    MinInstanceCount int
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    ScalingMode string
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.
    manualInstanceCount Integer
    The total number of instances in manual scaling mode.
    maxInstanceCount Integer
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    minInstanceCount Integer
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    scalingMode String
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.
    manualInstanceCount number
    The total number of instances in manual scaling mode.
    maxInstanceCount number
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    minInstanceCount number
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    scalingMode string
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.
    manual_instance_count int
    The total number of instances in manual scaling mode.
    max_instance_count int
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    min_instance_count int
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    scaling_mode str
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.
    manualInstanceCount Number
    The total number of instances in manual scaling mode.
    maxInstanceCount Number
    The maximum count of instances distributed among revisions based on the specified instance split percentages.
    minInstanceCount Number
    The minimum count of instances distributed among revisions based on the specified instance split percentages.
    scalingMode String
    The scaling mode for the worker pool. It defaults to MANUAL. Possible values are: AUTOMATIC, MANUAL.

    WorkerPoolTemplate, WorkerPoolTemplateArgs

    Annotations Dictionary<string, string>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    Containers List<WorkerPoolTemplateContainer>
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    EncryptionKey string
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    EncryptionKeyRevocationAction string
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    EncryptionKeyShutdownDuration string
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    GpuZonalRedundancyDisabled bool
    True if GPU zonal redundancy is disabled on this revision.
    Labels Dictionary<string, string>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    NodeSelector WorkerPoolTemplateNodeSelector
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    Revision string
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    ServiceAccount string
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    Volumes List<WorkerPoolTemplateVolume>
    A list of Volumes to make available to containers. Structure is documented below.
    VpcAccess WorkerPoolTemplateVpcAccess
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.
    Annotations map[string]string
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    Containers []WorkerPoolTemplateContainer
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    EncryptionKey string
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    EncryptionKeyRevocationAction string
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    EncryptionKeyShutdownDuration string
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    GpuZonalRedundancyDisabled bool
    True if GPU zonal redundancy is disabled on this revision.
    Labels map[string]string
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    NodeSelector WorkerPoolTemplateNodeSelector
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    Revision string
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    ServiceAccount string
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    Volumes []WorkerPoolTemplateVolume
    A list of Volumes to make available to containers. Structure is documented below.
    VpcAccess WorkerPoolTemplateVpcAccess
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.
    annotations Map<String,String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    containers List<WorkerPoolTemplateContainer>
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    encryptionKey String
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    encryptionKeyRevocationAction String
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    encryptionKeyShutdownDuration String
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    gpuZonalRedundancyDisabled Boolean
    True if GPU zonal redundancy is disabled on this revision.
    labels Map<String,String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    nodeSelector WorkerPoolTemplateNodeSelector
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    revision String
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    serviceAccount String
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    volumes List<WorkerPoolTemplateVolume>
    A list of Volumes to make available to containers. Structure is documented below.
    vpcAccess WorkerPoolTemplateVpcAccess
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.
    annotations {[key: string]: string}
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    containers WorkerPoolTemplateContainer[]
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    encryptionKey string
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    encryptionKeyRevocationAction string
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    encryptionKeyShutdownDuration string
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    gpuZonalRedundancyDisabled boolean
    True if GPU zonal redundancy is disabled on this revision.
    labels {[key: string]: string}
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    nodeSelector WorkerPoolTemplateNodeSelector
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    revision string
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    serviceAccount string
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    volumes WorkerPoolTemplateVolume[]
    A list of Volumes to make available to containers. Structure is documented below.
    vpcAccess WorkerPoolTemplateVpcAccess
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.
    annotations Mapping[str, str]
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    containers Sequence[WorkerPoolTemplateContainer]
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    encryption_key str
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    encryption_key_revocation_action str
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    encryption_key_shutdown_duration str
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    gpu_zonal_redundancy_disabled bool
    True if GPU zonal redundancy is disabled on this revision.
    labels Mapping[str, str]
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    node_selector WorkerPoolTemplateNodeSelector
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    revision str
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    service_account str
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    volumes Sequence[WorkerPoolTemplateVolume]
    A list of Volumes to make available to containers. Structure is documented below.
    vpc_access WorkerPoolTemplateVpcAccess
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.
    annotations Map<String>
    Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules.
    containers List<Property Map>
    Holds the containers that define the unit of execution for this WorkerPool. Structure is documented below.
    encryptionKey String
    A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek
    encryptionKeyRevocationAction String
    The action to take if the encryption key is revoked. Possible values are: PREVENT_NEW, SHUTDOWN.
    encryptionKeyShutdownDuration String
    If encryptionKeyRevocationAction is SHUTDOWN, the duration before shutting down all instances. The minimum increment is 1 hour. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
    gpuZonalRedundancyDisabled Boolean
    True if GPU zonal redundancy is disabled on this revision.
    labels Map<String>
    Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 WorkerPoolRevisionTemplate.
    nodeSelector Property Map
    Node Selector describes the hardware requirements of the resources. Structure is documented below.
    revision String
    The unique name for the revision. If this field is omitted, it will be automatically generated based on the WorkerPool name.
    serviceAccount String
    Email address of the IAM service account associated with the revision of the WorkerPool. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account.
    volumes List<Property Map>
    A list of Volumes to make available to containers. Structure is documented below.
    vpcAccess Property Map
    VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Structure is documented below.

    WorkerPoolTemplateContainer, WorkerPoolTemplateContainerArgs

    Image string
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    Args List<string>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    Commands List<string>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    DependsOns List<string>
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    Envs List<WorkerPoolTemplateContainerEnv>
    List of environment variables to set in the container. Structure is documented below.
    Name string
    Name of the container specified as a DNS_LABEL.
    Resources WorkerPoolTemplateContainerResources
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    VolumeMounts List<WorkerPoolTemplateContainerVolumeMount>
    Volume to mount into the container's filesystem. Structure is documented below.
    WorkingDir string
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.
    Image string
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    Args []string
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    Commands []string
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    DependsOns []string
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    Envs []WorkerPoolTemplateContainerEnv
    List of environment variables to set in the container. Structure is documented below.
    Name string
    Name of the container specified as a DNS_LABEL.
    Resources WorkerPoolTemplateContainerResources
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    VolumeMounts []WorkerPoolTemplateContainerVolumeMount
    Volume to mount into the container's filesystem. Structure is documented below.
    WorkingDir string
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.
    image String
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    args List<String>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    commands List<String>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    dependsOns List<String>
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    envs List<WorkerPoolTemplateContainerEnv>
    List of environment variables to set in the container. Structure is documented below.
    name String
    Name of the container specified as a DNS_LABEL.
    resources WorkerPoolTemplateContainerResources
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    volumeMounts List<WorkerPoolTemplateContainerVolumeMount>
    Volume to mount into the container's filesystem. Structure is documented below.
    workingDir String
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.
    image string
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    args string[]
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    commands string[]
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    dependsOns string[]
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    envs WorkerPoolTemplateContainerEnv[]
    List of environment variables to set in the container. Structure is documented below.
    name string
    Name of the container specified as a DNS_LABEL.
    resources WorkerPoolTemplateContainerResources
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    volumeMounts WorkerPoolTemplateContainerVolumeMount[]
    Volume to mount into the container's filesystem. Structure is documented below.
    workingDir string
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.
    image str
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    args Sequence[str]
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    commands Sequence[str]
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    depends_ons Sequence[str]
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    envs Sequence[WorkerPoolTemplateContainerEnv]
    List of environment variables to set in the container. Structure is documented below.
    name str
    Name of the container specified as a DNS_LABEL.
    resources WorkerPoolTemplateContainerResources
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    volume_mounts Sequence[WorkerPoolTemplateContainerVolumeMount]
    Volume to mount into the container's filesystem. Structure is documented below.
    working_dir str
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.
    image String
    URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images
    args List<String>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references are not supported in Cloud Run.
    commands List<String>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
    dependsOns List<String>
    Containers which should be started before this container. If specified the container will wait to start until all containers with the listed names are healthy.
    envs List<Property Map>
    List of environment variables to set in the container. Structure is documented below.
    name String
    Name of the container specified as a DNS_LABEL.
    resources Property Map
    Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.
    volumeMounts List<Property Map>
    Volume to mount into the container's filesystem. Structure is documented below.
    workingDir String
    Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    WorkerPoolTemplateContainerEnv, WorkerPoolTemplateContainerEnvArgs

    Name string
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    Value string
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    ValueSource WorkerPoolTemplateContainerEnvValueSource
    Source for the environment variable's value. Structure is documented below.
    Name string
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    Value string
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    ValueSource WorkerPoolTemplateContainerEnvValueSource
    Source for the environment variable's value. Structure is documented below.
    name String
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    value String
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    valueSource WorkerPoolTemplateContainerEnvValueSource
    Source for the environment variable's value. Structure is documented below.
    name string
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    value string
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    valueSource WorkerPoolTemplateContainerEnvValueSource
    Source for the environment variable's value. Structure is documented below.
    name str
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    value str
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    value_source WorkerPoolTemplateContainerEnvValueSource
    Source for the environment variable's value. Structure is documented below.
    name String
    Name of the environment variable. Must be a C_IDENTIFIER, and may not exceed 32768 characters.
    value String
    Literal value of the environment variable. Defaults to "" and the maximum allowed length is 32768 characters. Variable references are not supported in Cloud Run.
    valueSource Property Map
    Source for the environment variable's value. Structure is documented below.

    WorkerPoolTemplateContainerEnvValueSource, WorkerPoolTemplateContainerEnvValueSourceArgs

    SecretKeyRef WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.
    SecretKeyRef WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.
    secretKeyRef WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.
    secretKeyRef WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.
    secret_key_ref WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.
    secretKeyRef Property Map
    Selects a secret and a specific version from Cloud Secret Manager. Structure is documented below.

    WorkerPoolTemplateContainerEnvValueSourceSecretKeyRef, WorkerPoolTemplateContainerEnvValueSourceSecretKeyRefArgs

    Secret string
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    Version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.
    Secret string
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    Version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.
    secret String
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    version String
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.
    secret string
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.
    secret str
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    version str
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.
    secret String
    The name of the secret in Cloud Secret Manager. Format: {secretName} if the secret is in the same project. projects/{project}/secrets/{secretName} if the secret is in a different project.
    version String
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version.

    WorkerPoolTemplateContainerResources, WorkerPoolTemplateContainerResourcesArgs

    Limits Dictionary<string, string>
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
    Limits map[string]string
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
    limits Map<String,String>
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
    limits {[key: string]: string}
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
    limits Mapping[str, str]
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
    limits Map<String>
    Only memory, CPU, and nvidia.com/gpu are supported. Use key cpu for CPU limit, memory for memory limit, nvidia.com/gpu for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go

    WorkerPoolTemplateContainerVolumeMount, WorkerPoolTemplateContainerVolumeMountArgs

    MountPath string
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    Name string
    This must match the Name of a Volume.
    MountPath string
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    Name string
    This must match the Name of a Volume.
    mountPath String
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    name String
    This must match the Name of a Volume.
    mountPath string
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    name string
    This must match the Name of a Volume.
    mount_path str
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    name str
    This must match the Name of a Volume.
    mountPath String
    Path within the container at which the volume should be mounted. Must not contain ':'. For Cloud SQL volumes, it can be left empty, or must otherwise be /cloudsql. All instances defined in the Volume will be available as /cloudsql/[instance]. For more information on Cloud SQL volumes, visit https://cloud.google.com/sql/docs/mysql/connect-run
    name String
    This must match the Name of a Volume.

    WorkerPoolTemplateNodeSelector, WorkerPoolTemplateNodeSelectorArgs

    Accelerator string
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    Accelerator string
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    accelerator String
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    accelerator string
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    accelerator str
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    accelerator String
    The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.


    WorkerPoolTemplateVolume, WorkerPoolTemplateVolumeArgs

    Name string
    Volume's name.
    CloudSqlInstance WorkerPoolTemplateVolumeCloudSqlInstance
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    EmptyDir WorkerPoolTemplateVolumeEmptyDir
    Ephemeral storage used as a shared volume. Structure is documented below.
    Gcs WorkerPoolTemplateVolumeGcs
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    Nfs WorkerPoolTemplateVolumeNfs
    Represents an NFS mount. Structure is documented below.
    Secret WorkerPoolTemplateVolumeSecret
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.
    Name string
    Volume's name.
    CloudSqlInstance WorkerPoolTemplateVolumeCloudSqlInstance
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    EmptyDir WorkerPoolTemplateVolumeEmptyDir
    Ephemeral storage used as a shared volume. Structure is documented below.
    Gcs WorkerPoolTemplateVolumeGcs
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    Nfs WorkerPoolTemplateVolumeNfs
    Represents an NFS mount. Structure is documented below.
    Secret WorkerPoolTemplateVolumeSecret
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.
    name String
    Volume's name.
    cloudSqlInstance WorkerPoolTemplateVolumeCloudSqlInstance
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    emptyDir WorkerPoolTemplateVolumeEmptyDir
    Ephemeral storage used as a shared volume. Structure is documented below.
    gcs WorkerPoolTemplateVolumeGcs
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    nfs WorkerPoolTemplateVolumeNfs
    Represents an NFS mount. Structure is documented below.
    secret WorkerPoolTemplateVolumeSecret
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.
    name string
    Volume's name.
    cloudSqlInstance WorkerPoolTemplateVolumeCloudSqlInstance
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    emptyDir WorkerPoolTemplateVolumeEmptyDir
    Ephemeral storage used as a shared volume. Structure is documented below.
    gcs WorkerPoolTemplateVolumeGcs
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    nfs WorkerPoolTemplateVolumeNfs
    Represents an NFS mount. Structure is documented below.
    secret WorkerPoolTemplateVolumeSecret
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.
    name str
    Volume's name.
    cloud_sql_instance WorkerPoolTemplateVolumeCloudSqlInstance
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    empty_dir WorkerPoolTemplateVolumeEmptyDir
    Ephemeral storage used as a shared volume. Structure is documented below.
    gcs WorkerPoolTemplateVolumeGcs
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    nfs WorkerPoolTemplateVolumeNfs
    Represents an NFS mount. Structure is documented below.
    secret WorkerPoolTemplateVolumeSecret
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.
    name String
    Volume's name.
    cloudSqlInstance Property Map
    For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Structure is documented below.
    emptyDir Property Map
    Ephemeral storage used as a shared volume. Structure is documented below.
    gcs Property Map
    Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment. Structure is documented below.
    nfs Property Map
    Represents an NFS mount. Structure is documented below.
    secret Property Map
    Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret Structure is documented below.

    WorkerPoolTemplateVolumeCloudSqlInstance, WorkerPoolTemplateVolumeCloudSqlInstanceArgs

    Instances List<string>
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}
    Instances []string
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}
    instances List<String>
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}
    instances string[]
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}
    instances Sequence[str]
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}
    instances List<String>
    The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project}:{location}:{instance}

    WorkerPoolTemplateVolumeEmptyDir, WorkerPoolTemplateVolumeEmptyDirArgs

    Medium string
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    SizeLimit string
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.
    Medium string
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    SizeLimit string
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.
    medium String
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    sizeLimit String
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.
    medium string
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    sizeLimit string
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.
    medium str
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    size_limit str
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.
    medium String
    The different types of medium supported for EmptyDir. Default value is MEMORY. Possible values are: MEMORY.
    sizeLimit String
    Limit on the storage usable by this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. This field's values are of the 'Quantity' k8s type: https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/quantity/. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir.

    WorkerPoolTemplateVolumeGcs, WorkerPoolTemplateVolumeGcsArgs

    Bucket string
    GCS Bucket name
    MountOptions List<string>
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    ReadOnly bool
    If true, mount the GCS bucket as read-only
    Bucket string
    GCS Bucket name
    MountOptions []string
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    ReadOnly bool
    If true, mount the GCS bucket as read-only
    bucket String
    GCS Bucket name
    mountOptions List<String>
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    readOnly Boolean
    If true, mount the GCS bucket as read-only
    bucket string
    GCS Bucket name
    mountOptions string[]
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    readOnly boolean
    If true, mount the GCS bucket as read-only
    bucket str
    GCS Bucket name
    mount_options Sequence[str]
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    read_only bool
    If true, mount the GCS bucket as read-only
    bucket String
    GCS Bucket name
    mountOptions List<String>
    A list of flags to pass to the gcsfuse command for configuring this volume. Flags should be passed without leading dashes.
    readOnly Boolean
    If true, mount the GCS bucket as read-only

    WorkerPoolTemplateVolumeNfs, WorkerPoolTemplateVolumeNfsArgs

    Path string
    Path that is exported by the NFS server.
    Server string
    Hostname or IP address of the NFS server
    ReadOnly bool
    If true, mount the NFS volume as read only
    Path string
    Path that is exported by the NFS server.
    Server string
    Hostname or IP address of the NFS server
    ReadOnly bool
    If true, mount the NFS volume as read only
    path String
    Path that is exported by the NFS server.
    server String
    Hostname or IP address of the NFS server
    readOnly Boolean
    If true, mount the NFS volume as read only
    path string
    Path that is exported by the NFS server.
    server string
    Hostname or IP address of the NFS server
    readOnly boolean
    If true, mount the NFS volume as read only
    path str
    Path that is exported by the NFS server.
    server str
    Hostname or IP address of the NFS server
    read_only bool
    If true, mount the NFS volume as read only
    path String
    Path that is exported by the NFS server.
    server String
    Hostname or IP address of the NFS server
    readOnly Boolean
    If true, mount the NFS volume as read only

    WorkerPoolTemplateVolumeSecret, WorkerPoolTemplateVolumeSecretArgs

    Secret string
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    DefaultMode int
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    Items List<WorkerPoolTemplateVolumeSecretItem>
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.
    Secret string
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    DefaultMode int
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    Items []WorkerPoolTemplateVolumeSecretItem
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.
    secret String
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    defaultMode Integer
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    items List<WorkerPoolTemplateVolumeSecretItem>
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.
    secret string
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    defaultMode number
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    items WorkerPoolTemplateVolumeSecretItem[]
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.
    secret str
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    default_mode int
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    items Sequence[WorkerPoolTemplateVolumeSecretItem]
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.
    secret String
    The name of the secret in Cloud Secret Manager. Format: {secret} if the secret is in the same project. projects/{project}/secrets/{secret} if the secret is in a different project.
    defaultMode Number
    Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting.
    items List<Property Map>
    If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. Structure is documented below.

    WorkerPoolTemplateVolumeSecretItem, WorkerPoolTemplateVolumeSecretItemArgs

    Path string
    The relative path of the secret in the container.
    Mode int
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    Version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version
    Path string
    The relative path of the secret in the container.
    Mode int
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    Version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version
    path String
    The relative path of the secret in the container.
    mode Integer
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    version String
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version
    path string
    The relative path of the secret in the container.
    mode number
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    version string
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version
    path str
    The relative path of the secret in the container.
    mode int
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    version str
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version
    path String
    The relative path of the secret in the container.
    mode Number
    Integer octal mode bits to use on this file, must be a value between 01 and 0777 (octal). If 0 or not set, the Volume's default mode will be used.
    version String
    The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version

    WorkerPoolTemplateVpcAccess, WorkerPoolTemplateVpcAccessArgs

    Egress string
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    NetworkInterfaces List<WorkerPoolTemplateVpcAccessNetworkInterface>
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.
    Egress string
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    NetworkInterfaces []WorkerPoolTemplateVpcAccessNetworkInterface
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.
    egress String
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    networkInterfaces List<WorkerPoolTemplateVpcAccessNetworkInterface>
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.
    egress string
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    networkInterfaces WorkerPoolTemplateVpcAccessNetworkInterface[]
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.
    egress str
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    network_interfaces Sequence[WorkerPoolTemplateVpcAccessNetworkInterface]
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.
    egress String
    Traffic VPC egress settings. Possible values are: ALL_TRAFFIC, PRIVATE_RANGES_ONLY.
    networkInterfaces List<Property Map>
    Direct VPC egress settings. Currently only single network interface is supported. Structure is documented below.

    WorkerPoolTemplateVpcAccessNetworkInterface, WorkerPoolTemplateVpcAccessNetworkInterfaceArgs

    Network string
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    Subnetwork string
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    Tags List<string>
    Network tags applied to this Cloud Run WorkerPool.
    Network string
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    Subnetwork string
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    Tags []string
    Network tags applied to this Cloud Run WorkerPool.
    network String
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    subnetwork String
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    tags List<String>
    Network tags applied to this Cloud Run WorkerPool.
    network string
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    subnetwork string
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    tags string[]
    Network tags applied to this Cloud Run WorkerPool.
    network str
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    subnetwork str
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    tags Sequence[str]
    Network tags applied to this Cloud Run WorkerPool.
    network String
    The VPC network that the Cloud Run resource will be able to send traffic to. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If network is not specified, it will be looked up from the subnetwork.
    subnetwork String
    The VPC subnetwork that the Cloud Run resource will get IPs from. At least one of network or subnetwork must be specified. If both network and subnetwork are specified, the given VPC subnetwork must belong to the given VPC network. If subnetwork is not specified, the subnetwork with the same name with the network will be used.
    tags List<String>
    Network tags applied to this Cloud Run WorkerPool.

    WorkerPoolTerminalCondition, WorkerPoolTerminalConditionArgs

    ExecutionReason string
    (Output) A reason for the execution condition.
    LastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) A common (workerPool-level) reason for this condition.
    RevisionReason string
    (Output) A reason for the revision condition.
    Severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    State string
    (Output) State of the condition.
    Type string
    (Output) The allocation type for this instance split.
    ExecutionReason string
    (Output) A reason for the execution condition.
    LastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) A common (workerPool-level) reason for this condition.
    RevisionReason string
    (Output) A reason for the revision condition.
    Severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    State string
    (Output) State of the condition.
    Type string
    (Output) The allocation type for this instance split.
    executionReason String
    (Output) A reason for the execution condition.
    lastTransitionTime String
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason String
    (Output) A reason for the revision condition.
    severity String
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state String
    (Output) State of the condition.
    type String
    (Output) The allocation type for this instance split.
    executionReason string
    (Output) A reason for the execution condition.
    lastTransitionTime string
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message string
    (Output) Human readable message indicating details about the current status.
    reason string
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason string
    (Output) A reason for the revision condition.
    severity string
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state string
    (Output) State of the condition.
    type string
    (Output) The allocation type for this instance split.
    execution_reason str
    (Output) A reason for the execution condition.
    last_transition_time str
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message str
    (Output) Human readable message indicating details about the current status.
    reason str
    (Output) A common (workerPool-level) reason for this condition.
    revision_reason str
    (Output) A reason for the revision condition.
    severity str
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state str
    (Output) State of the condition.
    type str
    (Output) The allocation type for this instance split.
    executionReason String
    (Output) A reason for the execution condition.
    lastTransitionTime String
    (Output) Last time the condition transitioned from one status to another. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) A common (workerPool-level) reason for this condition.
    revisionReason String
    (Output) A reason for the revision condition.
    severity String
    (Output) How to interpret failures of this condition, one of Error, Warning, Info
    state String
    (Output) State of the condition.
    type String
    (Output) The allocation type for this instance split.

    Import

    WorkerPool can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/workerPools/{{name}}

    • {{project}}/{{location}}/{{name}}

    • {{location}}/{{name}}

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

    $ pulumi import gcp:cloudrunv2/workerPool:WorkerPool default projects/{{project}}/locations/{{location}}/workerPools/{{name}}
    
    $ pulumi import gcp:cloudrunv2/workerPool:WorkerPool default {{project}}/{{location}}/{{name}}
    
    $ pulumi import gcp:cloudrunv2/workerPool:WorkerPool default {{location}}/{{name}}
    

    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 v8.34.0 published on Wednesday, Jun 11, 2025 by Pulumi