1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. cloudrun
  5. Service
Google Cloud Classic v8.10.0 published on Wednesday, Nov 20, 2024 by Pulumi

gcp.cloudrun.Service

Explore with Pulumi AI

gcp logo
Google Cloud Classic v8.10.0 published on Wednesday, Nov 20, 2024 by Pulumi

    A Cloud Run service has a unique endpoint and autoscales containers.

    To get more information about Service, see:

    Warning: We recommend using the gcp.cloudrunv2.Service resource which offers a better developer experience and broader support of Cloud Run features.

    Example Usage

    Cloud Run Service Pubsub

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloud_run_service_name",
        location: "us-central1",
        template: {
            spec: {
                containers: [{
                    image: "gcr.io/cloudrun/hello",
                }],
            },
        },
        traffics: [{
            percent: 100,
            latestRevision: true,
        }],
    });
    const sa = new gcp.serviceaccount.Account("sa", {
        accountId: "cloud-run-pubsub-invoker",
        displayName: "Cloud Run Pub/Sub Invoker",
    });
    const binding = new gcp.cloudrun.IamBinding("binding", {
        location: _default.location,
        service: _default.name,
        role: "roles/run.invoker",
        members: [pulumi.interpolate`serviceAccount:${sa.email}`],
    });
    const project = new gcp.projects.IAMBinding("project", {
        role: "roles/iam.serviceAccountTokenCreator",
        members: [pulumi.interpolate`serviceAccount:${sa.email}`],
    });
    const topic = new gcp.pubsub.Topic("topic", {name: "pubsub_topic"});
    const subscription = new gcp.pubsub.Subscription("subscription", {
        name: "pubsub_subscription",
        topic: topic.name,
        pushConfig: {
            pushEndpoint: _default.statuses.apply(statuses => statuses[0].url),
            oidcToken: {
                serviceAccountEmail: sa.email,
            },
            attributes: {
                "x-goog-version": "v1",
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloud_run_service_name",
        location="us-central1",
        template={
            "spec": {
                "containers": [{
                    "image": "gcr.io/cloudrun/hello",
                }],
            },
        },
        traffics=[{
            "percent": 100,
            "latest_revision": True,
        }])
    sa = gcp.serviceaccount.Account("sa",
        account_id="cloud-run-pubsub-invoker",
        display_name="Cloud Run Pub/Sub Invoker")
    binding = gcp.cloudrun.IamBinding("binding",
        location=default.location,
        service=default.name,
        role="roles/run.invoker",
        members=[sa.email.apply(lambda email: f"serviceAccount:{email}")])
    project = gcp.projects.IAMBinding("project",
        role="roles/iam.serviceAccountTokenCreator",
        members=[sa.email.apply(lambda email: f"serviceAccount:{email}")])
    topic = gcp.pubsub.Topic("topic", name="pubsub_topic")
    subscription = gcp.pubsub.Subscription("subscription",
        name="pubsub_subscription",
        topic=topic.name,
        push_config={
            "push_endpoint": default.statuses[0].url,
            "oidc_token": {
                "service_account_email": sa.email,
            },
            "attributes": {
                "x-goog-version": "v1",
            },
        })
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/projects"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/pubsub"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/serviceaccount"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloud_run_service_name"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("gcr.io/cloudrun/hello"),
    						},
    					},
    				},
    			},
    			Traffics: cloudrun.ServiceTrafficArray{
    				&cloudrun.ServiceTrafficArgs{
    					Percent:        pulumi.Int(100),
    					LatestRevision: pulumi.Bool(true),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		sa, err := serviceaccount.NewAccount(ctx, "sa", &serviceaccount.AccountArgs{
    			AccountId:   pulumi.String("cloud-run-pubsub-invoker"),
    			DisplayName: pulumi.String("Cloud Run Pub/Sub Invoker"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cloudrun.NewIamBinding(ctx, "binding", &cloudrun.IamBindingArgs{
    			Location: _default.Location,
    			Service:  _default.Name,
    			Role:     pulumi.String("roles/run.invoker"),
    			Members: pulumi.StringArray{
    				sa.Email.ApplyT(func(email string) (string, error) {
    					return fmt.Sprintf("serviceAccount:%v", email), nil
    				}).(pulumi.StringOutput),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
    			Role: pulumi.String("roles/iam.serviceAccountTokenCreator"),
    			Members: pulumi.StringArray{
    				sa.Email.ApplyT(func(email string) (string, error) {
    					return fmt.Sprintf("serviceAccount:%v", email), nil
    				}).(pulumi.StringOutput),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		topic, err := pubsub.NewTopic(ctx, "topic", &pubsub.TopicArgs{
    			Name: pulumi.String("pubsub_topic"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = pubsub.NewSubscription(ctx, "subscription", &pubsub.SubscriptionArgs{
    			Name:  pulumi.String("pubsub_subscription"),
    			Topic: topic.Name,
    			PushConfig: &pubsub.SubscriptionPushConfigArgs{
    				PushEndpoint: _default.Statuses.ApplyT(func(statuses []cloudrun.ServiceStatus) (*string, error) {
    					return &statuses[0].Url, nil
    				}).(pulumi.StringPtrOutput),
    				OidcToken: &pubsub.SubscriptionPushConfigOidcTokenArgs{
    					ServiceAccountEmail: sa.Email,
    				},
    				Attributes: pulumi.StringMap{
    					"x-goog-version": pulumi.String("v1"),
    				},
    			},
    		})
    		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.CloudRun.Service("default", new()
        {
            Name = "cloud_run_service_name",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "gcr.io/cloudrun/hello",
                        },
                    },
                },
            },
            Traffics = new[]
            {
                new Gcp.CloudRun.Inputs.ServiceTrafficArgs
                {
                    Percent = 100,
                    LatestRevision = true,
                },
            },
        });
    
        var sa = new Gcp.ServiceAccount.Account("sa", new()
        {
            AccountId = "cloud-run-pubsub-invoker",
            DisplayName = "Cloud Run Pub/Sub Invoker",
        });
    
        var binding = new Gcp.CloudRun.IamBinding("binding", new()
        {
            Location = @default.Location,
            Service = @default.Name,
            Role = "roles/run.invoker",
            Members = new[]
            {
                sa.Email.Apply(email => $"serviceAccount:{email}"),
            },
        });
    
        var project = new Gcp.Projects.IAMBinding("project", new()
        {
            Role = "roles/iam.serviceAccountTokenCreator",
            Members = new[]
            {
                sa.Email.Apply(email => $"serviceAccount:{email}"),
            },
        });
    
        var topic = new Gcp.PubSub.Topic("topic", new()
        {
            Name = "pubsub_topic",
        });
    
        var subscription = new Gcp.PubSub.Subscription("subscription", new()
        {
            Name = "pubsub_subscription",
            Topic = topic.Name,
            PushConfig = new Gcp.PubSub.Inputs.SubscriptionPushConfigArgs
            {
                PushEndpoint = @default.Statuses.Apply(statuses => statuses[0].Url),
                OidcToken = new Gcp.PubSub.Inputs.SubscriptionPushConfigOidcTokenArgs
                {
                    ServiceAccountEmail = sa.Email,
                },
                Attributes = 
                {
                    { "x-goog-version", "v1" },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTrafficArgs;
    import com.pulumi.gcp.serviceaccount.Account;
    import com.pulumi.gcp.serviceaccount.AccountArgs;
    import com.pulumi.gcp.cloudrun.IamBinding;
    import com.pulumi.gcp.cloudrun.IamBindingArgs;
    import com.pulumi.gcp.projects.IAMBinding;
    import com.pulumi.gcp.projects.IAMBindingArgs;
    import com.pulumi.gcp.pubsub.Topic;
    import com.pulumi.gcp.pubsub.TopicArgs;
    import com.pulumi.gcp.pubsub.Subscription;
    import com.pulumi.gcp.pubsub.SubscriptionArgs;
    import com.pulumi.gcp.pubsub.inputs.SubscriptionPushConfigArgs;
    import com.pulumi.gcp.pubsub.inputs.SubscriptionPushConfigOidcTokenArgs;
    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 Service("default", ServiceArgs.builder()
                .name("cloud_run_service_name")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("gcr.io/cloudrun/hello")
                            .build())
                        .build())
                    .build())
                .traffics(ServiceTrafficArgs.builder()
                    .percent(100)
                    .latestRevision(true)
                    .build())
                .build());
    
            var sa = new Account("sa", AccountArgs.builder()
                .accountId("cloud-run-pubsub-invoker")
                .displayName("Cloud Run Pub/Sub Invoker")
                .build());
    
            var binding = new IamBinding("binding", IamBindingArgs.builder()
                .location(default_.location())
                .service(default_.name())
                .role("roles/run.invoker")
                .members(sa.email().applyValue(email -> String.format("serviceAccount:%s", email)))
                .build());
    
            var project = new IAMBinding("project", IAMBindingArgs.builder()
                .role("roles/iam.serviceAccountTokenCreator")
                .members(sa.email().applyValue(email -> String.format("serviceAccount:%s", email)))
                .build());
    
            var topic = new Topic("topic", TopicArgs.builder()
                .name("pubsub_topic")
                .build());
    
            var subscription = new Subscription("subscription", SubscriptionArgs.builder()
                .name("pubsub_subscription")
                .topic(topic.name())
                .pushConfig(SubscriptionPushConfigArgs.builder()
                    .pushEndpoint(default_.statuses().applyValue(statuses -> statuses[0].url()))
                    .oidcToken(SubscriptionPushConfigOidcTokenArgs.builder()
                        .serviceAccountEmail(sa.email())
                        .build())
                    .attributes(Map.of("x-goog-version", "v1"))
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloud_run_service_name
          location: us-central1
          template:
            spec:
              containers:
                - image: gcr.io/cloudrun/hello
          traffics:
            - percent: 100
              latestRevision: true
      sa:
        type: gcp:serviceaccount:Account
        properties:
          accountId: cloud-run-pubsub-invoker
          displayName: Cloud Run Pub/Sub Invoker
      binding:
        type: gcp:cloudrun:IamBinding
        properties:
          location: ${default.location}
          service: ${default.name}
          role: roles/run.invoker
          members:
            - serviceAccount:${sa.email}
      project:
        type: gcp:projects:IAMBinding
        properties:
          role: roles/iam.serviceAccountTokenCreator
          members:
            - serviceAccount:${sa.email}
      topic:
        type: gcp:pubsub:Topic
        properties:
          name: pubsub_topic
      subscription:
        type: gcp:pubsub:Subscription
        properties:
          name: pubsub_subscription
          topic: ${topic.name}
          pushConfig:
            pushEndpoint: ${default.statuses[0].url}
            oidcToken:
              serviceAccountEmail: ${sa.email}
            attributes:
              x-goog-version: v1
    

    Cloud Run Service Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        template: {
            spec: {
                containers: [{
                    image: "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
        },
        traffics: [{
            percent: 100,
            latestRevision: true,
        }],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        template={
            "spec": {
                "containers": [{
                    "image": "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
        },
        traffics=[{
            "percent": 100,
            "latest_revision": True,
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    						},
    					},
    				},
    			},
    			Traffics: cloudrun.ServiceTrafficArray{
    				&cloudrun.ServiceTrafficArgs{
    					Percent:        pulumi.Int(100),
    					LatestRevision: pulumi.Bool(true),
    				},
    			},
    		})
    		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.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                        },
                    },
                },
            },
            Traffics = new[]
            {
                new Gcp.CloudRun.Inputs.ServiceTrafficArgs
                {
                    Percent = 100,
                    LatestRevision = true,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTrafficArgs;
    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 Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("us-docker.pkg.dev/cloudrun/container/hello")
                            .build())
                        .build())
                    .build())
                .traffics(ServiceTrafficArgs.builder()
                    .percent(100)
                    .latestRevision(true)
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          template:
            spec:
              containers:
                - image: us-docker.pkg.dev/cloudrun/container/hello
          traffics:
            - percent: 100
              latestRevision: true
    

    Cloud Run Service Gpu

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        metadata: {
            annotations: {
                "run.googleapis.com/launch-stage": "BETA",
            },
        },
        template: {
            metadata: {
                annotations: {
                    "autoscaling.knative.dev/maxScale": "1",
                    "run.googleapis.com/cpu-throttling": "false",
                },
            },
            spec: {
                containers: [{
                    image: "gcr.io/cloudrun/hello",
                    resources: {
                        limits: {
                            cpu: "4",
                            memory: "16Gi",
                            "nvidia.com/gpu": "1",
                        },
                    },
                }],
                nodeSelector: {
                    "run.googleapis.com/accelerator": "nvidia-l4",
                },
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        metadata={
            "annotations": {
                "run.googleapis.com/launch-stage": "BETA",
            },
        },
        template={
            "metadata": {
                "annotations": {
                    "autoscaling.knative.dev/maxScale": "1",
                    "run.googleapis.com/cpu-throttling": "false",
                },
            },
            "spec": {
                "containers": [{
                    "image": "gcr.io/cloudrun/hello",
                    "resources": {
                        "limits": {
                            "cpu": "4",
                            "memory": "16Gi",
                            "nvidia.com/gpu": "1",
                        },
                    },
                }],
                "node_selector": {
                    "run.googleapis.com/accelerator": "nvidia-l4",
                },
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Metadata: &cloudrun.ServiceMetadataArgs{
    				Annotations: pulumi.StringMap{
    					"run.googleapis.com/launch-stage": pulumi.String("BETA"),
    				},
    			},
    			Template: &cloudrun.ServiceTemplateArgs{
    				Metadata: &cloudrun.ServiceTemplateMetadataArgs{
    					Annotations: pulumi.StringMap{
    						"autoscaling.knative.dev/maxScale":  pulumi.String("1"),
    						"run.googleapis.com/cpu-throttling": pulumi.String("false"),
    					},
    				},
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("gcr.io/cloudrun/hello"),
    							Resources: &cloudrun.ServiceTemplateSpecContainerResourcesArgs{
    								Limits: pulumi.StringMap{
    									"cpu":            pulumi.String("4"),
    									"memory":         pulumi.String("16Gi"),
    									"nvidia.com/gpu": pulumi.String("1"),
    								},
    							},
    						},
    					},
    					NodeSelector: pulumi.StringMap{
    						"run.googleapis.com/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.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Metadata = new Gcp.CloudRun.Inputs.ServiceMetadataArgs
            {
                Annotations = 
                {
                    { "run.googleapis.com/launch-stage", "BETA" },
                },
            },
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Metadata = new Gcp.CloudRun.Inputs.ServiceTemplateMetadataArgs
                {
                    Annotations = 
                    {
                        { "autoscaling.knative.dev/maxScale", "1" },
                        { "run.googleapis.com/cpu-throttling", "false" },
                    },
                },
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "gcr.io/cloudrun/hello",
                            Resources = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerResourcesArgs
                            {
                                Limits = 
                                {
                                    { "cpu", "4" },
                                    { "memory", "16Gi" },
                                    { "nvidia.com/gpu", "1" },
                                },
                            },
                        },
                    },
                    NodeSelector = 
                    {
                        { "run.googleapis.com/accelerator", "nvidia-l4" },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceMetadataArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateMetadataArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    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 Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .metadata(ServiceMetadataArgs.builder()
                    .annotations(Map.of("run.googleapis.com/launch-stage", "BETA"))
                    .build())
                .template(ServiceTemplateArgs.builder()
                    .metadata(ServiceTemplateMetadataArgs.builder()
                        .annotations(Map.ofEntries(
                            Map.entry("autoscaling.knative.dev/maxScale", "1"),
                            Map.entry("run.googleapis.com/cpu-throttling", "false")
                        ))
                        .build())
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("gcr.io/cloudrun/hello")
                            .resources(ServiceTemplateSpecContainerResourcesArgs.builder()
                                .limits(Map.ofEntries(
                                    Map.entry("cpu", "4"),
                                    Map.entry("memory", "16Gi"),
                                    Map.entry("nvidia.com/gpu", "1")
                                ))
                                .build())
                            .build())
                        .nodeSelector(Map.of("run.googleapis.com/accelerator", "nvidia-l4"))
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          metadata:
            annotations:
              run.googleapis.com/launch-stage: BETA
          template:
            metadata:
              annotations:
                autoscaling.knative.dev/maxScale: '1'
                run.googleapis.com/cpu-throttling: 'false'
            spec:
              containers:
                - image: gcr.io/cloudrun/hello
                  resources:
                    limits:
                      cpu: '4'
                      memory: 16Gi
                      nvidia.com/gpu: '1'
              nodeSelector:
                run.googleapis.com/accelerator: nvidia-l4
    

    Cloud Run Service Sql

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const instance = new gcp.sql.DatabaseInstance("instance", {
        name: "cloudrun-sql",
        region: "us-east1",
        databaseVersion: "MYSQL_5_7",
        settings: {
            tier: "db-f1-micro",
        },
        deletionProtection: true,
    });
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        template: {
            spec: {
                containers: [{
                    image: "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
            metadata: {
                annotations: {
                    "autoscaling.knative.dev/maxScale": "1000",
                    "run.googleapis.com/cloudsql-instances": instance.connectionName,
                    "run.googleapis.com/client-name": "demo",
                },
            },
        },
        autogenerateRevisionName: true,
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    instance = gcp.sql.DatabaseInstance("instance",
        name="cloudrun-sql",
        region="us-east1",
        database_version="MYSQL_5_7",
        settings={
            "tier": "db-f1-micro",
        },
        deletion_protection=True)
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        template={
            "spec": {
                "containers": [{
                    "image": "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
            "metadata": {
                "annotations": {
                    "autoscaling.knative.dev/maxScale": "1000",
                    "run.googleapis.com/cloudsql-instances": instance.connection_name,
                    "run.googleapis.com/client-name": "demo",
                },
            },
        },
        autogenerate_revision_name=True)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"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 {
    		instance, err := sql.NewDatabaseInstance(ctx, "instance", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("cloudrun-sql"),
    			Region:          pulumi.String("us-east1"),
    			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 = cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    						},
    					},
    				},
    				Metadata: &cloudrun.ServiceTemplateMetadataArgs{
    					Annotations: pulumi.StringMap{
    						"autoscaling.knative.dev/maxScale":      pulumi.String("1000"),
    						"run.googleapis.com/cloudsql-instances": instance.ConnectionName,
    						"run.googleapis.com/client-name":        pulumi.String("demo"),
    					},
    				},
    			},
    			AutogenerateRevisionName: pulumi.Bool(true),
    		})
    		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 instance = new Gcp.Sql.DatabaseInstance("instance", new()
        {
            Name = "cloudrun-sql",
            Region = "us-east1",
            DatabaseVersion = "MYSQL_5_7",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-f1-micro",
            },
            DeletionProtection = true,
        });
    
        var @default = new Gcp.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                        },
                    },
                },
                Metadata = new Gcp.CloudRun.Inputs.ServiceTemplateMetadataArgs
                {
                    Annotations = 
                    {
                        { "autoscaling.knative.dev/maxScale", "1000" },
                        { "run.googleapis.com/cloudsql-instances", instance.ConnectionName },
                        { "run.googleapis.com/client-name", "demo" },
                    },
                },
            },
            AutogenerateRevisionName = true,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateMetadataArgs;
    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 instance = new DatabaseInstance("instance", DatabaseInstanceArgs.builder()
                .name("cloudrun-sql")
                .region("us-east1")
                .databaseVersion("MYSQL_5_7")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-f1-micro")
                    .build())
                .deletionProtection(true)
                .build());
    
            var default_ = new Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("us-docker.pkg.dev/cloudrun/container/hello")
                            .build())
                        .build())
                    .metadata(ServiceTemplateMetadataArgs.builder()
                        .annotations(Map.ofEntries(
                            Map.entry("autoscaling.knative.dev/maxScale", "1000"),
                            Map.entry("run.googleapis.com/cloudsql-instances", instance.connectionName()),
                            Map.entry("run.googleapis.com/client-name", "demo")
                        ))
                        .build())
                    .build())
                .autogenerateRevisionName(true)
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          template:
            spec:
              containers:
                - image: us-docker.pkg.dev/cloudrun/container/hello
            metadata:
              annotations:
                autoscaling.knative.dev/maxScale: '1000'
                run.googleapis.com/cloudsql-instances: ${instance.connectionName}
                run.googleapis.com/client-name: demo
          autogenerateRevisionName: true
      instance:
        type: gcp:sql:DatabaseInstance
        properties:
          name: cloudrun-sql
          region: us-east1
          databaseVersion: MYSQL_5_7
          settings:
            tier: db-f1-micro
          deletionProtection: true
    

    Cloud Run Service Noauth

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        template: {
            spec: {
                containers: [{
                    image: "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
        },
    });
    const noauth = gcp.organizations.getIAMPolicy({
        bindings: [{
            role: "roles/run.invoker",
            members: ["allUsers"],
        }],
    });
    const noauthIamPolicy = new gcp.cloudrun.IamPolicy("noauth", {
        location: _default.location,
        project: _default.project,
        service: _default.name,
        policyData: noauth.then(noauth => noauth.policyData),
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        template={
            "spec": {
                "containers": [{
                    "image": "us-docker.pkg.dev/cloudrun/container/hello",
                }],
            },
        })
    noauth = gcp.organizations.get_iam_policy(bindings=[{
        "role": "roles/run.invoker",
        "members": ["allUsers"],
    }])
    noauth_iam_policy = gcp.cloudrun.IamPolicy("noauth",
        location=default.location,
        project=default.project,
        service=default.name,
        policy_data=noauth.policy_data)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		noauth, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
    			Bindings: []organizations.GetIAMPolicyBinding{
    				{
    					Role: "roles/run.invoker",
    					Members: []string{
    						"allUsers",
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = cloudrun.NewIamPolicy(ctx, "noauth", &cloudrun.IamPolicyArgs{
    			Location:   _default.Location,
    			Project:    _default.Project,
    			Service:    _default.Name,
    			PolicyData: pulumi.String(noauth.PolicyData),
    		})
    		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.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                        },
                    },
                },
            },
        });
    
        var noauth = Gcp.Organizations.GetIAMPolicy.Invoke(new()
        {
            Bindings = new[]
            {
                new Gcp.Organizations.Inputs.GetIAMPolicyBindingInputArgs
                {
                    Role = "roles/run.invoker",
                    Members = new[]
                    {
                        "allUsers",
                    },
                },
            },
        });
    
        var noauthIamPolicy = new Gcp.CloudRun.IamPolicy("noauth", new()
        {
            Location = @default.Location,
            Project = @default.Project,
            Service = @default.Name,
            PolicyData = noauth.Apply(getIAMPolicyResult => getIAMPolicyResult.PolicyData),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetIAMPolicyArgs;
    import com.pulumi.gcp.cloudrun.IamPolicy;
    import com.pulumi.gcp.cloudrun.IamPolicyArgs;
    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 Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("us-docker.pkg.dev/cloudrun/container/hello")
                            .build())
                        .build())
                    .build())
                .build());
    
            final var noauth = OrganizationsFunctions.getIAMPolicy(GetIAMPolicyArgs.builder()
                .bindings(GetIAMPolicyBindingArgs.builder()
                    .role("roles/run.invoker")
                    .members("allUsers")
                    .build())
                .build());
    
            var noauthIamPolicy = new IamPolicy("noauthIamPolicy", IamPolicyArgs.builder()
                .location(default_.location())
                .project(default_.project())
                .service(default_.name())
                .policyData(noauth.applyValue(getIAMPolicyResult -> getIAMPolicyResult.policyData()))
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          template:
            spec:
              containers:
                - image: us-docker.pkg.dev/cloudrun/container/hello
      noauthIamPolicy:
        type: gcp:cloudrun:IamPolicy
        name: noauth
        properties:
          location: ${default.location}
          project: ${default.project}
          service: ${default.name}
          policyData: ${noauth.policyData}
    variables:
      noauth:
        fn::invoke:
          Function: gcp:organizations:getIAMPolicy
          Arguments:
            bindings:
              - role: roles/run.invoker
                members:
                  - allUsers
    

    Cloud Run Service Probes

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        template: {
            spec: {
                containers: [{
                    image: "us-docker.pkg.dev/cloudrun/container/hello",
                    startupProbe: {
                        initialDelaySeconds: 0,
                        timeoutSeconds: 1,
                        periodSeconds: 3,
                        failureThreshold: 1,
                        tcpSocket: {
                            port: 8080,
                        },
                    },
                    livenessProbe: {
                        httpGet: {
                            path: "/",
                        },
                    },
                }],
            },
        },
        traffics: [{
            percent: 100,
            latestRevision: true,
        }],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        template={
            "spec": {
                "containers": [{
                    "image": "us-docker.pkg.dev/cloudrun/container/hello",
                    "startup_probe": {
                        "initial_delay_seconds": 0,
                        "timeout_seconds": 1,
                        "period_seconds": 3,
                        "failure_threshold": 1,
                        "tcp_socket": {
                            "port": 8080,
                        },
                    },
                    "liveness_probe": {
                        "http_get": {
                            "path": "/",
                        },
                    },
                }],
            },
        },
        traffics=[{
            "percent": 100,
            "latest_revision": True,
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    							StartupProbe: &cloudrun.ServiceTemplateSpecContainerStartupProbeArgs{
    								InitialDelaySeconds: pulumi.Int(0),
    								TimeoutSeconds:      pulumi.Int(1),
    								PeriodSeconds:       pulumi.Int(3),
    								FailureThreshold:    pulumi.Int(1),
    								TcpSocket: &cloudrun.ServiceTemplateSpecContainerStartupProbeTcpSocketArgs{
    									Port: pulumi.Int(8080),
    								},
    							},
    							LivenessProbe: &cloudrun.ServiceTemplateSpecContainerLivenessProbeArgs{
    								HttpGet: &cloudrun.ServiceTemplateSpecContainerLivenessProbeHttpGetArgs{
    									Path: pulumi.String("/"),
    								},
    							},
    						},
    					},
    				},
    			},
    			Traffics: cloudrun.ServiceTrafficArray{
    				&cloudrun.ServiceTrafficArgs{
    					Percent:        pulumi.Int(100),
    					LatestRevision: pulumi.Bool(true),
    				},
    			},
    		})
    		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.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                            StartupProbe = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeArgs
                            {
                                InitialDelaySeconds = 0,
                                TimeoutSeconds = 1,
                                PeriodSeconds = 3,
                                FailureThreshold = 1,
                                TcpSocket = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeTcpSocketArgs
                                {
                                    Port = 8080,
                                },
                            },
                            LivenessProbe = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeArgs
                            {
                                HttpGet = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeHttpGetArgs
                                {
                                    Path = "/",
                                },
                            },
                        },
                    },
                },
            },
            Traffics = new[]
            {
                new Gcp.CloudRun.Inputs.ServiceTrafficArgs
                {
                    Percent = 100,
                    LatestRevision = true,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTrafficArgs;
    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 Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(ServiceTemplateSpecContainerArgs.builder()
                            .image("us-docker.pkg.dev/cloudrun/container/hello")
                            .startupProbe(ServiceTemplateSpecContainerStartupProbeArgs.builder()
                                .initialDelaySeconds(0)
                                .timeoutSeconds(1)
                                .periodSeconds(3)
                                .failureThreshold(1)
                                .tcpSocket(ServiceTemplateSpecContainerStartupProbeTcpSocketArgs.builder()
                                    .port(8080)
                                    .build())
                                .build())
                            .livenessProbe(ServiceTemplateSpecContainerLivenessProbeArgs.builder()
                                .httpGet(ServiceTemplateSpecContainerLivenessProbeHttpGetArgs.builder()
                                    .path("/")
                                    .build())
                                .build())
                            .build())
                        .build())
                    .build())
                .traffics(ServiceTrafficArgs.builder()
                    .percent(100)
                    .latestRevision(true)
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          template:
            spec:
              containers:
                - image: us-docker.pkg.dev/cloudrun/container/hello
                  startupProbe:
                    initialDelaySeconds: 0
                    timeoutSeconds: 1
                    periodSeconds: 3
                    failureThreshold: 1
                    tcpSocket:
                      port: 8080
                  livenessProbe:
                    httpGet:
                      path: /
          traffics:
            - percent: 100
              latestRevision: true
    

    Cloud Run Service Multicontainer

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.cloudrun.Service("default", {
        name: "cloudrun-srv",
        location: "us-central1",
        template: {
            metadata: {
                annotations: {
                    "run.googleapis.com/container-dependencies": JSON.stringify({
                        "hello-1": ["hello-2"],
                    }),
                },
            },
            spec: {
                containers: [
                    {
                        name: "hello-1",
                        ports: [{
                            containerPort: 8080,
                        }],
                        image: "us-docker.pkg.dev/cloudrun/container/hello",
                        volumeMounts: [{
                            name: "shared-volume",
                            mountPath: "/mnt/shared",
                        }],
                    },
                    {
                        name: "hello-2",
                        image: "us-docker.pkg.dev/cloudrun/container/hello",
                        envs: [{
                            name: "PORT",
                            value: "8081",
                        }],
                        startupProbe: {
                            httpGet: {
                                port: 8081,
                            },
                        },
                        volumeMounts: [{
                            name: "shared-volume",
                            mountPath: "/mnt/shared",
                        }],
                    },
                ],
                volumes: [{
                    name: "shared-volume",
                    emptyDir: {
                        medium: "Memory",
                        sizeLimit: "128Mi",
                    },
                }],
            },
        },
    });
    
    import pulumi
    import json
    import pulumi_gcp as gcp
    
    default = gcp.cloudrun.Service("default",
        name="cloudrun-srv",
        location="us-central1",
        template={
            "metadata": {
                "annotations": {
                    "run.googleapis.com/container-dependencies": json.dumps({
                        "hello-1": ["hello-2"],
                    }),
                },
            },
            "spec": {
                "containers": [
                    {
                        "name": "hello-1",
                        "ports": [{
                            "container_port": 8080,
                        }],
                        "image": "us-docker.pkg.dev/cloudrun/container/hello",
                        "volume_mounts": [{
                            "name": "shared-volume",
                            "mount_path": "/mnt/shared",
                        }],
                    },
                    {
                        "name": "hello-2",
                        "image": "us-docker.pkg.dev/cloudrun/container/hello",
                        "envs": [{
                            "name": "PORT",
                            "value": "8081",
                        }],
                        "startup_probe": {
                            "http_get": {
                                "port": 8081,
                            },
                        },
                        "volume_mounts": [{
                            "name": "shared-volume",
                            "mount_path": "/mnt/shared",
                        }],
                    },
                ],
                "volumes": [{
                    "name": "shared-volume",
                    "empty_dir": {
                        "medium": "Memory",
                        "size_limit": "128Mi",
                    },
                }],
            },
        })
    
    package main
    
    import (
    	"encoding/json"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/cloudrun"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		tmpJSON0, err := json.Marshal(map[string]interface{}{
    			"hello-1": []string{
    				"hello-2",
    			},
    		})
    		if err != nil {
    			return err
    		}
    		json0 := string(tmpJSON0)
    		_, err = cloudrun.NewService(ctx, "default", &cloudrun.ServiceArgs{
    			Name:     pulumi.String("cloudrun-srv"),
    			Location: pulumi.String("us-central1"),
    			Template: &cloudrun.ServiceTemplateArgs{
    				Metadata: &cloudrun.ServiceTemplateMetadataArgs{
    					Annotations: pulumi.StringMap{
    						"run.googleapis.com/container-dependencies": pulumi.String(json0),
    					},
    				},
    				Spec: &cloudrun.ServiceTemplateSpecArgs{
    					Containers: cloudrun.ServiceTemplateSpecContainerArray{
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Name: pulumi.String("hello-1"),
    							Ports: cloudrun.ServiceTemplateSpecContainerPortArray{
    								&cloudrun.ServiceTemplateSpecContainerPortArgs{
    									ContainerPort: pulumi.Int(8080),
    								},
    							},
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    							VolumeMounts: cloudrun.ServiceTemplateSpecContainerVolumeMountArray{
    								&cloudrun.ServiceTemplateSpecContainerVolumeMountArgs{
    									Name:      pulumi.String("shared-volume"),
    									MountPath: pulumi.String("/mnt/shared"),
    								},
    							},
    						},
    						&cloudrun.ServiceTemplateSpecContainerArgs{
    							Name:  pulumi.String("hello-2"),
    							Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    							Envs: cloudrun.ServiceTemplateSpecContainerEnvArray{
    								&cloudrun.ServiceTemplateSpecContainerEnvArgs{
    									Name:  pulumi.String("PORT"),
    									Value: pulumi.String("8081"),
    								},
    							},
    							StartupProbe: &cloudrun.ServiceTemplateSpecContainerStartupProbeArgs{
    								HttpGet: &cloudrun.ServiceTemplateSpecContainerStartupProbeHttpGetArgs{
    									Port: pulumi.Int(8081),
    								},
    							},
    							VolumeMounts: cloudrun.ServiceTemplateSpecContainerVolumeMountArray{
    								&cloudrun.ServiceTemplateSpecContainerVolumeMountArgs{
    									Name:      pulumi.String("shared-volume"),
    									MountPath: pulumi.String("/mnt/shared"),
    								},
    							},
    						},
    					},
    					Volumes: cloudrun.ServiceTemplateSpecVolumeArray{
    						&cloudrun.ServiceTemplateSpecVolumeArgs{
    							Name: pulumi.String("shared-volume"),
    							EmptyDir: &cloudrun.ServiceTemplateSpecVolumeEmptyDirArgs{
    								Medium:    pulumi.String("Memory"),
    								SizeLimit: pulumi.String("128Mi"),
    							},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.Json;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var @default = new Gcp.CloudRun.Service("default", new()
        {
            Name = "cloudrun-srv",
            Location = "us-central1",
            Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
            {
                Metadata = new Gcp.CloudRun.Inputs.ServiceTemplateMetadataArgs
                {
                    Annotations = 
                    {
                        { "run.googleapis.com/container-dependencies", JsonSerializer.Serialize(new Dictionary<string, object?>
                        {
                            ["hello-1"] = new[]
                            {
                                "hello-2",
                            },
                        }) },
                    },
                },
                Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
                {
                    Containers = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Name = "hello-1",
                            Ports = new[]
                            {
                                new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerPortArgs
                                {
                                    ContainerPort = 8080,
                                },
                            },
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                            VolumeMounts = new[]
                            {
                                new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerVolumeMountArgs
                                {
                                    Name = "shared-volume",
                                    MountPath = "/mnt/shared",
                                },
                            },
                        },
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                        {
                            Name = "hello-2",
                            Image = "us-docker.pkg.dev/cloudrun/container/hello",
                            Envs = new[]
                            {
                                new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerEnvArgs
                                {
                                    Name = "PORT",
                                    Value = "8081",
                                },
                            },
                            StartupProbe = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeArgs
                            {
                                HttpGet = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeHttpGetArgs
                                {
                                    Port = 8081,
                                },
                            },
                            VolumeMounts = new[]
                            {
                                new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerVolumeMountArgs
                                {
                                    Name = "shared-volume",
                                    MountPath = "/mnt/shared",
                                },
                            },
                        },
                    },
                    Volumes = new[]
                    {
                        new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeArgs
                        {
                            Name = "shared-volume",
                            EmptyDir = new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeEmptyDirArgs
                            {
                                Medium = "Memory",
                                SizeLimit = "128Mi",
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.cloudrun.Service;
    import com.pulumi.gcp.cloudrun.ServiceArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateMetadataArgs;
    import com.pulumi.gcp.cloudrun.inputs.ServiceTemplateSpecArgs;
    import static com.pulumi.codegen.internal.Serialization.*;
    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 Service("default", ServiceArgs.builder()
                .name("cloudrun-srv")
                .location("us-central1")
                .template(ServiceTemplateArgs.builder()
                    .metadata(ServiceTemplateMetadataArgs.builder()
                        .annotations(Map.of("run.googleapis.com/container-dependencies", serializeJson(
                            jsonObject(
                                jsonProperty("hello-1", jsonArray("hello-2"))
                            ))))
                        .build())
                    .spec(ServiceTemplateSpecArgs.builder()
                        .containers(                    
                            ServiceTemplateSpecContainerArgs.builder()
                                .name("hello-1")
                                .ports(ServiceTemplateSpecContainerPortArgs.builder()
                                    .containerPort(8080)
                                    .build())
                                .image("us-docker.pkg.dev/cloudrun/container/hello")
                                .volumeMounts(ServiceTemplateSpecContainerVolumeMountArgs.builder()
                                    .name("shared-volume")
                                    .mountPath("/mnt/shared")
                                    .build())
                                .build(),
                            ServiceTemplateSpecContainerArgs.builder()
                                .name("hello-2")
                                .image("us-docker.pkg.dev/cloudrun/container/hello")
                                .envs(ServiceTemplateSpecContainerEnvArgs.builder()
                                    .name("PORT")
                                    .value("8081")
                                    .build())
                                .startupProbe(ServiceTemplateSpecContainerStartupProbeArgs.builder()
                                    .httpGet(ServiceTemplateSpecContainerStartupProbeHttpGetArgs.builder()
                                        .port(8081)
                                        .build())
                                    .build())
                                .volumeMounts(ServiceTemplateSpecContainerVolumeMountArgs.builder()
                                    .name("shared-volume")
                                    .mountPath("/mnt/shared")
                                    .build())
                                .build())
                        .volumes(ServiceTemplateSpecVolumeArgs.builder()
                            .name("shared-volume")
                            .emptyDir(ServiceTemplateSpecVolumeEmptyDirArgs.builder()
                                .medium("Memory")
                                .sizeLimit("128Mi")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:cloudrun:Service
        properties:
          name: cloudrun-srv
          location: us-central1
          template:
            metadata:
              annotations:
                run.googleapis.com/container-dependencies:
                  fn::toJSON:
                    hello-1:
                      - hello-2
            spec:
              containers:
                - name: hello-1
                  ports:
                    - containerPort: 8080
                  image: us-docker.pkg.dev/cloudrun/container/hello
                  volumeMounts:
                    - name: shared-volume
                      mountPath: /mnt/shared
                - name: hello-2
                  image: us-docker.pkg.dev/cloudrun/container/hello
                  envs:
                    - name: PORT
                      value: '8081'
                  startupProbe:
                    httpGet:
                      port: 8081
                  volumeMounts:
                    - name: shared-volume
                      mountPath: /mnt/shared
              volumes:
                - name: shared-volume
                  emptyDir:
                    medium: Memory
                    sizeLimit: 128Mi
    

    Create Service Resource

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

    Constructor syntax

    new Service(name: string, args: ServiceArgs, opts?: CustomResourceOptions);
    @overload
    def Service(resource_name: str,
                args: ServiceArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def Service(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                location: Optional[str] = None,
                autogenerate_revision_name: Optional[bool] = None,
                metadata: Optional[ServiceMetadataArgs] = None,
                name: Optional[str] = None,
                project: Optional[str] = None,
                template: Optional[ServiceTemplateArgs] = None,
                traffics: Optional[Sequence[ServiceTrafficArgs]] = None)
    func NewService(ctx *Context, name string, args ServiceArgs, opts ...ResourceOption) (*Service, error)
    public Service(string name, ServiceArgs args, CustomResourceOptions? opts = null)
    public Service(String name, ServiceArgs args)
    public Service(String name, ServiceArgs args, CustomResourceOptions options)
    
    type: gcp:cloudrun:Service
    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 ServiceArgs
    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 ServiceArgs
    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 ServiceArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServiceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServiceArgs
    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 gcpServiceResource = new Gcp.CloudRun.Service("gcpServiceResource", new()
    {
        Location = "string",
        AutogenerateRevisionName = false,
        Metadata = new Gcp.CloudRun.Inputs.ServiceMetadataArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            EffectiveAnnotations = 
            {
                { "string", "string" },
            },
            EffectiveLabels = 
            {
                { "string", "string" },
            },
            Generation = 0,
            Labels = 
            {
                { "string", "string" },
            },
            Namespace = "string",
            PulumiLabels = 
            {
                { "string", "string" },
            },
            ResourceVersion = "string",
            SelfLink = "string",
            Uid = "string",
        },
        Name = "string",
        Project = "string",
        Template = new Gcp.CloudRun.Inputs.ServiceTemplateArgs
        {
            Metadata = new Gcp.CloudRun.Inputs.ServiceTemplateMetadataArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
                Generation = 0,
                Labels = 
                {
                    { "string", "string" },
                },
                Name = "string",
                Namespace = "string",
                ResourceVersion = "string",
                SelfLink = "string",
                Uid = "string",
            },
            Spec = new Gcp.CloudRun.Inputs.ServiceTemplateSpecArgs
            {
                ContainerConcurrency = 0,
                Containers = new[]
                {
                    new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerArgs
                    {
                        Image = "string",
                        Args = new[]
                        {
                            "string",
                        },
                        Commands = new[]
                        {
                            "string",
                        },
                        Envs = new[]
                        {
                            new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerEnvArgs
                            {
                                Name = "string",
                                Value = "string",
                                ValueFrom = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerEnvValueFromArgs
                                {
                                    SecretKeyRef = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerEnvValueFromSecretKeyRefArgs
                                    {
                                        Key = "string",
                                        Name = "string",
                                    },
                                },
                            },
                        },
                        LivenessProbe = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeArgs
                        {
                            FailureThreshold = 0,
                            Grpc = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeGrpcArgs
                            {
                                Port = 0,
                                Service = "string",
                            },
                            HttpGet = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeHttpGetArgs
                            {
                                HttpHeaders = new[]
                                {
                                    new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                                Path = "string",
                                Port = 0,
                            },
                            InitialDelaySeconds = 0,
                            PeriodSeconds = 0,
                            TimeoutSeconds = 0,
                        },
                        Name = "string",
                        Ports = new[]
                        {
                            new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerPortArgs
                            {
                                ContainerPort = 0,
                                Name = "string",
                                Protocol = "string",
                            },
                        },
                        Resources = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerResourcesArgs
                        {
                            Limits = 
                            {
                                { "string", "string" },
                            },
                            Requests = 
                            {
                                { "string", "string" },
                            },
                        },
                        StartupProbe = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeArgs
                        {
                            FailureThreshold = 0,
                            Grpc = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeGrpcArgs
                            {
                                Port = 0,
                                Service = "string",
                            },
                            HttpGet = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeHttpGetArgs
                            {
                                HttpHeaders = new[]
                                {
                                    new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                                Path = "string",
                                Port = 0,
                            },
                            InitialDelaySeconds = 0,
                            PeriodSeconds = 0,
                            TcpSocket = new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerStartupProbeTcpSocketArgs
                            {
                                Port = 0,
                            },
                            TimeoutSeconds = 0,
                        },
                        VolumeMounts = new[]
                        {
                            new Gcp.CloudRun.Inputs.ServiceTemplateSpecContainerVolumeMountArgs
                            {
                                MountPath = "string",
                                Name = "string",
                            },
                        },
                    },
                },
                NodeSelector = 
                {
                    { "string", "string" },
                },
                ServiceAccountName = "string",
                TimeoutSeconds = 0,
                Volumes = new[]
                {
                    new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeArgs
                    {
                        Name = "string",
                        Csi = new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeCsiArgs
                        {
                            Driver = "string",
                            ReadOnly = false,
                            VolumeAttributes = 
                            {
                                { "string", "string" },
                            },
                        },
                        EmptyDir = new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeEmptyDirArgs
                        {
                            Medium = "string",
                            SizeLimit = "string",
                        },
                        Nfs = new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeNfsArgs
                        {
                            Path = "string",
                            Server = "string",
                            ReadOnly = false,
                        },
                        Secret = new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeSecretArgs
                        {
                            SecretName = "string",
                            DefaultMode = 0,
                            Items = new[]
                            {
                                new Gcp.CloudRun.Inputs.ServiceTemplateSpecVolumeSecretItemArgs
                                {
                                    Key = "string",
                                    Path = "string",
                                    Mode = 0,
                                },
                            },
                        },
                    },
                },
            },
        },
        Traffics = new[]
        {
            new Gcp.CloudRun.Inputs.ServiceTrafficArgs
            {
                Percent = 0,
                LatestRevision = false,
                RevisionName = "string",
                Tag = "string",
                Url = "string",
            },
        },
    });
    
    example, err := cloudrun.NewService(ctx, "gcpServiceResource", &cloudrun.ServiceArgs{
    	Location:                 pulumi.String("string"),
    	AutogenerateRevisionName: pulumi.Bool(false),
    	Metadata: &cloudrun.ServiceMetadataArgs{
    		Annotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		EffectiveAnnotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		EffectiveLabels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Generation: pulumi.Int(0),
    		Labels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Namespace: pulumi.String("string"),
    		PulumiLabels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		ResourceVersion: pulumi.String("string"),
    		SelfLink:        pulumi.String("string"),
    		Uid:             pulumi.String("string"),
    	},
    	Name:    pulumi.String("string"),
    	Project: pulumi.String("string"),
    	Template: &cloudrun.ServiceTemplateArgs{
    		Metadata: &cloudrun.ServiceTemplateMetadataArgs{
    			Annotations: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Generation: pulumi.Int(0),
    			Labels: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Name:            pulumi.String("string"),
    			Namespace:       pulumi.String("string"),
    			ResourceVersion: pulumi.String("string"),
    			SelfLink:        pulumi.String("string"),
    			Uid:             pulumi.String("string"),
    		},
    		Spec: &cloudrun.ServiceTemplateSpecArgs{
    			ContainerConcurrency: pulumi.Int(0),
    			Containers: cloudrun.ServiceTemplateSpecContainerArray{
    				&cloudrun.ServiceTemplateSpecContainerArgs{
    					Image: pulumi.String("string"),
    					Args: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Commands: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Envs: cloudrun.ServiceTemplateSpecContainerEnvArray{
    						&cloudrun.ServiceTemplateSpecContainerEnvArgs{
    							Name:  pulumi.String("string"),
    							Value: pulumi.String("string"),
    							ValueFrom: &cloudrun.ServiceTemplateSpecContainerEnvValueFromArgs{
    								SecretKeyRef: &cloudrun.ServiceTemplateSpecContainerEnvValueFromSecretKeyRefArgs{
    									Key:  pulumi.String("string"),
    									Name: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					LivenessProbe: &cloudrun.ServiceTemplateSpecContainerLivenessProbeArgs{
    						FailureThreshold: pulumi.Int(0),
    						Grpc: &cloudrun.ServiceTemplateSpecContainerLivenessProbeGrpcArgs{
    							Port:    pulumi.Int(0),
    							Service: pulumi.String("string"),
    						},
    						HttpGet: &cloudrun.ServiceTemplateSpecContainerLivenessProbeHttpGetArgs{
    							HttpHeaders: cloudrun.ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeaderArray{
    								&cloudrun.ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    							Path: pulumi.String("string"),
    							Port: pulumi.Int(0),
    						},
    						InitialDelaySeconds: pulumi.Int(0),
    						PeriodSeconds:       pulumi.Int(0),
    						TimeoutSeconds:      pulumi.Int(0),
    					},
    					Name: pulumi.String("string"),
    					Ports: cloudrun.ServiceTemplateSpecContainerPortArray{
    						&cloudrun.ServiceTemplateSpecContainerPortArgs{
    							ContainerPort: pulumi.Int(0),
    							Name:          pulumi.String("string"),
    							Protocol:      pulumi.String("string"),
    						},
    					},
    					Resources: &cloudrun.ServiceTemplateSpecContainerResourcesArgs{
    						Limits: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    						Requests: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    					},
    					StartupProbe: &cloudrun.ServiceTemplateSpecContainerStartupProbeArgs{
    						FailureThreshold: pulumi.Int(0),
    						Grpc: &cloudrun.ServiceTemplateSpecContainerStartupProbeGrpcArgs{
    							Port:    pulumi.Int(0),
    							Service: pulumi.String("string"),
    						},
    						HttpGet: &cloudrun.ServiceTemplateSpecContainerStartupProbeHttpGetArgs{
    							HttpHeaders: cloudrun.ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeaderArray{
    								&cloudrun.ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    							Path: pulumi.String("string"),
    							Port: pulumi.Int(0),
    						},
    						InitialDelaySeconds: pulumi.Int(0),
    						PeriodSeconds:       pulumi.Int(0),
    						TcpSocket: &cloudrun.ServiceTemplateSpecContainerStartupProbeTcpSocketArgs{
    							Port: pulumi.Int(0),
    						},
    						TimeoutSeconds: pulumi.Int(0),
    					},
    					VolumeMounts: cloudrun.ServiceTemplateSpecContainerVolumeMountArray{
    						&cloudrun.ServiceTemplateSpecContainerVolumeMountArgs{
    							MountPath: pulumi.String("string"),
    							Name:      pulumi.String("string"),
    						},
    					},
    				},
    			},
    			NodeSelector: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			ServiceAccountName: pulumi.String("string"),
    			TimeoutSeconds:     pulumi.Int(0),
    			Volumes: cloudrun.ServiceTemplateSpecVolumeArray{
    				&cloudrun.ServiceTemplateSpecVolumeArgs{
    					Name: pulumi.String("string"),
    					Csi: &cloudrun.ServiceTemplateSpecVolumeCsiArgs{
    						Driver:   pulumi.String("string"),
    						ReadOnly: pulumi.Bool(false),
    						VolumeAttributes: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    					},
    					EmptyDir: &cloudrun.ServiceTemplateSpecVolumeEmptyDirArgs{
    						Medium:    pulumi.String("string"),
    						SizeLimit: pulumi.String("string"),
    					},
    					Nfs: &cloudrun.ServiceTemplateSpecVolumeNfsArgs{
    						Path:     pulumi.String("string"),
    						Server:   pulumi.String("string"),
    						ReadOnly: pulumi.Bool(false),
    					},
    					Secret: &cloudrun.ServiceTemplateSpecVolumeSecretArgs{
    						SecretName:  pulumi.String("string"),
    						DefaultMode: pulumi.Int(0),
    						Items: cloudrun.ServiceTemplateSpecVolumeSecretItemArray{
    							&cloudrun.ServiceTemplateSpecVolumeSecretItemArgs{
    								Key:  pulumi.String("string"),
    								Path: pulumi.String("string"),
    								Mode: pulumi.Int(0),
    							},
    						},
    					},
    				},
    			},
    		},
    	},
    	Traffics: cloudrun.ServiceTrafficArray{
    		&cloudrun.ServiceTrafficArgs{
    			Percent:        pulumi.Int(0),
    			LatestRevision: pulumi.Bool(false),
    			RevisionName:   pulumi.String("string"),
    			Tag:            pulumi.String("string"),
    			Url:            pulumi.String("string"),
    		},
    	},
    })
    
    var gcpServiceResource = new Service("gcpServiceResource", ServiceArgs.builder()
        .location("string")
        .autogenerateRevisionName(false)
        .metadata(ServiceMetadataArgs.builder()
            .annotations(Map.of("string", "string"))
            .effectiveAnnotations(Map.of("string", "string"))
            .effectiveLabels(Map.of("string", "string"))
            .generation(0)
            .labels(Map.of("string", "string"))
            .namespace("string")
            .pulumiLabels(Map.of("string", "string"))
            .resourceVersion("string")
            .selfLink("string")
            .uid("string")
            .build())
        .name("string")
        .project("string")
        .template(ServiceTemplateArgs.builder()
            .metadata(ServiceTemplateMetadataArgs.builder()
                .annotations(Map.of("string", "string"))
                .generation(0)
                .labels(Map.of("string", "string"))
                .name("string")
                .namespace("string")
                .resourceVersion("string")
                .selfLink("string")
                .uid("string")
                .build())
            .spec(ServiceTemplateSpecArgs.builder()
                .containerConcurrency(0)
                .containers(ServiceTemplateSpecContainerArgs.builder()
                    .image("string")
                    .args("string")
                    .commands("string")
                    .envs(ServiceTemplateSpecContainerEnvArgs.builder()
                        .name("string")
                        .value("string")
                        .valueFrom(ServiceTemplateSpecContainerEnvValueFromArgs.builder()
                            .secretKeyRef(ServiceTemplateSpecContainerEnvValueFromSecretKeyRefArgs.builder()
                                .key("string")
                                .name("string")
                                .build())
                            .build())
                        .build())
                    .livenessProbe(ServiceTemplateSpecContainerLivenessProbeArgs.builder()
                        .failureThreshold(0)
                        .grpc(ServiceTemplateSpecContainerLivenessProbeGrpcArgs.builder()
                            .port(0)
                            .service("string")
                            .build())
                        .httpGet(ServiceTemplateSpecContainerLivenessProbeHttpGetArgs.builder()
                            .httpHeaders(ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .path("string")
                            .port(0)
                            .build())
                        .initialDelaySeconds(0)
                        .periodSeconds(0)
                        .timeoutSeconds(0)
                        .build())
                    .name("string")
                    .ports(ServiceTemplateSpecContainerPortArgs.builder()
                        .containerPort(0)
                        .name("string")
                        .protocol("string")
                        .build())
                    .resources(ServiceTemplateSpecContainerResourcesArgs.builder()
                        .limits(Map.of("string", "string"))
                        .requests(Map.of("string", "string"))
                        .build())
                    .startupProbe(ServiceTemplateSpecContainerStartupProbeArgs.builder()
                        .failureThreshold(0)
                        .grpc(ServiceTemplateSpecContainerStartupProbeGrpcArgs.builder()
                            .port(0)
                            .service("string")
                            .build())
                        .httpGet(ServiceTemplateSpecContainerStartupProbeHttpGetArgs.builder()
                            .httpHeaders(ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .path("string")
                            .port(0)
                            .build())
                        .initialDelaySeconds(0)
                        .periodSeconds(0)
                        .tcpSocket(ServiceTemplateSpecContainerStartupProbeTcpSocketArgs.builder()
                            .port(0)
                            .build())
                        .timeoutSeconds(0)
                        .build())
                    .volumeMounts(ServiceTemplateSpecContainerVolumeMountArgs.builder()
                        .mountPath("string")
                        .name("string")
                        .build())
                    .build())
                .nodeSelector(Map.of("string", "string"))
                .serviceAccountName("string")
                .timeoutSeconds(0)
                .volumes(ServiceTemplateSpecVolumeArgs.builder()
                    .name("string")
                    .csi(ServiceTemplateSpecVolumeCsiArgs.builder()
                        .driver("string")
                        .readOnly(false)
                        .volumeAttributes(Map.of("string", "string"))
                        .build())
                    .emptyDir(ServiceTemplateSpecVolumeEmptyDirArgs.builder()
                        .medium("string")
                        .sizeLimit("string")
                        .build())
                    .nfs(ServiceTemplateSpecVolumeNfsArgs.builder()
                        .path("string")
                        .server("string")
                        .readOnly(false)
                        .build())
                    .secret(ServiceTemplateSpecVolumeSecretArgs.builder()
                        .secretName("string")
                        .defaultMode(0)
                        .items(ServiceTemplateSpecVolumeSecretItemArgs.builder()
                            .key("string")
                            .path("string")
                            .mode(0)
                            .build())
                        .build())
                    .build())
                .build())
            .build())
        .traffics(ServiceTrafficArgs.builder()
            .percent(0)
            .latestRevision(false)
            .revisionName("string")
            .tag("string")
            .url("string")
            .build())
        .build());
    
    gcp_service_resource = gcp.cloudrun.Service("gcpServiceResource",
        location="string",
        autogenerate_revision_name=False,
        metadata={
            "annotations": {
                "string": "string",
            },
            "effective_annotations": {
                "string": "string",
            },
            "effective_labels": {
                "string": "string",
            },
            "generation": 0,
            "labels": {
                "string": "string",
            },
            "namespace": "string",
            "pulumi_labels": {
                "string": "string",
            },
            "resource_version": "string",
            "self_link": "string",
            "uid": "string",
        },
        name="string",
        project="string",
        template={
            "metadata": {
                "annotations": {
                    "string": "string",
                },
                "generation": 0,
                "labels": {
                    "string": "string",
                },
                "name": "string",
                "namespace": "string",
                "resource_version": "string",
                "self_link": "string",
                "uid": "string",
            },
            "spec": {
                "container_concurrency": 0,
                "containers": [{
                    "image": "string",
                    "args": ["string"],
                    "commands": ["string"],
                    "envs": [{
                        "name": "string",
                        "value": "string",
                        "value_from": {
                            "secret_key_ref": {
                                "key": "string",
                                "name": "string",
                            },
                        },
                    }],
                    "liveness_probe": {
                        "failure_threshold": 0,
                        "grpc": {
                            "port": 0,
                            "service": "string",
                        },
                        "http_get": {
                            "http_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                            "path": "string",
                            "port": 0,
                        },
                        "initial_delay_seconds": 0,
                        "period_seconds": 0,
                        "timeout_seconds": 0,
                    },
                    "name": "string",
                    "ports": [{
                        "container_port": 0,
                        "name": "string",
                        "protocol": "string",
                    }],
                    "resources": {
                        "limits": {
                            "string": "string",
                        },
                        "requests": {
                            "string": "string",
                        },
                    },
                    "startup_probe": {
                        "failure_threshold": 0,
                        "grpc": {
                            "port": 0,
                            "service": "string",
                        },
                        "http_get": {
                            "http_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                            "path": "string",
                            "port": 0,
                        },
                        "initial_delay_seconds": 0,
                        "period_seconds": 0,
                        "tcp_socket": {
                            "port": 0,
                        },
                        "timeout_seconds": 0,
                    },
                    "volume_mounts": [{
                        "mount_path": "string",
                        "name": "string",
                    }],
                }],
                "node_selector": {
                    "string": "string",
                },
                "service_account_name": "string",
                "timeout_seconds": 0,
                "volumes": [{
                    "name": "string",
                    "csi": {
                        "driver": "string",
                        "read_only": False,
                        "volume_attributes": {
                            "string": "string",
                        },
                    },
                    "empty_dir": {
                        "medium": "string",
                        "size_limit": "string",
                    },
                    "nfs": {
                        "path": "string",
                        "server": "string",
                        "read_only": False,
                    },
                    "secret": {
                        "secret_name": "string",
                        "default_mode": 0,
                        "items": [{
                            "key": "string",
                            "path": "string",
                            "mode": 0,
                        }],
                    },
                }],
            },
        },
        traffics=[{
            "percent": 0,
            "latest_revision": False,
            "revision_name": "string",
            "tag": "string",
            "url": "string",
        }])
    
    const gcpServiceResource = new gcp.cloudrun.Service("gcpServiceResource", {
        location: "string",
        autogenerateRevisionName: false,
        metadata: {
            annotations: {
                string: "string",
            },
            effectiveAnnotations: {
                string: "string",
            },
            effectiveLabels: {
                string: "string",
            },
            generation: 0,
            labels: {
                string: "string",
            },
            namespace: "string",
            pulumiLabels: {
                string: "string",
            },
            resourceVersion: "string",
            selfLink: "string",
            uid: "string",
        },
        name: "string",
        project: "string",
        template: {
            metadata: {
                annotations: {
                    string: "string",
                },
                generation: 0,
                labels: {
                    string: "string",
                },
                name: "string",
                namespace: "string",
                resourceVersion: "string",
                selfLink: "string",
                uid: "string",
            },
            spec: {
                containerConcurrency: 0,
                containers: [{
                    image: "string",
                    args: ["string"],
                    commands: ["string"],
                    envs: [{
                        name: "string",
                        value: "string",
                        valueFrom: {
                            secretKeyRef: {
                                key: "string",
                                name: "string",
                            },
                        },
                    }],
                    livenessProbe: {
                        failureThreshold: 0,
                        grpc: {
                            port: 0,
                            service: "string",
                        },
                        httpGet: {
                            httpHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                            path: "string",
                            port: 0,
                        },
                        initialDelaySeconds: 0,
                        periodSeconds: 0,
                        timeoutSeconds: 0,
                    },
                    name: "string",
                    ports: [{
                        containerPort: 0,
                        name: "string",
                        protocol: "string",
                    }],
                    resources: {
                        limits: {
                            string: "string",
                        },
                        requests: {
                            string: "string",
                        },
                    },
                    startupProbe: {
                        failureThreshold: 0,
                        grpc: {
                            port: 0,
                            service: "string",
                        },
                        httpGet: {
                            httpHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                            path: "string",
                            port: 0,
                        },
                        initialDelaySeconds: 0,
                        periodSeconds: 0,
                        tcpSocket: {
                            port: 0,
                        },
                        timeoutSeconds: 0,
                    },
                    volumeMounts: [{
                        mountPath: "string",
                        name: "string",
                    }],
                }],
                nodeSelector: {
                    string: "string",
                },
                serviceAccountName: "string",
                timeoutSeconds: 0,
                volumes: [{
                    name: "string",
                    csi: {
                        driver: "string",
                        readOnly: false,
                        volumeAttributes: {
                            string: "string",
                        },
                    },
                    emptyDir: {
                        medium: "string",
                        sizeLimit: "string",
                    },
                    nfs: {
                        path: "string",
                        server: "string",
                        readOnly: false,
                    },
                    secret: {
                        secretName: "string",
                        defaultMode: 0,
                        items: [{
                            key: "string",
                            path: "string",
                            mode: 0,
                        }],
                    },
                }],
            },
        },
        traffics: [{
            percent: 0,
            latestRevision: false,
            revisionName: "string",
            tag: "string",
            url: "string",
        }],
    });
    
    type: gcp:cloudrun:Service
    properties:
        autogenerateRevisionName: false
        location: string
        metadata:
            annotations:
                string: string
            effectiveAnnotations:
                string: string
            effectiveLabels:
                string: string
            generation: 0
            labels:
                string: string
            namespace: string
            pulumiLabels:
                string: string
            resourceVersion: string
            selfLink: string
            uid: string
        name: string
        project: string
        template:
            metadata:
                annotations:
                    string: string
                generation: 0
                labels:
                    string: string
                name: string
                namespace: string
                resourceVersion: string
                selfLink: string
                uid: string
            spec:
                containerConcurrency: 0
                containers:
                    - args:
                        - string
                      commands:
                        - string
                      envs:
                        - name: string
                          value: string
                          valueFrom:
                            secretKeyRef:
                                key: string
                                name: string
                      image: string
                      livenessProbe:
                        failureThreshold: 0
                        grpc:
                            port: 0
                            service: string
                        httpGet:
                            httpHeaders:
                                - name: string
                                  value: string
                            path: string
                            port: 0
                        initialDelaySeconds: 0
                        periodSeconds: 0
                        timeoutSeconds: 0
                      name: string
                      ports:
                        - containerPort: 0
                          name: string
                          protocol: string
                      resources:
                        limits:
                            string: string
                        requests:
                            string: string
                      startupProbe:
                        failureThreshold: 0
                        grpc:
                            port: 0
                            service: string
                        httpGet:
                            httpHeaders:
                                - name: string
                                  value: string
                            path: string
                            port: 0
                        initialDelaySeconds: 0
                        periodSeconds: 0
                        tcpSocket:
                            port: 0
                        timeoutSeconds: 0
                      volumeMounts:
                        - mountPath: string
                          name: string
                nodeSelector:
                    string: string
                serviceAccountName: string
                timeoutSeconds: 0
                volumes:
                    - csi:
                        driver: string
                        readOnly: false
                        volumeAttributes:
                            string: string
                      emptyDir:
                        medium: string
                        sizeLimit: string
                      name: string
                      nfs:
                        path: string
                        readOnly: false
                        server: string
                      secret:
                        defaultMode: 0
                        items:
                            - key: string
                              mode: 0
                              path: string
                        secretName: string
        traffics:
            - latestRevision: false
              percent: 0
              revisionName: string
              tag: string
              url: string
    

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

    Location string
    The location of the cloud run instance. eg us-central1
    AutogenerateRevisionName bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    Metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    Project string
    Template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    Traffics List<ServiceTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    Location string
    The location of the cloud run instance. eg us-central1
    AutogenerateRevisionName bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    Metadata ServiceMetadataArgs
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    Project string
    Template ServiceTemplateArgs
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    Traffics []ServiceTrafficArgs
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    location String
    The location of the cloud run instance. eg us-central1
    autogenerateRevisionName Boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project String
    template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics List<ServiceTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    location string
    The location of the cloud run instance. eg us-central1
    autogenerateRevisionName boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project string
    template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics ServiceTraffic[]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    location str
    The location of the cloud run instance. eg us-central1
    autogenerate_revision_name bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    metadata ServiceMetadataArgs
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name str
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project str
    template ServiceTemplateArgs
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics Sequence[ServiceTrafficArgs]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    location String
    The location of the cloud run instance. eg us-central1
    autogenerateRevisionName Boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    metadata Property Map
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project String
    template Property Map
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics List<Property Map>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Statuses List<ServiceStatus>
    (Output) Status of the condition, one of True, False, Unknown.
    Id string
    The provider-assigned unique ID for this managed resource.
    Statuses []ServiceStatus
    (Output) Status of the condition, one of True, False, Unknown.
    id String
    The provider-assigned unique ID for this managed resource.
    statuses List<ServiceStatus>
    (Output) Status of the condition, one of True, False, Unknown.
    id string
    The provider-assigned unique ID for this managed resource.
    statuses ServiceStatus[]
    (Output) Status of the condition, one of True, False, Unknown.
    id str
    The provider-assigned unique ID for this managed resource.
    statuses Sequence[ServiceStatus]
    (Output) Status of the condition, one of True, False, Unknown.
    id String
    The provider-assigned unique ID for this managed resource.
    statuses List<Property Map>
    (Output) Status of the condition, one of True, False, Unknown.

    Look up Existing Service Resource

    Get an existing Service 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?: ServiceState, opts?: CustomResourceOptions): Service
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            autogenerate_revision_name: Optional[bool] = None,
            location: Optional[str] = None,
            metadata: Optional[ServiceMetadataArgs] = None,
            name: Optional[str] = None,
            project: Optional[str] = None,
            statuses: Optional[Sequence[ServiceStatusArgs]] = None,
            template: Optional[ServiceTemplateArgs] = None,
            traffics: Optional[Sequence[ServiceTrafficArgs]] = None) -> Service
    func GetService(ctx *Context, name string, id IDInput, state *ServiceState, opts ...ResourceOption) (*Service, error)
    public static Service Get(string name, Input<string> id, ServiceState? state, CustomResourceOptions? opts = null)
    public static Service get(String name, Output<String> id, ServiceState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AutogenerateRevisionName bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    Location string
    The location of the cloud run instance. eg us-central1
    Metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    Project string
    Statuses List<ServiceStatus>
    (Output) Status of the condition, one of True, False, Unknown.
    Template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    Traffics List<ServiceTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    AutogenerateRevisionName bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    Location string
    The location of the cloud run instance. eg us-central1
    Metadata ServiceMetadataArgs
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    Project string
    Statuses []ServiceStatusArgs
    (Output) Status of the condition, one of True, False, Unknown.
    Template ServiceTemplateArgs
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    Traffics []ServiceTrafficArgs
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    autogenerateRevisionName Boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    location String
    The location of the cloud run instance. eg us-central1
    metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project String
    statuses List<ServiceStatus>
    (Output) Status of the condition, one of True, False, Unknown.
    template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics List<ServiceTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    autogenerateRevisionName boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    location string
    The location of the cloud run instance. eg us-central1
    metadata ServiceMetadata
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project string
    statuses ServiceStatus[]
    (Output) Status of the condition, one of True, False, Unknown.
    template ServiceTemplate
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics ServiceTraffic[]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    autogenerate_revision_name bool
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    location str
    The location of the cloud run instance. eg us-central1
    metadata ServiceMetadataArgs
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name str
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project str
    statuses Sequence[ServiceStatusArgs]
    (Output) Status of the condition, one of True, False, Unknown.
    template ServiceTemplateArgs
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics Sequence[ServiceTrafficArgs]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    autogenerateRevisionName Boolean
    If set to 'true', the revision name (template.metadata.name) will be omitted and autogenerated by Cloud Run. This cannot be set to 'true' while 'template.metadata.name' is also set. (For legacy support, if 'template.metadata.name' is unset in state while this field is set to false, the revision name will still autogenerate.)
    location String
    The location of the cloud run instance. eg us-central1
    metadata Property Map
    Metadata associated with this Service, including name, namespace, labels, and annotations.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
    project String
    statuses List<Property Map>
    (Output) Status of the condition, one of True, False, Unknown.
    template Property Map
    template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.
    traffics List<Property Map>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.

    Supporting Types

    ServiceMetadata, ServiceMetadataArgs

    Annotations Dictionary<string, string>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    EffectiveAnnotations Dictionary<string, string>
    EffectiveLabels Dictionary<string, string>
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Generation int
    (Output) A sequence number representing a specific generation of the desired state.
    Labels Dictionary<string, string>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    Namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    PulumiLabels Dictionary<string, string>
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    ResourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    SelfLink string
    (Output) SelfLink is a URL representing this object.
    Uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    Annotations map[string]string
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    EffectiveAnnotations map[string]string
    EffectiveLabels map[string]string
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Generation int
    (Output) A sequence number representing a specific generation of the desired state.
    Labels map[string]string
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    Namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    PulumiLabels map[string]string
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    ResourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    SelfLink string
    (Output) SelfLink is a URL representing this object.
    Uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Map<String,String>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    effectiveAnnotations Map<String,String>
    effectiveLabels Map<String,String>
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    generation Integer
    (Output) A sequence number representing a specific generation of the desired state.
    labels Map<String,String>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    namespace String
    In Cloud Run the namespace must be equal to either the project ID or project number.
    pulumiLabels Map<String,String>
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    resourceVersion String
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink String
    (Output) SelfLink is a URL representing this object.
    uid String
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations {[key: string]: string}
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    effectiveAnnotations {[key: string]: string}
    effectiveLabels {[key: string]: string}
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    generation number
    (Output) A sequence number representing a specific generation of the desired state.
    labels {[key: string]: string}
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    pulumiLabels {[key: string]: string}
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    resourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink string
    (Output) SelfLink is a URL representing this object.
    uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Mapping[str, str]
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    effective_annotations Mapping[str, str]
    effective_labels Mapping[str, str]
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    generation int
    (Output) A sequence number representing a specific generation of the desired state.
    labels Mapping[str, str]
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    namespace str
    In Cloud Run the namespace must be equal to either the project ID or project number.
    pulumi_labels Mapping[str, str]
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    resource_version str
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    self_link str
    (Output) SelfLink is a URL representing this object.
    uid str
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Map<String>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    effectiveAnnotations Map<String>
    effectiveLabels Map<String>
    (Output) All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    generation Number
    (Output) A sequence number representing a specific generation of the desired state.
    labels Map<String>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    namespace String
    In Cloud Run the namespace must be equal to either the project ID or project number.
    pulumiLabels Map<String>
    (Output) The combination of labels configured directly on the resource and default labels configured on the provider.
    resourceVersion String
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink String
    (Output) SelfLink is a URL representing this object.
    uid String
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.

    ServiceStatus, ServiceStatusArgs

    Conditions List<ServiceStatusCondition>
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    LatestCreatedRevisionName string
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    LatestReadyRevisionName string
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    ObservedGeneration int
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    Traffics List<ServiceStatusTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    Url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    Conditions []ServiceStatusCondition
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    LatestCreatedRevisionName string
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    LatestReadyRevisionName string
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    ObservedGeneration int
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    Traffics []ServiceStatusTraffic
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    Url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    conditions List<ServiceStatusCondition>
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    latestCreatedRevisionName String
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    latestReadyRevisionName String
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    observedGeneration Integer
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    traffics List<ServiceStatusTraffic>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    url String
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    conditions ServiceStatusCondition[]
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    latestCreatedRevisionName string
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    latestReadyRevisionName string
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    observedGeneration number
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    traffics ServiceStatusTraffic[]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    conditions Sequence[ServiceStatusCondition]
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    latest_created_revision_name str
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    latest_ready_revision_name str
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    observed_generation int
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    traffics Sequence[ServiceStatusTraffic]
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    url str
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    conditions List<Property Map>
    (Output) Array of observed Service Conditions, indicating the current ready state of the service. Structure is documented below.
    latestCreatedRevisionName String
    (Output) From ConfigurationStatus. LatestCreatedRevisionName is the last revision that was created from this Service's Configuration. It might not be ready yet, for that use LatestReadyRevisionName.
    latestReadyRevisionName String
    (Output) From ConfigurationStatus. LatestReadyRevisionName holds the name of the latest Revision stamped out from this Service's Configuration that has had its "Ready" condition become "True".
    observedGeneration Number
    (Output) ObservedGeneration is the 'Generation' of the Route that was last processed by the controller. Clients polling for completed reconciliation should poll until observedGeneration = metadata.generation and the Ready condition's status is True or False.
    traffics List<Property Map>
    (Output) Traffic specifies how to distribute traffic over a collection of Knative Revisions and Configurations Structure is documented below.
    url String
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)

    ServiceStatusCondition, ServiceStatusConditionArgs

    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) One-word CamelCase reason for the condition's current status.
    Status string
    (Output) Status of the condition, one of True, False, Unknown.
    Type string
    (Output) Type of domain mapping condition.
    Message string
    (Output) Human readable message indicating details about the current status.
    Reason string
    (Output) One-word CamelCase reason for the condition's current status.
    Status string
    (Output) Status of the condition, one of True, False, Unknown.
    Type string
    (Output) Type of domain mapping condition.
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) One-word CamelCase reason for the condition's current status.
    status String
    (Output) Status of the condition, one of True, False, Unknown.
    type String
    (Output) Type of domain mapping condition.
    message string
    (Output) Human readable message indicating details about the current status.
    reason string
    (Output) One-word CamelCase reason for the condition's current status.
    status string
    (Output) Status of the condition, one of True, False, Unknown.
    type string
    (Output) Type of domain mapping condition.
    message str
    (Output) Human readable message indicating details about the current status.
    reason str
    (Output) One-word CamelCase reason for the condition's current status.
    status str
    (Output) Status of the condition, one of True, False, Unknown.
    type str
    (Output) Type of domain mapping condition.
    message String
    (Output) Human readable message indicating details about the current status.
    reason String
    (Output) One-word CamelCase reason for the condition's current status.
    status String
    (Output) Status of the condition, one of True, False, Unknown.
    type String
    (Output) Type of domain mapping condition.

    ServiceStatusTraffic, ServiceStatusTrafficArgs

    LatestRevision bool
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    Percent int
    Percent specifies percent of the traffic to this Revision or Configuration.
    RevisionName string
    RevisionName of a specific revision to which to send this portion of traffic.
    Tag string
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    Url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    LatestRevision bool
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    Percent int
    Percent specifies percent of the traffic to this Revision or Configuration.
    RevisionName string
    RevisionName of a specific revision to which to send this portion of traffic.
    Tag string
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    Url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    latestRevision Boolean
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    percent Integer
    Percent specifies percent of the traffic to this Revision or Configuration.
    revisionName String
    RevisionName of a specific revision to which to send this portion of traffic.
    tag String
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    url String
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    latestRevision boolean
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    percent number
    Percent specifies percent of the traffic to this Revision or Configuration.
    revisionName string
    RevisionName of a specific revision to which to send this portion of traffic.
    tag string
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    url string
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    latest_revision bool
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    percent int
    Percent specifies percent of the traffic to this Revision or Configuration.
    revision_name str
    RevisionName of a specific revision to which to send this portion of traffic.
    tag str
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    url str
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)
    latestRevision Boolean
    LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.
    percent Number
    Percent specifies percent of the traffic to this Revision or Configuration.
    revisionName String
    RevisionName of a specific revision to which to send this portion of traffic.
    tag String
    Tag is optionally used to expose a dedicated url for referencing this target exclusively.
    url String
    (Output) URL displays the URL for accessing tagged traffic targets. URL is displayed in status, and is disallowed on spec. URL must contain a scheme (e.g. http://) and a hostname, but may not contain anything else (e.g. basic auth, url path, etc.)

    ServiceTemplate, ServiceTemplateArgs

    Metadata ServiceTemplateMetadata
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    Spec ServiceTemplateSpec
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.
    Metadata ServiceTemplateMetadata
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    Spec ServiceTemplateSpec
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.
    metadata ServiceTemplateMetadata
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    spec ServiceTemplateSpec
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.
    metadata ServiceTemplateMetadata
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    spec ServiceTemplateSpec
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.
    metadata ServiceTemplateMetadata
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    spec ServiceTemplateSpec
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.
    metadata Property Map
    Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. To set minimum instances for this revision, use the "autoscaling.knative.dev/minScale" annotation key. To set maximum instances for this revision, use the "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL connections for the revision, use the "run.googleapis.com/cloudsql-instances" annotation key. Structure is documented below.
    spec Property Map
    RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.

    ServiceTemplateMetadata, ServiceTemplateMetadataArgs

    Annotations Dictionary<string, string>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    Generation int
    (Output) A sequence number representing a specific generation of the desired state.
    Labels Dictionary<string, string>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    Namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    ResourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    SelfLink string
    (Output) SelfLink is a URL representing this object.
    Uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    Annotations map[string]string
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    Generation int
    (Output) A sequence number representing a specific generation of the desired state.
    Labels map[string]string
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    Name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    Namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    ResourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    SelfLink string
    (Output) SelfLink is a URL representing this object.
    Uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Map<String,String>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    generation Integer
    (Output) A sequence number representing a specific generation of the desired state.
    labels Map<String,String>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    namespace String
    In Cloud Run the namespace must be equal to either the project ID or project number.
    resourceVersion String
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink String
    (Output) SelfLink is a URL representing this object.
    uid String
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations {[key: string]: string}
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    generation number
    (Output) A sequence number representing a specific generation of the desired state.
    labels {[key: string]: string}
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    name string
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    namespace string
    In Cloud Run the namespace must be equal to either the project ID or project number.
    resourceVersion string
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink string
    (Output) SelfLink is a URL representing this object.
    uid string
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Mapping[str, str]
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    generation int
    (Output) A sequence number representing a specific generation of the desired state.
    labels Mapping[str, str]
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    name str
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    namespace str
    In Cloud Run the namespace must be equal to either the project ID or project number.
    resource_version str
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    self_link str
    (Output) SelfLink is a URL representing this object.
    uid str
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
    annotations Map<String>
    Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations Note: The Cloud Run API may add additional annotations that were not provided in your config. If the provider plan shows a diff where a server-side annotation is added, you can add it to your config or apply the lifecycle.ignore_changes rule to the metadata.0.annotations field. Annotations with run.googleapis.com/ and autoscaling.knative.dev are restricted. Use the following annotation keys to configure features on a Service:

    • run.googleapis.com/binary-authorization-breakglass sets the Binary Authorization breakglass.
    • run.googleapis.com/binary-authorization sets the Binary Authorization.
    • run.googleapis.com/client-name sets the client name calling the Cloud Run API.
    • run.googleapis.com/custom-audiences sets the custom audiences that can be used in the audience field of ID token for authenticated requests.
    • run.googleapis.com/description sets a user defined description for the Service.
    • run.googleapis.com/ingress sets the ingress settings for the Service. For example, "run.googleapis.com/ingress" = "all".
    • run.googleapis.com/launch-stage sets the launch stage when a preview feature is used. For example, "run.googleapis.com/launch-stage": "BETA" 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.
    generation Number
    (Output) A sequence number representing a specific generation of the desired state.
    labels Map<String>
    Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. 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.
    name String
    Name must be unique within a Google Cloud project and region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated.
    namespace String
    In Cloud Run the namespace must be equal to either the project ID or project number.
    resourceVersion String
    (Output) An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources.
    selfLink String
    (Output) SelfLink is a URL representing this object.
    uid String
    (Output) UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations.

    ServiceTemplateSpec, ServiceTemplateSpecArgs

    ContainerConcurrency int
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    Containers List<ServiceTemplateSpecContainer>
    Containers defines the unit of execution for this Revision. Structure is documented below.
    NodeSelector Dictionary<string, string>
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    ServiceAccountName string
    Email address of the IAM service account associated with the revision of the service. 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.
    ServingState string

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    TimeoutSeconds int
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    Volumes List<ServiceTemplateSpecVolume>
    Volume represents a named volume in a container. Structure is documented below.
    ContainerConcurrency int
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    Containers []ServiceTemplateSpecContainer
    Containers defines the unit of execution for this Revision. Structure is documented below.
    NodeSelector map[string]string
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    ServiceAccountName string
    Email address of the IAM service account associated with the revision of the service. 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.
    ServingState string

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    TimeoutSeconds int
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    Volumes []ServiceTemplateSpecVolume
    Volume represents a named volume in a container. Structure is documented below.
    containerConcurrency Integer
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    containers List<ServiceTemplateSpecContainer>
    Containers defines the unit of execution for this Revision. Structure is documented below.
    nodeSelector Map<String,String>
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    serviceAccountName String
    Email address of the IAM service account associated with the revision of the service. 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.
    servingState String

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    timeoutSeconds Integer
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    volumes List<ServiceTemplateSpecVolume>
    Volume represents a named volume in a container. Structure is documented below.
    containerConcurrency number
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    containers ServiceTemplateSpecContainer[]
    Containers defines the unit of execution for this Revision. Structure is documented below.
    nodeSelector {[key: string]: string}
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    serviceAccountName string
    Email address of the IAM service account associated with the revision of the service. 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.
    servingState string

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    timeoutSeconds number
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    volumes ServiceTemplateSpecVolume[]
    Volume represents a named volume in a container. Structure is documented below.
    container_concurrency int
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    containers Sequence[ServiceTemplateSpecContainer]
    Containers defines the unit of execution for this Revision. Structure is documented below.
    node_selector Mapping[str, str]
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    service_account_name str
    Email address of the IAM service account associated with the revision of the service. 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.
    serving_state str

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    timeout_seconds int
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    volumes Sequence[ServiceTemplateSpecVolume]
    Volume represents a named volume in a container. Structure is documented below.
    containerConcurrency Number
    ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
    containers List<Property Map>
    Containers defines the unit of execution for this Revision. Structure is documented below.
    nodeSelector Map<String>
    Node Selector describes the hardware requirements of the resources. Use the following node selector keys to configure features on a Revision:

    • run.googleapis.com/accelerator sets the type of GPU required by the Revision to run.
    serviceAccountName String
    Email address of the IAM service account associated with the revision of the service. 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.
    servingState String

    (Output, Deprecated) ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

    Warning: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: serving_state is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    timeoutSeconds Number
    TimeoutSeconds holds the max duration the instance is allowed for responding to a request.
    volumes List<Property Map>
    Volume represents a named volume in a container. Structure is documented below.

    ServiceTemplateSpecContainer, ServiceTemplateSpecContainerArgs

    Image string
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    Args List<string>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    Commands List<string>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    EnvFroms List<ServiceTemplateSpecContainerEnvFrom>

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Envs List<ServiceTemplateSpecContainerEnv>
    List of environment variables to set in the container. Structure is documented below.
    LivenessProbe ServiceTemplateSpecContainerLivenessProbe
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    Name string
    Name of the container
    Ports List<ServiceTemplateSpecContainerPort>
    List of open ports in the container. Structure is documented below.
    Resources ServiceTemplateSpecContainerResources
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    StartupProbe ServiceTemplateSpecContainerStartupProbe
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    VolumeMounts List<ServiceTemplateSpecContainerVolumeMount>
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    WorkingDir string

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Image string
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    Args []string
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    Commands []string
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    EnvFroms []ServiceTemplateSpecContainerEnvFrom

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Envs []ServiceTemplateSpecContainerEnv
    List of environment variables to set in the container. Structure is documented below.
    LivenessProbe ServiceTemplateSpecContainerLivenessProbe
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    Name string
    Name of the container
    Ports []ServiceTemplateSpecContainerPort
    List of open ports in the container. Structure is documented below.
    Resources ServiceTemplateSpecContainerResources
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    StartupProbe ServiceTemplateSpecContainerStartupProbe
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    VolumeMounts []ServiceTemplateSpecContainerVolumeMount
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    WorkingDir string

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    image String
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    args List<String>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    commands List<String>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    envFroms List<ServiceTemplateSpecContainerEnvFrom>

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    envs List<ServiceTemplateSpecContainerEnv>
    List of environment variables to set in the container. Structure is documented below.
    livenessProbe ServiceTemplateSpecContainerLivenessProbe
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    name String
    Name of the container
    ports List<ServiceTemplateSpecContainerPort>
    List of open ports in the container. Structure is documented below.
    resources ServiceTemplateSpecContainerResources
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    startupProbe ServiceTemplateSpecContainerStartupProbe
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    volumeMounts List<ServiceTemplateSpecContainerVolumeMount>
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    workingDir String

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    image string
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    args string[]
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    commands string[]
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    envFroms ServiceTemplateSpecContainerEnvFrom[]

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    envs ServiceTemplateSpecContainerEnv[]
    List of environment variables to set in the container. Structure is documented below.
    livenessProbe ServiceTemplateSpecContainerLivenessProbe
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    name string
    Name of the container
    ports ServiceTemplateSpecContainerPort[]
    List of open ports in the container. Structure is documented below.
    resources ServiceTemplateSpecContainerResources
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    startupProbe ServiceTemplateSpecContainerStartupProbe
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    volumeMounts ServiceTemplateSpecContainerVolumeMount[]
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    workingDir string

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    image str
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    args Sequence[str]
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    commands Sequence[str]
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    env_froms Sequence[ServiceTemplateSpecContainerEnvFrom]

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    envs Sequence[ServiceTemplateSpecContainerEnv]
    List of environment variables to set in the container. Structure is documented below.
    liveness_probe ServiceTemplateSpecContainerLivenessProbe
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    name str
    Name of the container
    ports Sequence[ServiceTemplateSpecContainerPort]
    List of open ports in the container. Structure is documented below.
    resources ServiceTemplateSpecContainerResources
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    startup_probe ServiceTemplateSpecContainerStartupProbe
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    volume_mounts Sequence[ServiceTemplateSpecContainerVolumeMount]
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    working_dir str

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    image String
    Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello
    args List<String>
    Arguments to the entrypoint. The docker image's CMD is used if this is not provided.
    commands List<String>
    Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided.
    envFroms List<Property Map>

    (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

    Warning: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: env_from is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    envs List<Property Map>
    List of environment variables to set in the container. Structure is documented below.
    livenessProbe Property Map
    Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Structure is documented below.
    name String
    Name of the container
    ports List<Property Map>
    List of open ports in the container. Structure is documented below.
    resources Property Map
    Compute Resources required by this container. Used to set values such as max memory Structure is documented below.
    startupProbe Property Map
    Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. Structure is documented below.
    volumeMounts List<Property Map>
    Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Structure is documented below.
    workingDir String

    (Optional, Deprecated) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.

    Warning: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    Deprecated: working_dir is deprecated and will be removed in a future major release. This field is not supported by the Cloud Run API.

    ServiceTemplateSpecContainerEnv, ServiceTemplateSpecContainerEnvArgs

    Name string
    Name of the environment variable.
    Value string
    Defaults to "".
    ValueFrom ServiceTemplateSpecContainerEnvValueFrom
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.
    Name string
    Name of the environment variable.
    Value string
    Defaults to "".
    ValueFrom ServiceTemplateSpecContainerEnvValueFrom
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.
    name String
    Name of the environment variable.
    value String
    Defaults to "".
    valueFrom ServiceTemplateSpecContainerEnvValueFrom
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.
    name string
    Name of the environment variable.
    value string
    Defaults to "".
    valueFrom ServiceTemplateSpecContainerEnvValueFrom
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.
    name str
    Name of the environment variable.
    value str
    Defaults to "".
    value_from ServiceTemplateSpecContainerEnvValueFrom
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.
    name String
    Name of the environment variable.
    value String
    Defaults to "".
    valueFrom Property Map
    Source for the environment variable's value. Only supports secret_key_ref. Structure is documented below.

    ServiceTemplateSpecContainerEnvFrom, ServiceTemplateSpecContainerEnvFromArgs

    ConfigMapRef ServiceTemplateSpecContainerEnvFromConfigMapRef
    The ConfigMap to select from. Structure is documented below.
    Prefix string
    An optional identifier to prepend to each key in the ConfigMap.
    SecretRef ServiceTemplateSpecContainerEnvFromSecretRef
    The Secret to select from. Structure is documented below.
    ConfigMapRef ServiceTemplateSpecContainerEnvFromConfigMapRef
    The ConfigMap to select from. Structure is documented below.
    Prefix string
    An optional identifier to prepend to each key in the ConfigMap.
    SecretRef ServiceTemplateSpecContainerEnvFromSecretRef
    The Secret to select from. Structure is documented below.
    configMapRef ServiceTemplateSpecContainerEnvFromConfigMapRef
    The ConfigMap to select from. Structure is documented below.
    prefix String
    An optional identifier to prepend to each key in the ConfigMap.
    secretRef ServiceTemplateSpecContainerEnvFromSecretRef
    The Secret to select from. Structure is documented below.
    configMapRef ServiceTemplateSpecContainerEnvFromConfigMapRef
    The ConfigMap to select from. Structure is documented below.
    prefix string
    An optional identifier to prepend to each key in the ConfigMap.
    secretRef ServiceTemplateSpecContainerEnvFromSecretRef
    The Secret to select from. Structure is documented below.
    config_map_ref ServiceTemplateSpecContainerEnvFromConfigMapRef
    The ConfigMap to select from. Structure is documented below.
    prefix str
    An optional identifier to prepend to each key in the ConfigMap.
    secret_ref ServiceTemplateSpecContainerEnvFromSecretRef
    The Secret to select from. Structure is documented below.
    configMapRef Property Map
    The ConfigMap to select from. Structure is documented below.
    prefix String
    An optional identifier to prepend to each key in the ConfigMap.
    secretRef Property Map
    The Secret to select from. Structure is documented below.

    ServiceTemplateSpecContainerEnvFromConfigMapRef, ServiceTemplateSpecContainerEnvFromConfigMapRefArgs

    LocalObjectReference ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference
    The ConfigMap to select from. Structure is documented below.
    Optional bool
    Specify whether the ConfigMap must be defined
    LocalObjectReference ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference
    The ConfigMap to select from. Structure is documented below.
    Optional bool
    Specify whether the ConfigMap must be defined
    localObjectReference ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference
    The ConfigMap to select from. Structure is documented below.
    optional Boolean
    Specify whether the ConfigMap must be defined
    localObjectReference ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference
    The ConfigMap to select from. Structure is documented below.
    optional boolean
    Specify whether the ConfigMap must be defined
    local_object_reference ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference
    The ConfigMap to select from. Structure is documented below.
    optional bool
    Specify whether the ConfigMap must be defined
    localObjectReference Property Map
    The ConfigMap to select from. Structure is documented below.
    optional Boolean
    Specify whether the ConfigMap must be defined

    ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference, ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReferenceArgs

    Name string
    Name of the referent.
    Name string
    Name of the referent.
    name String
    Name of the referent.
    name string
    Name of the referent.
    name str
    Name of the referent.
    name String
    Name of the referent.

    ServiceTemplateSpecContainerEnvFromSecretRef, ServiceTemplateSpecContainerEnvFromSecretRefArgs

    LocalObjectReference ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference
    The Secret to select from. Structure is documented below.
    Optional bool
    Specify whether the Secret must be defined
    LocalObjectReference ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference
    The Secret to select from. Structure is documented below.
    Optional bool
    Specify whether the Secret must be defined
    localObjectReference ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference
    The Secret to select from. Structure is documented below.
    optional Boolean
    Specify whether the Secret must be defined
    localObjectReference ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference
    The Secret to select from. Structure is documented below.
    optional boolean
    Specify whether the Secret must be defined
    local_object_reference ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference
    The Secret to select from. Structure is documented below.
    optional bool
    Specify whether the Secret must be defined
    localObjectReference Property Map
    The Secret to select from. Structure is documented below.
    optional Boolean
    Specify whether the Secret must be defined

    ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference, ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReferenceArgs

    Name string
    Name of the referent.
    Name string
    Name of the referent.
    name String
    Name of the referent.
    name string
    Name of the referent.
    name str
    Name of the referent.
    name String
    Name of the referent.

    ServiceTemplateSpecContainerEnvValueFrom, ServiceTemplateSpecContainerEnvValueFromArgs

    SecretKeyRef ServiceTemplateSpecContainerEnvValueFromSecretKeyRef
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.
    SecretKeyRef ServiceTemplateSpecContainerEnvValueFromSecretKeyRef
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.
    secretKeyRef ServiceTemplateSpecContainerEnvValueFromSecretKeyRef
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.
    secretKeyRef ServiceTemplateSpecContainerEnvValueFromSecretKeyRef
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.
    secret_key_ref ServiceTemplateSpecContainerEnvValueFromSecretKeyRef
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.
    secretKeyRef Property Map
    Selects a key (version) of a secret in Secret Manager. Structure is documented below.

    ServiceTemplateSpecContainerEnvValueFromSecretKeyRef, ServiceTemplateSpecContainerEnvValueFromSecretKeyRefArgs

    Key string
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    Name string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    Key string
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    Name string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    key String
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    name String
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    key string
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    name string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    key str
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    name str
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    key String
    A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version.
    name String
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects/{project-id|project-number}/secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.

    ServiceTemplateSpecContainerLivenessProbe, ServiceTemplateSpecContainerLivenessProbeArgs

    FailureThreshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    Grpc ServiceTemplateSpecContainerLivenessProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    HttpGet ServiceTemplateSpecContainerLivenessProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    InitialDelaySeconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    PeriodSeconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    TimeoutSeconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.
    FailureThreshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    Grpc ServiceTemplateSpecContainerLivenessProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    HttpGet ServiceTemplateSpecContainerLivenessProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    InitialDelaySeconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    PeriodSeconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    TimeoutSeconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.
    failureThreshold Integer
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerLivenessProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet ServiceTemplateSpecContainerLivenessProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds Integer
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    periodSeconds Integer
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    timeoutSeconds Integer
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.
    failureThreshold number
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerLivenessProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet ServiceTemplateSpecContainerLivenessProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds number
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    periodSeconds number
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    timeoutSeconds number
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.
    failure_threshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerLivenessProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    http_get ServiceTemplateSpecContainerLivenessProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initial_delay_seconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    period_seconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    timeout_seconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.
    failureThreshold Number
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc Property Map
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet Property Map
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds Number
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 3600.
    periodSeconds Number
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 3600.
    timeoutSeconds Number
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than period_seconds.

    ServiceTemplateSpecContainerLivenessProbeGrpc, ServiceTemplateSpecContainerLivenessProbeGrpcArgs

    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    Service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    Service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port Integer
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service String
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service str
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port Number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service String
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.

    ServiceTemplateSpecContainerLivenessProbeHttpGet, ServiceTemplateSpecContainerLivenessProbeHttpGetArgs

    HttpHeaders List<ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    Path string
    Path to access on the HTTP server. If set, it should not be empty string.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    HttpHeaders []ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    Path string
    Path to access on the HTTP server. If set, it should not be empty string.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders List<ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path String
    Path to access on the HTTP server. If set, it should not be empty string.
    port Integer
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader[]
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path string
    Path to access on the HTTP server. If set, it should not be empty string.
    port number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    http_headers Sequence[ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader]
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path str
    Path to access on the HTTP server. If set, it should not be empty string.
    port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders List<Property Map>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path String
    Path to access on the HTTP server. If set, it should not be empty string.
    port Number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.

    ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeader, ServiceTemplateSpecContainerLivenessProbeHttpGetHttpHeaderArgs

    Name string
    The header field name.
    Value string
    The header field value.
    Name string
    The header field name.
    Value string
    The header field value.
    name String
    The header field name.
    value String
    The header field value.
    name string
    The header field name.
    value string
    The header field value.
    name str
    The header field name.
    value str
    The header field value.
    name String
    The header field name.
    value String
    The header field value.

    ServiceTemplateSpecContainerPort, ServiceTemplateSpecContainerPortArgs

    ContainerPort int
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    Name string
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    Protocol string
    Protocol for port. Must be "TCP". Defaults to "TCP".
    ContainerPort int
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    Name string
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    Protocol string
    Protocol for port. Must be "TCP". Defaults to "TCP".
    containerPort Integer
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    name String
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    protocol String
    Protocol for port. Must be "TCP". Defaults to "TCP".
    containerPort number
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    name string
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    protocol string
    Protocol for port. Must be "TCP". Defaults to "TCP".
    container_port int
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    name str
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    protocol str
    Protocol for port. Must be "TCP". Defaults to "TCP".
    containerPort Number
    Port number the container listens on. This must be a valid port number (between 1 and 65535). Defaults to "8080".
    name String
    If specified, used to specify which protocol to use. Allowed values are "http1" (HTTP/1) and "h2c" (HTTP/2 end-to-end). Defaults to "http1".
    protocol String
    Protocol for port. Must be "TCP". Defaults to "TCP".

    ServiceTemplateSpecContainerResources, ServiceTemplateSpecContainerResourcesArgs

    Limits Dictionary<string, string>
    Limits describes the maximum amount of compute resources allowed. 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
    Requests Dictionary<string, string>
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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
    Limits describes the maximum amount of compute resources allowed. 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
    Requests map[string]string
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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>
    Limits describes the maximum amount of compute resources allowed. 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
    requests Map<String,String>
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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}
    Limits describes the maximum amount of compute resources allowed. 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
    requests {[key: string]: string}
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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]
    Limits describes the maximum amount of compute resources allowed. 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
    requests Mapping[str, str]
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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>
    Limits describes the maximum amount of compute resources allowed. 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
    requests Map<String>
    Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. 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

    ServiceTemplateSpecContainerStartupProbe, ServiceTemplateSpecContainerStartupProbeArgs

    FailureThreshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    Grpc ServiceTemplateSpecContainerStartupProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    HttpGet ServiceTemplateSpecContainerStartupProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    InitialDelaySeconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    PeriodSeconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    TcpSocket ServiceTemplateSpecContainerStartupProbeTcpSocket
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    TimeoutSeconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.
    FailureThreshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    Grpc ServiceTemplateSpecContainerStartupProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    HttpGet ServiceTemplateSpecContainerStartupProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    InitialDelaySeconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    PeriodSeconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    TcpSocket ServiceTemplateSpecContainerStartupProbeTcpSocket
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    TimeoutSeconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.
    failureThreshold Integer
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerStartupProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet ServiceTemplateSpecContainerStartupProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds Integer
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    periodSeconds Integer
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    tcpSocket ServiceTemplateSpecContainerStartupProbeTcpSocket
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    timeoutSeconds Integer
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.
    failureThreshold number
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerStartupProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet ServiceTemplateSpecContainerStartupProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds number
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    periodSeconds number
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    tcpSocket ServiceTemplateSpecContainerStartupProbeTcpSocket
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    timeoutSeconds number
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.
    failure_threshold int
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc ServiceTemplateSpecContainerStartupProbeGrpc
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    http_get ServiceTemplateSpecContainerStartupProbeHttpGet
    HttpGet specifies the http request to perform. Structure is documented below.
    initial_delay_seconds int
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    period_seconds int
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    tcp_socket ServiceTemplateSpecContainerStartupProbeTcpSocket
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    timeout_seconds int
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.
    failureThreshold Number
    Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
    grpc Property Map
    GRPC specifies an action involving a GRPC port. Structure is documented below.
    httpGet Property Map
    HttpGet specifies the http request to perform. Structure is documented below.
    initialDelaySeconds Number
    Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value is 240.
    periodSeconds Number
    How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value is 240.
    tcpSocket Property Map
    TcpSocket specifies an action involving a TCP port. Structure is documented below.
    timeoutSeconds Number
    Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. Maximum value is 3600. Must be smaller than periodSeconds.

    ServiceTemplateSpecContainerStartupProbeGrpc, ServiceTemplateSpecContainerStartupProbeGrpcArgs

    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    Service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    Service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port Integer
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service String
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service string
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service str
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.
    port Number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    service String
    The name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). If this is not specified, the default behavior is defined by gRPC.

    ServiceTemplateSpecContainerStartupProbeHttpGet, ServiceTemplateSpecContainerStartupProbeHttpGetArgs

    HttpHeaders List<ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    Path string
    Path to access on the HTTP server. If set, it should not be empty string.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    HttpHeaders []ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    Path string
    Path to access on the HTTP server. If set, it should not be empty string.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders List<ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path String
    Path to access on the HTTP server. If set, it should not be empty string.
    port Integer
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader[]
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path string
    Path to access on the HTTP server. If set, it should not be empty string.
    port number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    http_headers Sequence[ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader]
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path str
    Path to access on the HTTP server. If set, it should not be empty string.
    port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    httpHeaders List<Property Map>
    Custom headers to set in the request. HTTP allows repeated headers. Structure is documented below.
    path String
    Path to access on the HTTP server. If set, it should not be empty string.
    port Number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.

    ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeader, ServiceTemplateSpecContainerStartupProbeHttpGetHttpHeaderArgs

    Name string
    The header field name.
    Value string
    The header field value.
    Name string
    The header field name.
    Value string
    The header field value.
    name String
    The header field name.
    value String
    The header field value.
    name string
    The header field name.
    value string
    The header field value.
    name str
    The header field name.
    value str
    The header field value.
    name String
    The header field name.
    value String
    The header field value.

    ServiceTemplateSpecContainerStartupProbeTcpSocket, ServiceTemplateSpecContainerStartupProbeTcpSocketArgs

    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    Port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    port Integer
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    port number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    port int
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.
    port Number
    Port number to access on the container. Number must be in the range 1 to 65535. If not specified, defaults to the same value as container.ports[0].containerPort.

    ServiceTemplateSpecContainerVolumeMount, ServiceTemplateSpecContainerVolumeMountArgs

    MountPath string
    Path within the container at which the volume should be mounted. Must not contain ':'.
    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 ':'.
    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 ':'.
    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 ':'.
    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 ':'.
    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 ':'.
    name String
    This must match the Name of a Volume.

    ServiceTemplateSpecVolume, ServiceTemplateSpecVolumeArgs

    Name string
    Volume's name.
    Csi ServiceTemplateSpecVolumeCsi
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    EmptyDir ServiceTemplateSpecVolumeEmptyDir
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    Nfs ServiceTemplateSpecVolumeNfs
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    Secret ServiceTemplateSpecVolumeSecret
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.
    Name string
    Volume's name.
    Csi ServiceTemplateSpecVolumeCsi
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    EmptyDir ServiceTemplateSpecVolumeEmptyDir
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    Nfs ServiceTemplateSpecVolumeNfs
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    Secret ServiceTemplateSpecVolumeSecret
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.
    name String
    Volume's name.
    csi ServiceTemplateSpecVolumeCsi
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    emptyDir ServiceTemplateSpecVolumeEmptyDir
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    nfs ServiceTemplateSpecVolumeNfs
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    secret ServiceTemplateSpecVolumeSecret
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.
    name string
    Volume's name.
    csi ServiceTemplateSpecVolumeCsi
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    emptyDir ServiceTemplateSpecVolumeEmptyDir
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    nfs ServiceTemplateSpecVolumeNfs
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    secret ServiceTemplateSpecVolumeSecret
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.
    name str
    Volume's name.
    csi ServiceTemplateSpecVolumeCsi
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    empty_dir ServiceTemplateSpecVolumeEmptyDir
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    nfs ServiceTemplateSpecVolumeNfs
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    secret ServiceTemplateSpecVolumeSecret
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.
    name String
    Volume's name.
    csi Property Map
    A filesystem specified by the Container Storage Interface (CSI). Structure is documented below.
    emptyDir Property Map
    Ephemeral storage which can be backed by real disks (HD, SSD), network storage or memory (i.e. tmpfs). For now only in memory (tmpfs) is supported. It is ephemeral in the sense that when the sandbox is taken down, the data is destroyed with it (it does not persist across sandbox runs). Structure is documented below.
    nfs Property Map
    A filesystem backed by a Network File System share. This filesystem requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2" Structure is documented below.
    secret Property Map
    The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. Structure is documented below.

    ServiceTemplateSpecVolumeCsi, ServiceTemplateSpecVolumeCsiArgs

    Driver string
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    ReadOnly bool
    If true, all mounts created from this volume will be read-only.
    VolumeAttributes Dictionary<string, string>
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.
    Driver string
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    ReadOnly bool
    If true, all mounts created from this volume will be read-only.
    VolumeAttributes map[string]string
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.
    driver String
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    readOnly Boolean
    If true, all mounts created from this volume will be read-only.
    volumeAttributes Map<String,String>
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.
    driver string
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    readOnly boolean
    If true, all mounts created from this volume will be read-only.
    volumeAttributes {[key: string]: string}
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.
    driver str
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    read_only bool
    If true, all mounts created from this volume will be read-only.
    volume_attributes Mapping[str, str]
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.
    driver String
    Unique name representing the type of file system to be created. Cloud Run supports the following values:

    • gcsfuse.run.googleapis.com: Mount a Google Cloud Storage bucket using GCSFuse. This driver requires the run.googleapis.com/execution-environment annotation to be unset or set to "gen2"
    readOnly Boolean
    If true, all mounts created from this volume will be read-only.
    volumeAttributes Map<String>
    Driver-specific attributes. The following options are supported for available drivers:

    • gcsfuse.run.googleapis.com
    • bucketName: The name of the Cloud Storage Bucket that backs this volume. The Cloud Run Service identity must have access to this bucket.

    ServiceTemplateSpecVolumeEmptyDir, ServiceTemplateSpecVolumeEmptyDirArgs

    Medium string
    The medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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 medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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 medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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 medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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 medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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 medium on which the data is stored. The default is "" which means to use the node's default medium. Must be an empty string (default) or 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.

    ServiceTemplateSpecVolumeNfs, ServiceTemplateSpecVolumeNfsArgs

    Path string
    Path exported by the NFS server
    Server string
    IP address or hostname of the NFS server
    ReadOnly bool
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    Path string
    Path exported by the NFS server
    Server string
    IP address or hostname of the NFS server
    ReadOnly bool
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    path String
    Path exported by the NFS server
    server String
    IP address or hostname of the NFS server
    readOnly Boolean
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    path string
    Path exported by the NFS server
    server string
    IP address or hostname of the NFS server
    readOnly boolean
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    path str
    Path exported by the NFS server
    server str
    IP address or hostname of the NFS server
    read_only bool
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    path String
    Path exported by the NFS server
    server String
    IP address or hostname of the NFS server
    readOnly Boolean
    If true, mount the NFS volume as read only in all mounts. Defaults to false.


    ServiceTemplateSpecVolumeSecret, ServiceTemplateSpecVolumeSecretArgs

    SecretName string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    DefaultMode int
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    Items List<ServiceTemplateSpecVolumeSecretItem>
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.
    SecretName string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    DefaultMode int
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    Items []ServiceTemplateSpecVolumeSecretItem
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.
    secretName String
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    defaultMode Integer
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    items List<ServiceTemplateSpecVolumeSecretItem>
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.
    secretName string
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    defaultMode number
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    items ServiceTemplateSpecVolumeSecretItem[]
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.
    secret_name str
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    default_mode int
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    items Sequence[ServiceTemplateSpecVolumeSecretItem]
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.
    secretName String
    The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: {alias}:projects/{project-id|project-number}/secrets/{secret-name}. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation.
    defaultMode Number
    Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    items List<Property Map>
    If unspecified, the volume will expose a file whose name is the secret_name. 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 key and a path. Structure is documented below.

    ServiceTemplateSpecVolumeSecretItem, ServiceTemplateSpecVolumeSecretItemArgs

    Key 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 file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
    Mode int
    Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    Key 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 file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
    Mode int
    Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    key 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 file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
    mode Integer
    Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    key 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 file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
    mode number
    Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
    key str
    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 file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.
    <