UNPKG

googleapis

Version:
970 lines 207 kB
/// <reference types="node" /> import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosPromise, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { Readable } from 'stream'; export declare namespace run_v2 { export interface Options extends GlobalOptions { version: 'v2'; } interface StandardParameters { /** * Auth client or API Key for the request */ auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth; /** * V1 error format. */ '$.xgafv'?: string; /** * OAuth access token. */ access_token?: string; /** * Data format for response. */ alt?: string; /** * JSONP */ callback?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */ quotaUser?: string; /** * Legacy upload protocol for media (e.g. "media", "multipart"). */ uploadType?: string; /** * Upload protocol for media (e.g. "raw", "multipart"). */ upload_protocol?: string; } /** * Cloud Run Admin API * * Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API v1 follows the Knative Serving API specification, while v2 is aligned with Google Cloud AIP-based API standards, as described in https://google.aip.dev/. * * @example * ```js * const {google} = require('googleapis'); * const run = google.run('v2'); * ``` */ export class Run { context: APIRequestContext; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * Settings for Binary Authorization feature. */ export interface Schema$GoogleCloudRunV2BinaryAuthorization { /** * If present, indicates to use Breakglass using this justification. If use_default is False, then it must be empty. For more information on breakglass, see https://cloud.google.com/binary-authorization/docs/using-breakglass */ breakglassJustification?: string | null; /** * If True, indicates to use the default project's binary authorization policy. If False, binary authorization will be disabled. */ useDefault?: boolean | null; } /** * Represents a specific Cloud SQL instance. */ export interface Schema$GoogleCloudRunV2CloudSqlInstance { /** * The Cloud SQL instance connection names, as can be found in https://console.cloud.google.com/sql/instances. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run. Format: {project\}:{location\}:{instance\} */ instances?: string[] | null; } /** * Defines a status condition for a resource. */ export interface Schema$GoogleCloudRunV2Condition { /** * A reason for the execution condition. */ executionReason?: string | null; /** * Last time the condition transitioned from one status to another. */ lastTransitionTime?: string | null; /** * Human readable message indicating details about the current status. */ message?: string | null; /** * A common (service-level) reason for this condition. */ reason?: string | null; /** * A reason for the revision condition. */ revisionReason?: string | null; /** * How to interpret failures of this condition, one of Error, Warning, Info */ severity?: string | null; /** * State of the condition. */ state?: string | null; /** * type is used to communicate the status of the reconciliation process. See also: https://github.com/knative/serving/blob/main/docs/spec/errors.md#error-conditions-and-reporting Types common to all resources include: * "Ready": True when the Resource is ready. */ type?: string | null; } /** * A single application container. This specifies both the container to run, the command to run in the container and the arguments to supply to it. Note that additional arguments may be supplied by the system to the container at runtime. */ export interface Schema$GoogleCloudRunV2Container { /** * Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell */ args?: string[] | null; /** * Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell */ command?: string[] | null; /** * List of environment variables to set in the container. */ env?: Schema$GoogleCloudRunV2EnvVar[]; /** * Required. URL of the Container image in Google Container Registry or Google Artifact Registry. More info: https://kubernetes.io/docs/concepts/containers/images */ image?: string | null; /** * 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 */ livenessProbe?: Schema$GoogleCloudRunV2Probe; /** * Name of the container specified as a DNS_LABEL. */ name?: string | null; /** * List of ports to expose from the container. Only a single port can be specified. The specified ports must be listening on all interfaces (0.0.0.0) within the container to be accessible. If omitted, a port number will be chosen and passed to the container through the PORT environment variable for the container to listen on. */ ports?: Schema$GoogleCloudRunV2ContainerPort[]; /** * Compute Resource requirements by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources */ resources?: Schema$GoogleCloudRunV2ResourceRequirements; /** * 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. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ startupProbe?: Schema$GoogleCloudRunV2Probe; /** * Volume to mount into the container's filesystem. */ volumeMounts?: Schema$GoogleCloudRunV2VolumeMount[]; /** * Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. */ workingDir?: string | null; } /** * ContainerPort represents a network port in a single container. */ export interface Schema$GoogleCloudRunV2ContainerPort { /** * Port number the container listens on. This must be a valid TCP port number, 0 < container_port < 65536. */ containerPort?: number | null; /** * If specified, used to specify which protocol to use. Allowed values are "http1" and "h2c". */ name?: string | null; } /** * EnvVar represents an environment variable present in a Container. */ export interface Schema$GoogleCloudRunV2EnvVar { /** * Required. Name of the environment variable. Must be a C_IDENTIFIER, and mnay not exceed 32768 characters. */ name?: string | null; /** * Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "", and the maximum length is 32768 bytes. */ value?: string | null; /** * Source for the environment variable's value. */ valueSource?: Schema$GoogleCloudRunV2EnvVarSource; } /** * EnvVarSource represents a source for the value of an EnvVar. */ export interface Schema$GoogleCloudRunV2EnvVarSource { /** * Selects a secret and a specific version from Cloud Secret Manager. */ secretKeyRef?: Schema$GoogleCloudRunV2SecretKeySelector; } /** * Execution represents the configuration of a single execution. A execution an immutable resource that references a container image which is run to completion. */ export interface Schema$GoogleCloudRunV2Execution { /** * KRM-style annotations for the resource. */ annotations?: { [key: string]: string; } | null; /** * Output only. Represents time when the execution was completed. It is not guaranteed to be set in happens-before order across separate operations. */ completionTime?: string | null; /** * Output only. The Condition of this Execution, containing its readiness status, and detailed error information in case it did not reach the desired state. */ conditions?: Schema$GoogleCloudRunV2Condition[]; /** * Output only. Represents time when the execution was acknowledged by the execution controller. It is not guaranteed to be set in happens-before order across separate operations. */ createTime?: string | null; /** * Output only. For a deleted resource, the deletion time. It is only populated as a response to a Delete request. */ deleteTime?: string | null; /** * Output only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; /** * Output only. For a deleted resource, the time after which it will be permamently deleted. It is only populated as a response to a Delete request. */ expireTime?: string | null; /** * Output only. The number of tasks which reached phase Failed. */ failedCount?: number | null; /** * Output only. A number that monotonically increases every time the user modifies the desired state. */ generation?: string | null; /** * Output only. The name of the parent Job. */ job?: string | null; /** * KRM-style labels for the resource. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels Cloud Run will populate some labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those labels are read-only, and user changes will not be preserved. */ labels?: { [key: string]: string; } | null; /** * Set the launch stage to a preview stage on write to allow use of preview features in that stage. On read, describes whether the resource uses preview features. Launch Stages are defined at [Google Cloud Platform Launch Stages](https://cloud.google.com/terms/launch-stages). */ launchStage?: string | null; /** * Output only. The unique name of this Execution. */ name?: string | null; /** * Output only. The generation of this Execution. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ observedGeneration?: string | null; /** * Output only. Specifies the maximum desired number of tasks the execution should run at any given time. Must be <= task_count. The actual number of tasks running in steady state will be less than this number when ((.spec.task_count - .status.successful) < .spec.parallelism), i.e. when the work left to do is less than max parallelism. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ */ parallelism?: number | null; /** * Output only. Indicates whether the resource's reconciliation is still in progress. See comments in `Job.reconciling` for additional information on reconciliation process in Cloud Run. */ reconciling?: boolean | null; /** * Output only. The number of actively running tasks. */ runningCount?: number | null; /** * Output only. Represents time when the execution started to run. It is not guaranteed to be set in happens-before order across separate operations. */ startTime?: string | null; /** * Output only. The number of tasks which reached phase Succeeded. */ succeededCount?: number | null; /** * Output only. Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ */ taskCount?: number | null; /** * Output only. The template used to create tasks for this execution. */ template?: Schema$GoogleCloudRunV2TaskTemplate; /** * Output only. Server assigned unique identifier for the Execution. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted. */ uid?: string | null; /** * Output only. The last-modified time. */ updateTime?: string | null; } /** * Reference to an Execution. Use /Executions.GetExecution with the given name to get full execution including the latest status. */ export interface Schema$GoogleCloudRunV2ExecutionReference { /** * Creation timestamp of the execution. */ completionTime?: string | null; /** * Creation timestamp of the execution. */ createTime?: string | null; /** * Name of the execution. */ name?: string | null; } /** * ExecutionTemplate describes the data an execution should have when created from a template. */ export interface Schema$GoogleCloudRunV2ExecutionTemplate { /** * KRM-style annotations for the resource. */ annotations?: { [key: string]: string; } | null; /** * KRM-style labels for the resource. */ labels?: { [key: string]: string; } | null; /** * Specifies the maximum desired number of tasks the execution should run at given time. Must be <= task_count. When the job is run, if this field is 0 or unset, the maximum possible value will be used for that execution. The actual number of tasks running in steady state will be less than this number when there are fewer tasks waiting to be completed remaining, i.e. when the work left to do is less than max parallelism. */ parallelism?: number | null; /** * Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ */ taskCount?: number | null; /** * Required. Describes the task(s) that will be created when executing an execution. */ template?: Schema$GoogleCloudRunV2TaskTemplate; } /** * HTTPGetAction describes an action based on HTTP Get requests. */ export interface Schema$GoogleCloudRunV2HTTPGetAction { /** * Custom headers to set in the request. HTTP allows repeated headers. */ httpHeaders?: Schema$GoogleCloudRunV2HTTPHeader[]; /** * Path to access on the HTTP server. Defaults to '/'. */ path?: string | null; } /** * HTTPHeader describes a custom header to be used in HTTP probes */ export interface Schema$GoogleCloudRunV2HTTPHeader { /** * Required. The header field name */ name?: string | null; /** * The header field value */ value?: string | null; } /** * Job represents the configuration of a single job. A job an immutable resource that references a container image which is run to completion. */ export interface Schema$GoogleCloudRunV2Job { /** * KRM-style annotations for the resource. Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run will populate some annotations using 'run.googleapis.com' or 'serving.knative.dev' namespaces. This field follows Kubernetes annotations' namespacing, limits, and rules. More info: https://kubernetes.io/docs/user-guide/annotations */ annotations?: { [key: string]: string; } | null; /** * Settings for the Binary Authorization feature. */ binaryAuthorization?: Schema$GoogleCloudRunV2BinaryAuthorization; /** * Arbitrary identifier for the API client. */ client?: string | null; /** * Arbitrary version identifier for the API client. */ clientVersion?: string | null; /** * Output only. The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the Job does not reach its desired state. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ conditions?: Schema$GoogleCloudRunV2Condition[]; /** * Output only. The creation time. */ createTime?: string | null; /** * Output only. Email address of the authenticated creator. */ creator?: string | null; /** * Output only. The deletion time. */ deleteTime?: string | null; /** * Output only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; /** * Output only. Number of executions created for this job. */ executionCount?: number | null; /** * Output only. For a deleted resource, the time after which it will be permamently deleted. */ expireTime?: string | null; /** * Output only. A number that monotonically increases every time the user modifies the desired state. */ generation?: string | null; /** * KRM-style labels for the resource. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels Cloud Run will populate some labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those labels are read-only, and user changes will not be preserved. */ labels?: { [key: string]: string; } | null; /** * Output only. Email address of the last authenticated modifier. */ lastModifier?: string | null; /** * Output only. Name of the last created execution. */ latestCreatedExecution?: Schema$GoogleCloudRunV2ExecutionReference; /** * The launch stage as defined by [Google Cloud Platform Launch Stages](https://cloud.google.com/terms/launch-stages). Cloud Run supports `ALPHA`, `BETA`, and `GA`. If no value is specified, GA is assumed. */ launchStage?: string | null; /** * The fully qualified name of this Job. Format: projects/{project\}/locations/{location\}/jobs/{job\} */ name?: string | null; /** * Output only. The generation of this Job. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ observedGeneration?: string | null; /** * Output only. Returns true if the Job is currently being acted upon by the system to bring it into the desired state. When a new Job is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Job to the desired state. This process is called reconciliation. While reconciliation is in process, `observed_generation` and `latest_succeeded_execution`, will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the state matches the Job, or there was an error, and reconciliation failed. This state can be found in `terminal_condition.state`. If reconciliation succeeded, the following fields will match: `observed_generation` and `generation`, `latest_succeeded_execution` and `latest_created_execution`. If reconciliation failed, `observed_generation` and `latest_succeeded_execution` will have the state of the last succeeded execution or empty for newly created Job. Additional information on the failure can be found in `terminal_condition` and `conditions`. */ reconciling?: boolean | null; /** * Required. The template used to create executions for this Job. */ template?: Schema$GoogleCloudRunV2ExecutionTemplate; /** * Output only. The Condition of this Job, containing its readiness status, and detailed error information in case it did not reach the desired state. */ terminalCondition?: Schema$GoogleCloudRunV2Condition; /** * Output only. Server assigned unique identifier for the Execution. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted. */ uid?: string | null; /** * Output only. The last-modified time. */ updateTime?: string | null; } /** * Response message containing a list of Executions. */ export interface Schema$GoogleCloudRunV2ListExecutionsResponse { /** * The resulting list of Executions. */ executions?: Schema$GoogleCloudRunV2Execution[]; /** * A token indicating there are more items than page_size. Use it in the next ListExecutions request to continue. */ nextPageToken?: string | null; } /** * Response message containing a list of Jobs. */ export interface Schema$GoogleCloudRunV2ListJobsResponse { /** * The resulting list of Jobs. */ jobs?: Schema$GoogleCloudRunV2Job[]; /** * A token indicating there are more items than page_size. Use it in the next ListJobs request to continue. */ nextPageToken?: string | null; } /** * Response message containing a list of Revisions. */ export interface Schema$GoogleCloudRunV2ListRevisionsResponse { /** * A token indicating there are more items than page_size. Use it in the next ListRevisions request to continue. */ nextPageToken?: string | null; /** * The resulting list of Revisions. */ revisions?: Schema$GoogleCloudRunV2Revision[]; } /** * Response message containing a list of Services. */ export interface Schema$GoogleCloudRunV2ListServicesResponse { /** * A token indicating there are more items than page_size. Use it in the next ListServices request to continue. */ nextPageToken?: string | null; /** * The resulting list of Services. */ services?: Schema$GoogleCloudRunV2Service[]; } /** * Response message containing a list of Tasks. */ export interface Schema$GoogleCloudRunV2ListTasksResponse { /** * A token indicating there are more items than page_size. Use it in the next ListTasks request to continue. */ nextPageToken?: string | null; /** * The resulting list of Tasks. */ tasks?: Schema$GoogleCloudRunV2Task[]; } /** * Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic. */ export interface Schema$GoogleCloudRunV2Probe { /** * Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. */ failureThreshold?: number | null; /** * HTTPGet specifies the http request to perform. Exactly one of HTTPGet or TCPSocket must be specified. */ httpGet?: Schema$GoogleCloudRunV2HTTPGetAction; /** * Number of seconds after the container has started before the probe is initiated. Defaults to 0 seconds. Minimum value is 0. Maximum value for liveness probe is 3600. Maximum value for startup probe is 240. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ initialDelaySeconds?: number | null; /** * How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. Maximum value for liveness probe is 3600. Maximum value for startup probe is 240. Must be greater or equal than timeout_seconds. */ periodSeconds?: number | null; /** * TCPSocket specifies an action involving a TCP port. Exactly one of HTTPGet or TCPSocket must be specified. */ tcpSocket?: Schema$GoogleCloudRunV2TCPSocketAction; /** * 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. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ timeoutSeconds?: number | null; } /** * ResourceRequirements describes the compute resource requirements. */ export interface Schema$GoogleCloudRunV2ResourceRequirements { /** * Determines whether CPU should be throttled or not outside of requests. */ cpuIdle?: boolean | null; /** * Only memory and CPU are supported. Note: The only supported values for CPU are '1', '2', and '4'. Setting 4 CPU requires at least 2Gi of memory. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go */ limits?: { [key: string]: string; } | null; } /** * A Revision is an immutable snapshot of code and configuration. A Revision references a container image. Revisions are only created by updates to its parent Service. */ export interface Schema$GoogleCloudRunV2Revision { /** * KRM-style annotations for the resource. */ annotations?: { [key: string]: string; } | null; /** * Output only. The Condition of this Revision, containing its readiness status, and detailed error information in case it did not reach a serving state. */ conditions?: Schema$GoogleCloudRunV2Condition[]; /** * Holds the single container that defines the unit of execution for this Revision. */ containers?: Schema$GoogleCloudRunV2Container[]; /** * Output only. The creation time. */ createTime?: string | null; /** * Output only. For a deleted resource, the deletion time. It is only populated as a response to a Delete request. */ deleteTime?: string | null; /** * A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek */ encryptionKey?: string | null; /** * Output only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; /** * The execution environment being used to host this Revision. */ executionEnvironment?: string | null; /** * Output only. For a deleted resource, the time after which it will be permamently deleted. It is only populated as a response to a Delete request. */ expireTime?: string | null; /** * Output only. A number that monotonically increases every time the user modifies the desired state. */ generation?: string | null; /** * KRM-style labels for the resource. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels Cloud Run will populate some labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those labels are read-only, and user changes will not be preserved. */ labels?: { [key: string]: string; } | null; /** * Set the launch stage to a preview stage on write to allow use of preview features in that stage. On read, describes whether the resource uses preview features. Launch Stages are defined at [Google Cloud Platform Launch Stages](https://cloud.google.com/terms/launch-stages). */ launchStage?: string | null; /** * Output only. The Google Console URI to obtain logs for the Revision. */ logUri?: string | null; /** * Sets the maximum number of requests that each serving instance can receive. */ maxInstanceRequestConcurrency?: number | null; /** * Output only. The unique name of this Revision. */ name?: string | null; /** * Output only. The generation of this Revision currently serving traffic. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ observedGeneration?: string | null; /** * Output only. Indicates whether the resource's reconciliation is still in progress. See comments in `Service.reconciling` for additional information on reconciliation process in Cloud Run. */ reconciling?: boolean | null; /** * Scaling settings for this revision. */ scaling?: Schema$GoogleCloudRunV2RevisionScaling; /** * Output only. The name of the parent service. */ service?: string | null; /** * 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. */ serviceAccount?: string | null; /** * Max allowed time for an instance to respond to a request. */ timeout?: string | null; /** * Output only. Server assigned unique identifier for the Revision. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted. */ uid?: string | null; /** * Output only. The last-modified time. */ updateTime?: string | null; /** * A list of Volumes to make available to containers. */ volumes?: Schema$GoogleCloudRunV2Volume[]; /** * VPC Access configuration for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. */ vpcAccess?: Schema$GoogleCloudRunV2VpcAccess; } /** * Settings for revision-level scaling settings. */ export interface Schema$GoogleCloudRunV2RevisionScaling { /** * Maximum number of serving instances that this resource should have. */ maxInstanceCount?: number | null; /** * Minimum number of serving instances that this resource should have. */ minInstanceCount?: number | null; } /** * RevisionTemplate describes the data a revision should have when created from a template. */ export interface Schema$GoogleCloudRunV2RevisionTemplate { /** * KRM-style annotations for the resource. */ annotations?: { [key: string]: string; } | null; /** * Holds the single container that defines the unit of execution for this Revision. */ containers?: Schema$GoogleCloudRunV2Container[]; /** * A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/securing/using-cmek */ encryptionKey?: string | null; /** * The sandbox environment to host this Revision. */ executionEnvironment?: string | null; /** * KRM-style labels for the resource. */ labels?: { [key: string]: string; } | null; /** * Sets the maximum number of requests that each serving instance can receive. */ maxInstanceRequestConcurrency?: number | null; /** * The unique name for the revision. If this field is omitted, it will be automatically generated based on the Service name. */ revision?: string | null; /** * Scaling settings for this Revision. */ scaling?: Schema$GoogleCloudRunV2RevisionScaling; /** * 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. */ serviceAccount?: string | null; /** * Max allowed time for an instance to respond to a request. */ timeout?: string | null; /** * A list of Volumes to make available to containers. */ volumes?: Schema$GoogleCloudRunV2Volume[]; /** * VPC Access configuration to use for this Revision. For more information, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. */ vpcAccess?: Schema$GoogleCloudRunV2VpcAccess; } /** * Request message to create a new Execution of a Job. */ export interface Schema$GoogleCloudRunV2RunJobRequest { /** * A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; /** * Indicates that the request should be validated without actually deleting any resources. */ validateOnly?: boolean | null; } /** * SecretEnvVarSource represents a source for the value of an EnvVar. */ export interface Schema$GoogleCloudRunV2SecretKeySelector { /** * Required. The name of the secret in Cloud Secret Manager. Format: {secret_name\} if the secret is in the same project. projects/{project\}/secrets/{secret_name\} if the secret is in a different project. */ secret?: string | null; /** * The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. */ version?: string | null; } /** * 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. */ export interface Schema$GoogleCloudRunV2SecretVolumeSource { /** * Integer representation of mode bits to use on created files by default. Must be a value between 0000 and 0777 (octal), defaulting to 0444. Directories within the path are not affected by this setting. Notes * Internally, a umask of 0222 will be applied to any non-zero value. * This is an integer representation of the mode bits. So, the octal integer value should look exactly as the chmod numeric notation with a leading zero. Some examples: for chmod 777 (a=rwx), set to 0777 (octal) or 511 (base-10). For chmod 640 (u=rw,g=r), set to 0640 (octal) or 416 (base-10). For chmod 755 (u=rwx,g=rx,o=rx), set to 0755 (octal) or 493 (base-10). * This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. This might be in conflict with other options that affect the file mode, like fsGroup, and as a result, other mode bits could be set. */ defaultMode?: number | null; /** * If unspecified, the volume will expose a file whose name is the secret, relative to VolumeMount.mount_path. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a path and a version. */ items?: Schema$GoogleCloudRunV2VersionToPath[]; /** * Required. The name of the secret in Cloud Secret Manager. Format: {secret\} if the secret is in the same project. projects/{project\}/secrets/{secret\} if the secret is in a different project. */ secret?: string | null; } /** * Service acts as a top-level container that manages a set of configurations and revision templates which implement a network service. Service exists to provide a singular abstraction which can be access controlled, reasoned about, and which encapsulates software lifecycle decisions such as rollout policy and team resource ownership. */ export interface Schema$GoogleCloudRunV2Service { /** * Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run will populate some annotations using 'run.googleapis.com' or 'serving.knative.dev' namespaces. This field follows Kubernetes annotations' namespacing, limits, and rules. More info: https://kubernetes.io/docs/user-guide/annotations */ annotations?: { [key: string]: string; } | null; /** * Settings for the Binary Authorization feature. */ binaryAuthorization?: Schema$GoogleCloudRunV2BinaryAuthorization; /** * Arbitrary identifier for the API client. */ client?: string | null; /** * Arbitrary version identifier for the API client. */ clientVersion?: string | null; /** * Output only. The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the Service does not reach its Serving state. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ conditions?: Schema$GoogleCloudRunV2Condition[]; /** * Output only. The creation time. */ createTime?: string | null; /** * Output only. Email address of the authenticated creator. */ creator?: string | null; /** * Output only. The deletion time. */ deleteTime?: string | null; /** * User-provided description of the Service. This field currently has a 512-character limit. */ description?: string | null; /** * Output only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; /** * Output only. For a deleted resource, the time after which it will be permamently deleted. */ expireTime?: string | null; /** * Output only. A number that monotonically increases every time the user modifies the desired state. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a `string` instead of an `integer`. */ generation?: string | null; /** * Provides the ingress settings for this Service. On output, returns the currently observed ingress settings, or INGRESS_TRAFFIC_UNSPECIFIED if no revision is active. */ ingress?: string | null; /** * Map of string keys and values that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels Cloud Run will populate some labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those labels are read-only, and user changes will not be preserved. */ labels?: { [key: string]: string; } | null; /** * Output only. Email address of the last authenticated modifier. */ lastModifier?: string | null; /** * Output only. Name of the last created revision. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ latestCreatedRevision?: string | null; /** * Output only. Name of the latest revision that is serving traffic. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ latestReadyRevision?: string | null; /** * The launch stage as defined by [Google Cloud Platform Launch Stages](https://cloud.google.com/terms/launch-stages). Cloud Run supports `ALPHA`, `BETA`, and `GA`. If no value is specified, GA is assumed. */ launchStage?: string | null; /** * The fully qualified name of this Service. In CreateServiceRequest, this field is ignored, and instead composed from CreateServiceRequest.parent and CreateServiceRequest.service_id. Format: projects/{project\}/locations/{location\}/services/{service_id\} */ name?: string | null; /** * Output only. The generation of this Service currently serving traffic. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. Please note that unlike v1, this is an int64 value. As with most Google APIs, its JSON representation will be a `string` instead of an `integer`. */ observedGeneration?: string | null; /** * Output only. Returns true if the Service is currently being acted upon by the system to bring it into the desired state. When a new Service is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Service to the desired serving state. This process is called reconciliation. While reconciliation is in process, `observed_generation`, `latest_ready_revison`, `traffic_statuses`, and `uri` will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the serving state matches the Service, or there was an error, and reconciliation failed. This state can be found in `terminal_condition.state`. If reconciliation succeeded, the following fields will match: `traffic` and `traffic_statuses`, `observed_generation` and `generation`, `latest_ready_revision` and `latest_created_revision`. If reconciliation failed, `traffic_statuses`, `observed_generation`, and `latest_ready_revision` will have the state of the last serving revision, or empty for newly created Services. Additional information on the failure can be found in `terminal_condition` and `conditions`. */ reconciling?: boolean | null; /** * Required. The template used to create revisions for this Service. */ template?: Schema$GoogleCloudRunV2RevisionTemplate; /** * Output only. The Condition of this Service, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ terminalCondition?: Schema$GoogleCloudRunV2Condition; /** * Specifies how to distribute traffic over a collection of Revisions belonging to the Service. If traffic is empty or not provided, defaults to 100% traffic to the latest `Ready` Revision. */ traffic?: Schema$GoogleCloudRunV2TrafficTarget[]; /** * Output only. Detailed status information for corresponding traffic targets. See comments in `reconciling` for additional information on reconciliation process in Cloud Run. */ trafficStatuses?: Schema$GoogleCloudRunV2TrafficTargetStatus[]; /** * Output only. Server assigned unique identifier for the trigger. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted. */ uid?: string | null; /** * Output only. The last-modified time. */ updateTime?: string | null; /** * Output only. The main URI in which this Service is serving traffic. */ uri?: string | null; } /** * Task represents a single run of a container to completion. */ export interface Schema$GoogleCloudRunV2Task { /** * KRM-style annotations for the resource. */ annotations?: { [key: string]: string; } | null; /** * Output only. Represents time when the Task was completed. It is not guaranteed to be set in happens-before order across separate operations. */ completionTime?: string | null; /** * Output only. The Condition of this Task, containing its readiness status, and detailed error information in case it did not reach the desired state. */ conditions?: Schema$GoogleCloudRunV2Condition[]; /** * Holds the single container that defines the unit of execution for this task. */ containers?: Schema$GoogleCloudRunV2Container[]; /** * Output only. Represents time when the task was created by the jo