diff --git a/docs/dyn/cloudfunctions_v1.projects.locations.functions.html b/docs/dyn/cloudfunctions_v1.projects.locations.functions.html index bbda7af985..dfdfab7ab9 100644 --- a/docs/dyn/cloudfunctions_v1.projects.locations.functions.html +++ b/docs/dyn/cloudfunctions_v1.projects.locations.functions.html @@ -165,9 +165,10 @@

Method Details

}, "buildId": "A String", # Output only. The Cloud Build ID of the latest successful deployment of the function. "buildName": "A String", # Output only. The Cloud Build Name of the function deployment. `projects//locations//builds/`. + "buildServiceAccount": "A String", # Optional. A service account the user provides for use with Cloud Build. "buildWorkerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where `{project}` and `{region}` are the project id and region respectively where the worker pool is defined and `{workerPool}` is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (`service-@gcf-admin-robot.iam.gserviceaccount.com`) must be granted the role Cloud Build Custom Workers Builder (`roles/cloudbuild.customworkers.builder`) in the project. "description": "A String", # User-provided description of a function. - "dockerRegistry": "A String", # Docker Registry to use for this deployment. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. If unspecified, it defaults to `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field should either be left unspecified or set to `ARTIFACT_REGISTRY`. "dockerRepository": "A String", # User managed repository created in Artifact Registry optionally with a customer managed encryption key. If specified, deployments will use Artifact Registry. If unspecified and the deployment is eligible to use Artifact Registry, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. This is the repository to which the function docker image will be pushed after it is built by Cloud Build. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix (ID of the function), if not specified. "environmentVariables": { # Environment variables that shall be available during function execution. @@ -376,9 +377,10 @@

Method Details

}, "buildId": "A String", # Output only. The Cloud Build ID of the latest successful deployment of the function. "buildName": "A String", # Output only. The Cloud Build Name of the function deployment. `projects//locations//builds/`. + "buildServiceAccount": "A String", # Optional. A service account the user provides for use with Cloud Build. "buildWorkerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where `{project}` and `{region}` are the project id and region respectively where the worker pool is defined and `{workerPool}` is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (`service-@gcf-admin-robot.iam.gserviceaccount.com`) must be granted the role Cloud Build Custom Workers Builder (`roles/cloudbuild.customworkers.builder`) in the project. "description": "A String", # User-provided description of a function. - "dockerRegistry": "A String", # Docker Registry to use for this deployment. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. If unspecified, it defaults to `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field should either be left unspecified or set to `ARTIFACT_REGISTRY`. "dockerRepository": "A String", # User managed repository created in Artifact Registry optionally with a customer managed encryption key. If specified, deployments will use Artifact Registry. If unspecified and the deployment is eligible to use Artifact Registry, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. This is the repository to which the function docker image will be pushed after it is built by Cloud Build. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix (ID of the function), if not specified. "environmentVariables": { # Environment variables that shall be available during function execution. @@ -523,9 +525,10 @@

Method Details

}, "buildId": "A String", # Output only. The Cloud Build ID of the latest successful deployment of the function. "buildName": "A String", # Output only. The Cloud Build Name of the function deployment. `projects//locations//builds/`. + "buildServiceAccount": "A String", # Optional. A service account the user provides for use with Cloud Build. "buildWorkerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where `{project}` and `{region}` are the project id and region respectively where the worker pool is defined and `{workerPool}` is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (`service-@gcf-admin-robot.iam.gserviceaccount.com`) must be granted the role Cloud Build Custom Workers Builder (`roles/cloudbuild.customworkers.builder`) in the project. "description": "A String", # User-provided description of a function. - "dockerRegistry": "A String", # Docker Registry to use for this deployment. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. If unspecified, it defaults to `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field should either be left unspecified or set to `ARTIFACT_REGISTRY`. "dockerRepository": "A String", # User managed repository created in Artifact Registry optionally with a customer managed encryption key. If specified, deployments will use Artifact Registry. If unspecified and the deployment is eligible to use Artifact Registry, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. This is the repository to which the function docker image will be pushed after it is built by Cloud Build. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix (ID of the function), if not specified. "environmentVariables": { # Environment variables that shall be available during function execution. @@ -633,9 +636,10 @@

Method Details

}, "buildId": "A String", # Output only. The Cloud Build ID of the latest successful deployment of the function. "buildName": "A String", # Output only. The Cloud Build Name of the function deployment. `projects//locations//builds/`. + "buildServiceAccount": "A String", # Optional. A service account the user provides for use with Cloud Build. "buildWorkerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where `{project}` and `{region}` are the project id and region respectively where the worker pool is defined and `{workerPool}` is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (`service-@gcf-admin-robot.iam.gserviceaccount.com`) must be granted the role Cloud Build Custom Workers Builder (`roles/cloudbuild.customworkers.builder`) in the project. "description": "A String", # User-provided description of a function. - "dockerRegistry": "A String", # Docker Registry to use for this deployment. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. If unspecified, it defaults to `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field should either be left unspecified or set to `ARTIFACT_REGISTRY`. "dockerRepository": "A String", # User managed repository created in Artifact Registry optionally with a customer managed encryption key. If specified, deployments will use Artifact Registry. If unspecified and the deployment is eligible to use Artifact Registry, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. This is the repository to which the function docker image will be pushed after it is built by Cloud Build. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix (ID of the function), if not specified. "environmentVariables": { # Environment variables that shall be available during function execution. diff --git a/docs/dyn/cloudfunctions_v2.projects.locations.functions.html b/docs/dyn/cloudfunctions_v2.projects.locations.functions.html index a69b4f3f6f..c0e80e75a6 100644 --- a/docs/dyn/cloudfunctions_v2.projects.locations.functions.html +++ b/docs/dyn/cloudfunctions_v2.projects.locations.functions.html @@ -74,9 +74,15 @@

Cloud Functions API . projects . locations . functions

Instance Methods

+

+ abortFunctionUpgrade(name, body=None, x__xgafv=None)

+

Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.

close()

Close httplib2 connections.

+

+ commitFunctionUpgrade(name, body=None, x__xgafv=None)

+

Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.

create(parent, body=None, functionId=None, x__xgafv=None)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.

@@ -104,18 +110,109 @@

Instance Methods

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates existing function.

+

+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.

+

+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.

setIamPolicy(resource, body=None, x__xgafv=None)

Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

+

+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None)

+

Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.

testIamPermissions(resource, body=None, x__xgafv=None)

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Method Details

+
+ abortFunctionUpgrade(name, body=None, x__xgafv=None) +
Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be aborted. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `AbortFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
close()
Close httplib2 connections.
+
+ commitFunctionUpgrade(name, body=None, x__xgafv=None) +
Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be finalized. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `CommitFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
create(parent, body=None, functionId=None, x__xgafv=None)
Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.
@@ -176,6 +273,7 @@ 

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -251,6 +349,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -441,6 +650,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -516,6 +726,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }
@@ -639,6 +960,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -714,6 +1036,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }, ], @@ -798,6 +1231,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -873,6 +1307,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -906,6 +1451,88 @@

Method Details

} +
+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RedirectFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+ +
+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RollbackFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
setIamPolicy(resource, body=None, x__xgafv=None)
Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
@@ -991,6 +1618,47 @@ 

Method Details

}
+
+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None) +
Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.
+
+Args:
+  name: string, Required. The name of the function which should have configuration copied for upgrade. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `SetupFunctionUpgradeConfig` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
testIamPermissions(resource, body=None, x__xgafv=None)
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
diff --git a/docs/dyn/cloudfunctions_v2alpha.projects.locations.functions.html b/docs/dyn/cloudfunctions_v2alpha.projects.locations.functions.html
index cf9b78e25f..86f9abb407 100644
--- a/docs/dyn/cloudfunctions_v2alpha.projects.locations.functions.html
+++ b/docs/dyn/cloudfunctions_v2alpha.projects.locations.functions.html
@@ -74,9 +74,15 @@
 
 

Cloud Functions API . projects . locations . functions

Instance Methods

+

+ abortFunctionUpgrade(name, body=None, x__xgafv=None)

+

Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.

close()

Close httplib2 connections.

+

+ commitFunctionUpgrade(name, body=None, x__xgafv=None)

+

Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.

create(parent, body=None, functionId=None, x__xgafv=None)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.

@@ -104,18 +110,109 @@

Instance Methods

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates existing function.

+

+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.

+

+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.

setIamPolicy(resource, body=None, x__xgafv=None)

Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

+

+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None)

+

Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.

testIamPermissions(resource, body=None, x__xgafv=None)

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Method Details

+
+ abortFunctionUpgrade(name, body=None, x__xgafv=None) +
Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be aborted. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `AbortFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
close()
Close httplib2 connections.
+
+ commitFunctionUpgrade(name, body=None, x__xgafv=None) +
Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be finalized. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `CommitFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
create(parent, body=None, functionId=None, x__xgafv=None)
Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.
@@ -176,6 +273,7 @@ 

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -251,6 +349,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -441,6 +650,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -516,6 +726,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }
@@ -639,6 +960,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -714,6 +1036,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }, ], @@ -798,6 +1231,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -873,6 +1307,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -906,6 +1451,88 @@

Method Details

}
+
+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RedirectFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+ +
+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RollbackFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
setIamPolicy(resource, body=None, x__xgafv=None)
Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
@@ -991,6 +1618,47 @@ 

Method Details

}
+
+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None) +
Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.
+
+Args:
+  name: string, Required. The name of the function which should have configuration copied for upgrade. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `SetupFunctionUpgradeConfig` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
testIamPermissions(resource, body=None, x__xgafv=None)
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
diff --git a/docs/dyn/cloudfunctions_v2beta.projects.locations.functions.html b/docs/dyn/cloudfunctions_v2beta.projects.locations.functions.html
index 0f605206ba..69ab8af944 100644
--- a/docs/dyn/cloudfunctions_v2beta.projects.locations.functions.html
+++ b/docs/dyn/cloudfunctions_v2beta.projects.locations.functions.html
@@ -74,9 +74,15 @@
 
 

Cloud Functions API . projects . locations . functions

Instance Methods

+

+ abortFunctionUpgrade(name, body=None, x__xgafv=None)

+

Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.

close()

Close httplib2 connections.

+

+ commitFunctionUpgrade(name, body=None, x__xgafv=None)

+

Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.

create(parent, body=None, functionId=None, x__xgafv=None)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.

@@ -104,18 +110,109 @@

Instance Methods

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates existing function.

+

+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.

+

+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None)

+

Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.

setIamPolicy(resource, body=None, x__xgafv=None)

Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

+

+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None)

+

Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.

testIamPermissions(resource, body=None, x__xgafv=None)

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Method Details

+
+ abortFunctionUpgrade(name, body=None, x__xgafv=None) +
Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be aborted. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `AbortFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
close()
Close httplib2 connections.
+
+ commitFunctionUpgrade(name, body=None, x__xgafv=None) +
Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.
+
+Args:
+  name: string, Required. The name of the function for which upgrade should be finalized. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `CommitFunctionUpgrade` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
create(parent, body=None, functionId=None, x__xgafv=None)
Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.
@@ -176,6 +273,7 @@ 

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -251,6 +349,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -441,6 +650,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -516,6 +726,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }
@@ -639,6 +960,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -714,6 +1036,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. }, ], @@ -798,6 +1231,7 @@

Method Details

"sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. }, + "createTime": "A String", # Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions. "description": "A String", # User-provided description of a function. "environment": "A String", # Describe whether the function is 1st Gen or 2nd Gen. "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. @@ -873,6 +1307,117 @@

Method Details

}, ], "updateTime": "A String", # Output only. The last update timestamp of a Cloud Function. + "upgradeInfo": { # Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration. # Output only. UpgradeInfo for this Cloud Function + "buildConfig": { # Describes the Build step of the function that builds a container from the given source. # Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade. + "automaticUpdatePolicy": { # Security patches are applied automatically to the runtime without requiring the function to be redeployed. # See the comment next to this message for more details. + }, + "build": "A String", # Output only. The Cloud Build name of the latest successful deployment of the function. + "dockerRegistry": "A String", # Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments. + "dockerRepository": "A String", # Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named 'gcf-artifacts' for every deployed region. It must match the pattern `projects/{project}/locations/{location}/repositories/{repository}`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. + "entryPoint": "A String", # The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named "function". For Node.js this is name of a function exported by the module specified in `source_location`. + "environmentVariables": { # User-provided build-time environment variables for the function + "a_key": "A String", + }, + "onDeployUpdatePolicy": { # Security patches are only applied when a function is redeployed. # See the comment next to this message for more details. + "runtimeVersion": "A String", # Output only. contains the runtime version which was used during latest function deployment. + }, + "runtime": "A String", # The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the [`gcloud` command reference](https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). + "serviceAccount": "A String", # [Preview] Service account to be used for building the container + "source": { # The location of the function source code. # The location of the function source code. + "gitUri": "A String", # If provided, get the source from GitHub repository. This option is valid only for GCF 1st Gen function. Example: https://github.com///blob// + "repoSource": { # Location of the source in a Google Cloud Source Repository. # If provided, get the source from this location in a Cloud Source Repository. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "storageSource": { # Location of the source in an archive file in Google Cloud Storage. # If provided, get the source from this location in Google Cloud Storage. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceProvenance": { # Provenance of the source. Ways to find the original source, or verify that some source was used for this build. # Output only. A permanent fixed identifier for source. + "gitUri": "A String", # A copy of the build's `source.git_uri`, if exists, with any commits resolved. + "resolvedRepoSource": { # Location of the source in a Google Cloud Source Repository. # A copy of the build's `source.repo_source`, if exists, with any revisions resolved. + "branchName": "A String", # Regex matching branches to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + "commitSha": "A String", # Explicit commit SHA to build. + "dir": "A String", # Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed) + "projectId": "A String", # ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. + "repoName": "A String", # Name of the Cloud Source Repository. + "tagName": "A String", # Regex matching tags to build. The syntax of the regular expressions accepted is the syntax accepted by RE2 and described at https://github.com/google/re2/wiki/Syntax + }, + "resolvedStorageSource": { # Location of the source in an archive file in Google Cloud Storage. # A copy of the build's `source.storage_source`, if exists, with any generations resolved. + "bucket": "A String", # Google Cloud Storage bucket containing the source (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)). + "generation": "A String", # Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. + "object": "A String", # Google Cloud Storage object containing the source. This object must be a gzipped archive file (`.tar.gz`) containing source to build. + }, + }, + "sourceToken": "A String", # An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. + "workerPool": "A String", # Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. + }, + "eventTrigger": { # Describes EventTrigger, used to request events to be sent from another service. # Describes the Event trigger which has been setup to prepare for 2nd gen upgrade. + "channel": "A String", # Optional. The name of the channel associated with the trigger in `projects/{project}/locations/{location}/channels/{channel}` format. You must provide a channel to receive events from Eventarc SaaS partners. + "eventFilters": [ # Criteria used to filter events. + { # Filters events based on exact matches on the CloudEvents attributes. + "attribute": "A String", # Required. The name of a CloudEvents attribute. + "operator": "A String", # Optional. The operator used for matching the events with the value of the filter. If not specified, only events that have an exact key-value pair specified in the filter are matched. The only allowed value is `match-path-pattern`. + "value": "A String", # Required. The value for the attribute. + }, + ], + "eventType": "A String", # Required. The type of event to observe. For example: `google.cloud.audit.log.v1.written` or `google.cloud.pubsub.topic.v1.messagePublished`. + "pubsubTopic": "A String", # Optional. The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. Format: `projects/{project}/topics/{topic}`. This is only valid for events of type `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here will not be deleted at function deletion. + "retryPolicy": "A String", # Optional. If unset, then defaults to ignoring failures (i.e. not retrying them). + "service": "A String", # Optional. The hostname of the service that 1st Gen function should be observed. If no string is provided, the default service implementing the API will be used. For example, `storage.googleapis.com` is the default for all event types in the `google.storage` namespace. The field is only applicable to 1st Gen functions. + "serviceAccountEmail": "A String", # Optional. The email of the trigger's service account. The service account must have permission to invoke Cloud Run services, the permission is `run.routes.invoke`. If empty, defaults to the Compute Engine default service account: `{project_number}-compute@developer.gserviceaccount.com`. + "trigger": "A String", # Output only. The resource name of the Eventarc trigger. The format of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. + "triggerRegion": "A String", # The region that the trigger will be in. The trigger will only receive events originating in this region. It can be the same region as the function, a different region or multi-region, or the global region. If not provided, defaults to the same region as the function. + }, + "serviceConfig": { # Describes the Service being deployed. Currently Supported : Cloud Run (fully managed). # Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade. + "allTrafficOnLatestRevision": True or False, # Whether 100% of traffic is routed to the latest revision. On CreateFunction and UpdateFunction, when set to true, the revision being deployed will serve 100% of traffic, ignoring any traffic split settings, if any. On GetFunction, true will be returned if the latest revision is serving 100% of traffic. + "availableCpu": "A String", # The number of CPUs used in a single container instance. Default value is calculated from available memory. Supports the same values as Cloud Run, see https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements Example: "1" indicates 1 vCPU + "availableMemory": "A String", # The amount of memory available for a function. Defaults to 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value is interpreted as bytes. See https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go a full description. + "environmentVariables": { # Environment variables that shall be available during function execution. + "a_key": "A String", + }, + "ingressSettings": "A String", # The ingress settings for the function, controlling what traffic can reach it. + "maxInstanceCount": 42, # The limit on the maximum number of function instances that may coexist at a given time. In some cases, such as rapid traffic surges, Cloud Functions may, for a short period of time, create more instances than the specified max instances limit. If your function cannot tolerate this temporary behavior, you may want to factor in a safety margin and set a lower max instances value than your function can tolerate. See the [Max Instances](https://cloud.google.com/functions/docs/max-instances) Guide for more details. + "maxInstanceRequestConcurrency": 42, # Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. + "minInstanceCount": 42, # The limit on the minimum number of function instances that may coexist at a given time. Function instances are kept in idle state for a short period after they finished executing the request to reduce cold start time for subsequent requests. Setting a minimum instance count will ensure that the given number of instances are kept running in idle state always. This can help with cold start times when jump in incoming request count occurs after the idle instance would have been stopped in the default case. + "revision": "A String", # Output only. The name of service revision. + "secretEnvironmentVariables": [ # Secret environment variables configuration. + { # Configuration for a secret environment variable. It has the information necessary to fetch the secret value from secret manager and expose it as an environment variable. + "key": "A String", # Name of the environment variable. + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "version": "A String", # Version of the secret (version number or the string 'latest'). It is recommended to use a numeric version for secret environment variables as any updates to the secret value is not reflected until new instances start. + }, + ], + "secretVolumes": [ # Secret volumes configuration. + { # Configuration for a secret volume. It has the information necessary to fetch the secret value from secret manager and make it available as files mounted at the requested paths within the application container. + "mountPath": "A String", # The path within the container to mount the secret volume. For example, setting the mount_path as `/etc/secrets` would mount the secret value files under the `/etc/secrets` directory. This directory will also be completely shadowed and unavailable to mount any other secrets. Recommended mount path: /etc/secrets + "projectId": "A String", # Project identifier (preferably project number but can also be the project ID) of the project that contains the secret. If not set, it is assumed that the secret is in the same project as the function. + "secret": "A String", # Name of the secret in secret manager (not the full resource name). + "versions": [ # List of secret versions to mount for this secret. If empty, the `latest` version of the secret will be made available in a file named after the secret under the mount point. + { # Configuration for a single version. + "path": "A String", # Relative path of the file under the mount path where the secret value for this version will be fetched and made available. For example, setting the mount_path as '/etc/secrets' and path as `secret_foo` would mount the secret value file at `/etc/secrets/secret_foo`. + "version": "A String", # Version of the secret (version number or the string 'latest'). It is preferable to use `latest` version with secret volumes as secret value changes are reflected immediately. + }, + ], + }, + ], + "securityLevel": "A String", # Security level configure whether the function only accepts https. This configuration is only applicable to 1st Gen functions with Http trigger. By default https is optional for 1st Gen functions; 2nd Gen functions are https ONLY. + "service": "A String", # Output only. Name of the service associated with a Function. The format of this field is `projects/{project}/locations/{region}/services/{service}` + "serviceAccountEmail": "A String", # The email of the service's service account. If empty, defaults to `{project_number}-compute@developer.gserviceaccount.com`. + "timeoutSeconds": 42, # The function execution timeout. Execution is considered failed and can be terminated if the function is not completed at the end of the timeout period. Defaults to 60 seconds. + "uri": "A String", # Output only. URI of the Service deployed. + "vpcConnector": "A String", # The Serverless VPC Access connector that this cloud function can connect to. The format of this field is `projects/*/locations/*/connectors/*`. + "vpcConnectorEgressSettings": "A String", # The egress settings for the connector, controlling what traffic is diverted through it. + }, + "upgradeState": "A String", # UpgradeState of the function + }, "url": "A String", # Output only. The deployed url for the function. } @@ -906,6 +1451,88 @@

Method Details

}
+
+ redirectFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RedirectFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+ +
+ rollbackFunctionUpgradeTraffic(name, body=None, x__xgafv=None) +
Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.
+
+Args:
+  name: string, Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `RollbackFunctionUpgradeTraffic` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
setIamPolicy(resource, body=None, x__xgafv=None)
Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
@@ -991,6 +1618,47 @@ 

Method Details

}
+
+ setupFunctionUpgradeConfig(name, body=None, x__xgafv=None) +
Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.
+
+Args:
+  name: string, Required. The name of the function which should have configuration copied for upgrade. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for the `SetupFunctionUpgradeConfig` method.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a network API call.
+  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
+  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
+    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
+      {
+        "a_key": "", # Properties of the object. Contains field @type with type URL.
+      },
+    ],
+    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
+  },
+  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
+  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
+    "a_key": "", # Properties of the object. Contains field @type with type URL.
+  },
+}
+
+
testIamPermissions(resource, body=None, x__xgafv=None)
Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
diff --git a/googleapiclient/discovery_cache/documents/cloudfunctions.v1.json b/googleapiclient/discovery_cache/documents/cloudfunctions.v1.json
index 272e5b72e5..7f25dbf3ea 100644
--- a/googleapiclient/discovery_cache/documents/cloudfunctions.v1.json
+++ b/googleapiclient/discovery_cache/documents/cloudfunctions.v1.json
@@ -552,7 +552,7 @@
 }
 }
 },
-"revision": "20240118",
+"revision": "20240205",
 "rootUrl": "https://cloudfunctions.googleapis.com/",
 "schemas": {
 "AuditConfig": {
@@ -691,6 +691,10 @@
 "readOnly": true,
 "type": "string"
 },
+"buildServiceAccount": {
+"description": "Optional. A service account the user provides for use with Cloud Build.",
+"type": "string"
+},
 "buildWorkerPool": {
 "description": "Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is `projects/{project}/locations/{region}/workerPools/{workerPool}` where `{project}` and `{region}` are the project id and region respectively where the worker pool is defined and `{workerPool}` is the short name of the worker pool. If the project id is not the same as the function, then the Cloud Functions Service Agent (`service-@gcf-admin-robot.iam.gserviceaccount.com`) must be granted the role Cloud Build Custom Workers Builder (`roles/cloudbuild.customworkers.builder`) in the project.",
 "type": "string"
@@ -700,7 +704,7 @@
 "type": "string"
 },
 "dockerRegistry": {
-"description": "Docker Registry to use for this deployment. If `docker_repository` field is specified, this field will be automatically set as `ARTIFACT_REGISTRY`. If unspecified, it currently defaults to `CONTAINER_REGISTRY`. This field may be overridden by the backend for eligible deployments.",
+"description": "Docker Registry to use for this deployment. If unspecified, it defaults to `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field should either be left unspecified or set to `ARTIFACT_REGISTRY`.",
 "enum": [
 "DOCKER_REGISTRY_UNSPECIFIED",
 "CONTAINER_REGISTRY",
diff --git a/googleapiclient/discovery_cache/documents/cloudfunctions.v2.json b/googleapiclient/discovery_cache/documents/cloudfunctions.v2.json
index fcc04884bd..0b998748d4 100644
--- a/googleapiclient/discovery_cache/documents/cloudfunctions.v2.json
+++ b/googleapiclient/discovery_cache/documents/cloudfunctions.v2.json
@@ -154,6 +154,62 @@
 "resources": {
 "functions": {
 "methods": {
+"abortFunctionUpgrade": {
+"description": "Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.",
+"flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:abortFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.abortFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be aborted.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2/{+name}:abortFunctionUpgrade",
+"request": {
+"$ref": "AbortFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"commitFunctionUpgrade": {
+"description": "Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.",
+"flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:commitFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.commitFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be finalized.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2/{+name}:commitFunctionUpgrade",
+"request": {
+"$ref": "CommitFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "create": {
 "description": "Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.",
 "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions",
@@ -404,6 +460,62 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"redirectFunctionUpgradeTraffic": {
+"description": "Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.",
+"flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:redirectFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.redirectFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2/{+name}:redirectFunctionUpgradeTraffic",
+"request": {
+"$ref": "RedirectFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"rollbackFunctionUpgradeTraffic": {
+"description": "Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.",
+"flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:rollbackFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.rollbackFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2/{+name}:rollbackFunctionUpgradeTraffic",
+"request": {
+"$ref": "RollbackFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "setIamPolicy": {
 "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
 "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setIamPolicy",
@@ -432,6 +544,34 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"setupFunctionUpgradeConfig": {
+"description": "Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.",
+"flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setupFunctionUpgradeConfig",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.setupFunctionUpgradeConfig",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function which should have configuration copied for upgrade.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2/{+name}:setupFunctionUpgradeConfig",
+"request": {
+"$ref": "SetupFunctionUpgradeConfigRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "testIamPermissions": {
 "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.",
 "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:testIamPermissions",
@@ -571,9 +711,15 @@
 }
 }
 },
-"revision": "20240118",
+"revision": "20240205",
 "rootUrl": "https://cloudfunctions.googleapis.com/",
 "schemas": {
+"AbortFunctionUpgradeRequest": {
+"description": "Request for the `AbortFunctionUpgrade` method.",
+"id": "AbortFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "AuditConfig": {
 "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.",
 "id": "AuditConfig",
@@ -724,6 +870,12 @@
 },
 "type": "object"
 },
+"CommitFunctionUpgradeRequest": {
+"description": "Request for the `CommitFunctionUpgrade` method.",
+"id": "CommitFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "Date": {
 "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp",
 "id": "Date",
@@ -853,6 +1005,12 @@
 "$ref": "BuildConfig",
 "description": "Describes the Build step of the function that builds a container from the given source."
 },
+"createTime": {
+"description": "Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions.",
+"format": "google-datetime",
+"readOnly": true,
+"type": "string"
+},
 "description": {
 "description": "User-provided description of a function.",
 "type": "string"
@@ -934,6 +1092,11 @@
 "readOnly": true,
 "type": "string"
 },
+"upgradeInfo": {
+"$ref": "UpgradeInfo",
+"description": "Output only. UpgradeInfo for this Cloud Function",
+"readOnly": true
+},
 "url": {
 "description": "Output only. The deployed url for the function.",
 "readOnly": true,
@@ -1846,6 +2009,12 @@
 },
 "type": "object"
 },
+"RedirectFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RedirectFunctionUpgradeTraffic` method.",
+"id": "RedirectFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "RepoSource": {
 "description": "Location of the source in a Google Cloud Source Repository.",
 "id": "RepoSource",
@@ -1877,6 +2046,12 @@
 },
 "type": "object"
 },
+"RollbackFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RollbackFunctionUpgradeTraffic` method.",
+"id": "RollbackFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "Runtime": {
 "description": "Describes a runtime and any special information (e.g., deprecation status) related to it.",
 "id": "Runtime",
@@ -2150,6 +2325,12 @@
 },
 "type": "object"
 },
+"SetupFunctionUpgradeConfigRequest": {
+"description": "Request for the `SetupFunctionUpgradeConfig` method.",
+"id": "SetupFunctionUpgradeConfigRequest",
+"properties": {},
+"type": "object"
+},
 "Source": {
 "description": "The location of the function source code.",
 "id": "Source",
@@ -2262,6 +2443,53 @@
 }
 },
 "type": "object"
+},
+"UpgradeInfo": {
+"description": "Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration.",
+"id": "UpgradeInfo",
+"properties": {
+"buildConfig": {
+"$ref": "BuildConfig",
+"description": "Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade."
+},
+"eventTrigger": {
+"$ref": "EventTrigger",
+"description": "Describes the Event trigger which has been setup to prepare for 2nd gen upgrade."
+},
+"serviceConfig": {
+"$ref": "ServiceConfig",
+"description": "Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade."
+},
+"upgradeState": {
+"description": "UpgradeState of the function",
+"enum": [
+"UPGRADE_STATE_UNSPECIFIED",
+"ELIGIBLE_FOR_2ND_GEN_UPGRADE",
+"UPGRADE_OPERATION_IN_PROGRESS",
+"SETUP_FUNCTION_UPGRADE_CONFIG_SUCCESSFUL",
+"SETUP_FUNCTION_UPGRADE_CONFIG_ERROR",
+"ABORT_FUNCTION_UPGRADE_ERROR",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"COMMIT_FUNCTION_UPGRADE_ERROR"
+],
+"enumDescriptions": [
+"Unspecified state. Most functions are in this upgrade state.",
+"Functions in this state are eligible for 1st Gen -> 2nd Gen upgrade.",
+"An upgrade related operation is in progress.",
+"SetupFunctionUpgradeConfig API was successful and a 2nd Gen function has been created based on 1st Gen function instance.",
+"SetupFunctionUpgradeConfig API was un-successful.",
+"AbortFunctionUpgrade API was un-successful.",
+"RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.",
+"RedirectFunctionUpgradeTraffic API was un-successful.",
+"RollbackFunctionUpgradeTraffic API was un-successful.",
+"CommitFunctionUpgrade API was un-successful."
+],
+"type": "string"
+}
+},
+"type": "object"
 }
 },
 "servicePath": "",
diff --git a/googleapiclient/discovery_cache/documents/cloudfunctions.v2alpha.json b/googleapiclient/discovery_cache/documents/cloudfunctions.v2alpha.json
index ef87cd67a1..1eb0d23f82 100644
--- a/googleapiclient/discovery_cache/documents/cloudfunctions.v2alpha.json
+++ b/googleapiclient/discovery_cache/documents/cloudfunctions.v2alpha.json
@@ -154,6 +154,62 @@
 "resources": {
 "functions": {
 "methods": {
+"abortFunctionUpgrade": {
+"description": "Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.",
+"flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:abortFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.abortFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be aborted.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2alpha/{+name}:abortFunctionUpgrade",
+"request": {
+"$ref": "AbortFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"commitFunctionUpgrade": {
+"description": "Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.",
+"flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:commitFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.commitFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be finalized.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2alpha/{+name}:commitFunctionUpgrade",
+"request": {
+"$ref": "CommitFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "create": {
 "description": "Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.",
 "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions",
@@ -404,6 +460,62 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"redirectFunctionUpgradeTraffic": {
+"description": "Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.",
+"flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:redirectFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.redirectFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2alpha/{+name}:redirectFunctionUpgradeTraffic",
+"request": {
+"$ref": "RedirectFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"rollbackFunctionUpgradeTraffic": {
+"description": "Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.",
+"flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:rollbackFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.rollbackFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2alpha/{+name}:rollbackFunctionUpgradeTraffic",
+"request": {
+"$ref": "RollbackFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "setIamPolicy": {
 "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
 "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setIamPolicy",
@@ -432,6 +544,34 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"setupFunctionUpgradeConfig": {
+"description": "Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.",
+"flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setupFunctionUpgradeConfig",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.setupFunctionUpgradeConfig",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function which should have configuration copied for upgrade.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2alpha/{+name}:setupFunctionUpgradeConfig",
+"request": {
+"$ref": "SetupFunctionUpgradeConfigRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "testIamPermissions": {
 "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.",
 "flatPath": "v2alpha/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:testIamPermissions",
@@ -571,9 +711,15 @@
 }
 }
 },
-"revision": "20240118",
+"revision": "20240205",
 "rootUrl": "https://cloudfunctions.googleapis.com/",
 "schemas": {
+"AbortFunctionUpgradeRequest": {
+"description": "Request for the `AbortFunctionUpgrade` method.",
+"id": "AbortFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "AuditConfig": {
 "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.",
 "id": "AuditConfig",
@@ -724,6 +870,12 @@
 },
 "type": "object"
 },
+"CommitFunctionUpgradeRequest": {
+"description": "Request for the `CommitFunctionUpgrade` method.",
+"id": "CommitFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "Date": {
 "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp",
 "id": "Date",
@@ -853,6 +1005,12 @@
 "$ref": "BuildConfig",
 "description": "Describes the Build step of the function that builds a container from the given source."
 },
+"createTime": {
+"description": "Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions.",
+"format": "google-datetime",
+"readOnly": true,
+"type": "string"
+},
 "description": {
 "description": "User-provided description of a function.",
 "type": "string"
@@ -934,6 +1092,11 @@
 "readOnly": true,
 "type": "string"
 },
+"upgradeInfo": {
+"$ref": "UpgradeInfo",
+"description": "Output only. UpgradeInfo for this Cloud Function",
+"readOnly": true
+},
 "url": {
 "description": "Output only. The deployed url for the function.",
 "readOnly": true,
@@ -1846,6 +2009,12 @@
 },
 "type": "object"
 },
+"RedirectFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RedirectFunctionUpgradeTraffic` method.",
+"id": "RedirectFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "RepoSource": {
 "description": "Location of the source in a Google Cloud Source Repository.",
 "id": "RepoSource",
@@ -1877,6 +2046,12 @@
 },
 "type": "object"
 },
+"RollbackFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RollbackFunctionUpgradeTraffic` method.",
+"id": "RollbackFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "Runtime": {
 "description": "Describes a runtime and any special information (e.g., deprecation status) related to it.",
 "id": "Runtime",
@@ -2150,6 +2325,12 @@
 },
 "type": "object"
 },
+"SetupFunctionUpgradeConfigRequest": {
+"description": "Request for the `SetupFunctionUpgradeConfig` method.",
+"id": "SetupFunctionUpgradeConfigRequest",
+"properties": {},
+"type": "object"
+},
 "Source": {
 "description": "The location of the function source code.",
 "id": "Source",
@@ -2262,6 +2443,53 @@
 }
 },
 "type": "object"
+},
+"UpgradeInfo": {
+"description": "Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration.",
+"id": "UpgradeInfo",
+"properties": {
+"buildConfig": {
+"$ref": "BuildConfig",
+"description": "Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade."
+},
+"eventTrigger": {
+"$ref": "EventTrigger",
+"description": "Describes the Event trigger which has been setup to prepare for 2nd gen upgrade."
+},
+"serviceConfig": {
+"$ref": "ServiceConfig",
+"description": "Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade."
+},
+"upgradeState": {
+"description": "UpgradeState of the function",
+"enum": [
+"UPGRADE_STATE_UNSPECIFIED",
+"ELIGIBLE_FOR_2ND_GEN_UPGRADE",
+"UPGRADE_OPERATION_IN_PROGRESS",
+"SETUP_FUNCTION_UPGRADE_CONFIG_SUCCESSFUL",
+"SETUP_FUNCTION_UPGRADE_CONFIG_ERROR",
+"ABORT_FUNCTION_UPGRADE_ERROR",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"COMMIT_FUNCTION_UPGRADE_ERROR"
+],
+"enumDescriptions": [
+"Unspecified state. Most functions are in this upgrade state.",
+"Functions in this state are eligible for 1st Gen -> 2nd Gen upgrade.",
+"An upgrade related operation is in progress.",
+"SetupFunctionUpgradeConfig API was successful and a 2nd Gen function has been created based on 1st Gen function instance.",
+"SetupFunctionUpgradeConfig API was un-successful.",
+"AbortFunctionUpgrade API was un-successful.",
+"RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.",
+"RedirectFunctionUpgradeTraffic API was un-successful.",
+"RollbackFunctionUpgradeTraffic API was un-successful.",
+"CommitFunctionUpgrade API was un-successful."
+],
+"type": "string"
+}
+},
+"type": "object"
 }
 },
 "servicePath": "",
diff --git a/googleapiclient/discovery_cache/documents/cloudfunctions.v2beta.json b/googleapiclient/discovery_cache/documents/cloudfunctions.v2beta.json
index 05680c299e..2f2ad80d51 100644
--- a/googleapiclient/discovery_cache/documents/cloudfunctions.v2beta.json
+++ b/googleapiclient/discovery_cache/documents/cloudfunctions.v2beta.json
@@ -154,6 +154,62 @@
 "resources": {
 "functions": {
 "methods": {
+"abortFunctionUpgrade": {
+"description": "Aborts generation upgrade process for a function with the given name from the specified project. Deletes all 2nd Gen copy related configuration and resources which were created during the upgrade process.",
+"flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:abortFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.abortFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be aborted.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2beta/{+name}:abortFunctionUpgrade",
+"request": {
+"$ref": "AbortFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"commitFunctionUpgrade": {
+"description": "Finalizes the upgrade after which function upgrade can not be rolled back. This is the last step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related configuration and resources.",
+"flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:commitFunctionUpgrade",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.commitFunctionUpgrade",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which upgrade should be finalized.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2beta/{+name}:commitFunctionUpgrade",
+"request": {
+"$ref": "CommitFunctionUpgradeRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "create": {
 "description": "Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return `ALREADY_EXISTS` error.",
 "flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions",
@@ -404,6 +460,62 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"redirectFunctionUpgradeTraffic": {
+"description": "Changes the traffic target of a function from the original 1st Gen function to the 2nd Gen copy. This is the second step of the multi step process to upgrade 1st Gen functions to 2nd Gen. After this operation, all new traffic will be served by 2nd Gen copy.",
+"flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:redirectFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.redirectFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed to 2nd Gen from 1st Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2beta/{+name}:redirectFunctionUpgradeTraffic",
+"request": {
+"$ref": "RedirectFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
+"rollbackFunctionUpgradeTraffic": {
+"description": "Reverts the traffic target of a function from the 2nd Gen copy to the original 1st Gen function. After this operation, all new traffic would be served by the 1st Gen.",
+"flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:rollbackFunctionUpgradeTraffic",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.rollbackFunctionUpgradeTraffic",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function for which traffic target should be changed back to 1st Gen from 2nd Gen.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2beta/{+name}:rollbackFunctionUpgradeTraffic",
+"request": {
+"$ref": "RollbackFunctionUpgradeTrafficRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "setIamPolicy": {
 "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
 "flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setIamPolicy",
@@ -432,6 +544,34 @@
 "https://www.googleapis.com/auth/cloud-platform"
 ]
 },
+"setupFunctionUpgradeConfig": {
+"description": "Creates a 2nd Gen copy of the function configuration based on the 1st Gen function with the given name. This is the first step of the multi step process to upgrade 1st Gen functions to 2nd Gen. Only 2nd Gen configuration is setup as part of this request and traffic continues to be served by 1st Gen.",
+"flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:setupFunctionUpgradeConfig",
+"httpMethod": "POST",
+"id": "cloudfunctions.projects.locations.functions.setupFunctionUpgradeConfig",
+"parameterOrder": [
+"name"
+],
+"parameters": {
+"name": {
+"description": "Required. The name of the function which should have configuration copied for upgrade.",
+"location": "path",
+"pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$",
+"required": true,
+"type": "string"
+}
+},
+"path": "v2beta/{+name}:setupFunctionUpgradeConfig",
+"request": {
+"$ref": "SetupFunctionUpgradeConfigRequest"
+},
+"response": {
+"$ref": "Operation"
+},
+"scopes": [
+"https://www.googleapis.com/auth/cloud-platform"
+]
+},
 "testIamPermissions": {
 "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.",
 "flatPath": "v2beta/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:testIamPermissions",
@@ -571,9 +711,15 @@
 }
 }
 },
-"revision": "20240118",
+"revision": "20240205",
 "rootUrl": "https://cloudfunctions.googleapis.com/",
 "schemas": {
+"AbortFunctionUpgradeRequest": {
+"description": "Request for the `AbortFunctionUpgrade` method.",
+"id": "AbortFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "AuditConfig": {
 "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.",
 "id": "AuditConfig",
@@ -724,6 +870,12 @@
 },
 "type": "object"
 },
+"CommitFunctionUpgradeRequest": {
+"description": "Request for the `CommitFunctionUpgrade` method.",
+"id": "CommitFunctionUpgradeRequest",
+"properties": {},
+"type": "object"
+},
 "Date": {
 "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp",
 "id": "Date",
@@ -853,6 +1005,12 @@
 "$ref": "BuildConfig",
 "description": "Describes the Build step of the function that builds a container from the given source."
 },
+"createTime": {
+"description": "Output only. The create timestamp of a Cloud Function. This is only applicable to 2nd Gen functions.",
+"format": "google-datetime",
+"readOnly": true,
+"type": "string"
+},
 "description": {
 "description": "User-provided description of a function.",
 "type": "string"
@@ -934,6 +1092,11 @@
 "readOnly": true,
 "type": "string"
 },
+"upgradeInfo": {
+"$ref": "UpgradeInfo",
+"description": "Output only. UpgradeInfo for this Cloud Function",
+"readOnly": true
+},
 "url": {
 "description": "Output only. The deployed url for the function.",
 "readOnly": true,
@@ -1846,6 +2009,12 @@
 },
 "type": "object"
 },
+"RedirectFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RedirectFunctionUpgradeTraffic` method.",
+"id": "RedirectFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "RepoSource": {
 "description": "Location of the source in a Google Cloud Source Repository.",
 "id": "RepoSource",
@@ -1877,6 +2046,12 @@
 },
 "type": "object"
 },
+"RollbackFunctionUpgradeTrafficRequest": {
+"description": "Request for the `RollbackFunctionUpgradeTraffic` method.",
+"id": "RollbackFunctionUpgradeTrafficRequest",
+"properties": {},
+"type": "object"
+},
 "Runtime": {
 "description": "Describes a runtime and any special information (e.g., deprecation status) related to it.",
 "id": "Runtime",
@@ -2150,6 +2325,12 @@
 },
 "type": "object"
 },
+"SetupFunctionUpgradeConfigRequest": {
+"description": "Request for the `SetupFunctionUpgradeConfig` method.",
+"id": "SetupFunctionUpgradeConfigRequest",
+"properties": {},
+"type": "object"
+},
 "Source": {
 "description": "The location of the function source code.",
 "id": "Source",
@@ -2262,6 +2443,53 @@
 }
 },
 "type": "object"
+},
+"UpgradeInfo": {
+"description": "Information related to: * A function's eligibility for 1st Gen to 2nd Gen migration * Current state of migration for function undergoing migration.",
+"id": "UpgradeInfo",
+"properties": {
+"buildConfig": {
+"$ref": "BuildConfig",
+"description": "Describes the Build step of the function that builds a container to prepare for 2nd gen upgrade."
+},
+"eventTrigger": {
+"$ref": "EventTrigger",
+"description": "Describes the Event trigger which has been setup to prepare for 2nd gen upgrade."
+},
+"serviceConfig": {
+"$ref": "ServiceConfig",
+"description": "Describes the Cloud Run service which has been setup to prepare for 2nd gen upgrade."
+},
+"upgradeState": {
+"description": "UpgradeState of the function",
+"enum": [
+"UPGRADE_STATE_UNSPECIFIED",
+"ELIGIBLE_FOR_2ND_GEN_UPGRADE",
+"UPGRADE_OPERATION_IN_PROGRESS",
+"SETUP_FUNCTION_UPGRADE_CONFIG_SUCCESSFUL",
+"SETUP_FUNCTION_UPGRADE_CONFIG_ERROR",
+"ABORT_FUNCTION_UPGRADE_ERROR",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL",
+"REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR",
+"COMMIT_FUNCTION_UPGRADE_ERROR"
+],
+"enumDescriptions": [
+"Unspecified state. Most functions are in this upgrade state.",
+"Functions in this state are eligible for 1st Gen -> 2nd Gen upgrade.",
+"An upgrade related operation is in progress.",
+"SetupFunctionUpgradeConfig API was successful and a 2nd Gen function has been created based on 1st Gen function instance.",
+"SetupFunctionUpgradeConfig API was un-successful.",
+"AbortFunctionUpgrade API was un-successful.",
+"RedirectFunctionUpgradeTraffic API was successful and traffic is served by 2nd Gen function stack.",
+"RedirectFunctionUpgradeTraffic API was un-successful.",
+"RollbackFunctionUpgradeTraffic API was un-successful.",
+"CommitFunctionUpgrade API was un-successful."
+],
+"type": "string"
+}
+},
+"type": "object"
 }
 },
 "servicePath": "",