View Source GoogleApi.CloudFunctions.V1.Model.CloudFunction (google_api_cloud_functions v0.37.0)
Describes a Cloud Function that contains user computation executed in response to an event. It encapsulate function and triggers configurations.
Attributes
-
automaticUpdatePolicy
(type:GoogleApi.CloudFunctions.V1.Model.AutomaticUpdatePolicy.t
, default:nil
) - -
labels
(type:map()
, default:nil
) - Labels associated with this Cloud Function. -
name
(type:String.t
, default:nil
) - A user-defined name of the function. Function names must be unique globally and match patternprojects/*/locations/*/functions/*
-
sourceUploadUrl
(type:String.t
, default:nil
) - The Google Cloud Storage signed URL used for source uploading, generated by calling [google.cloud.functions.v1.GenerateUploadUrl]. The signature is validated on write methods (Create, Update) The signature is stripped from the Function object on read methods (Get, List) -
sourceToken
(type:String.t
, default:nil
) - Input only. An identifier for Firebase function sources. Disclaimer: This field is only supported for Firebase function deployments. -
eventTrigger
(type:GoogleApi.CloudFunctions.V1.Model.EventTrigger.t
, default:nil
) - A source that fires events in response to a condition in another service. -
environmentVariables
(type:map()
, default:nil
) - Environment variables that shall be available during function execution. -
description
(type:String.t
, default:nil
) - User-provided description of a function. -
vpcConnector
(type:String.t
, default:nil
) - The VPC Network Connector that this cloud function can connect to. It can be either the fully-qualified URI, or the short name of the network connector resource. The format of this field isprojects/*/locations/*/connectors/*
This field is mutually exclusive withnetwork
field and will eventually replace it. See the VPC documentation for more information on connecting Cloud projects. -
timeout
(type:String.t
, default:nil
) - 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. -
onDeployUpdatePolicy
(type:GoogleApi.CloudFunctions.V1.Model.OnDeployUpdatePolicy.t
, default:nil
) - -
maxInstances
(type:integer()
, default:nil
) - 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 Guide for more details. -
buildName
(type:String.t
, default:nil
) - Output only. The Cloud Build Name of the function deployment.projects//locations//builds/
. -
secretVolumes
(type:list(GoogleApi.CloudFunctions.V1.Model.SecretVolume.t)
, default:nil
) - Secret volumes configuration. -
sourceRepository
(type:GoogleApi.CloudFunctions.V1.Model.SourceRepository.t
, default:nil
) - Beta Feature The source repository where a function is hosted. -
buildWorkerPool
(type:String.t
, default:nil
) - Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field isprojects/{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. -
dockerRegistry
(type:String.t
, default:nil
) - Docker Registry to use for this deployment. If unspecified, it defaults toARTIFACT_REGISTRY
. Ifdocker_repository
field is specified, this field should either be left unspecified or set toARTIFACT_REGISTRY
. -
kmsKeyName
(type:String.t
, default:nil
) - Resource name of a KMS crypto key (managed by the user) used to encrypt/decrypt function resources. It must match the patternprojects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}
. If specified, you must also provide an artifact registry repository using thedocker_repository
field that was created with the same KMS crypto key. The following service accounts need to be granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the Key/KeyRing/Project/Organization (least access preferred). 1. Google Cloud Functions service account (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) - Required to protect the function's image. 2. Google Storage service account (service-{project_number}@gs-project-accounts.iam.gserviceaccount.com) - Required to protect the function's source code. If this service account does not exist, deploying a function without a KMS key or retrieving the service agent name provisions it. For more information, see https://cloud.google.com/storage/docs/projects#service-agents and https://cloud.google.com/storage/docs/getting-service-agent#gsutil. Google Cloud Functions delegates access to service agents to protect function resources in internal projects that are not accessible by the end user. -
availableMemoryMb
(type:integer()
, default:nil
) - The amount of memory in MB available for a function. Defaults to 256MB. -
runtime
(type:String.t
, default:nil
) - 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 thegcloud
command reference. -
sourceArchiveUrl
(type:String.t
, default:nil
) - The Google Cloud Storage URL, starting withgs://
, pointing to the zip archive which contains the function. -
vpcConnectorEgressSettings
(type:String.t
, default:nil
) - The egress settings for the connector, controlling what traffic is diverted through it. -
minInstances
(type:integer()
, default:nil
) - A lower bound for the number function instances that may coexist at a given time. -
secretEnvironmentVariables
(type:list(GoogleApi.CloudFunctions.V1.Model.SecretEnvVar.t)
, default:nil
) - Secret environment variables configuration. -
network
(type:String.t
, default:nil
) - Deprecated: use vpc_connector -
buildEnvironmentVariables
(type:map()
, default:nil
) - Build environment variables that shall be available during build time. -
updateTime
(type:DateTime.t
, default:nil
) - Output only. The last update timestamp of a Cloud Function. -
ingressSettings
(type:String.t
, default:nil
) - The ingress settings for the function, controlling what traffic can reach it. -
serviceAccountEmail
(type:String.t
, default:nil
) - The email of the function's service account. If empty, defaults to{project_id}@appspot.gserviceaccount.com
. -
dockerRepository
(type:String.t
, default:nil
) - 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 patternprojects/{project}/locations/{location}/repositories/{repository}
. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be 'DOCKER'. -
httpsTrigger
(type:GoogleApi.CloudFunctions.V1.Model.HttpsTrigger.t
, default:nil
) - An HTTPS endpoint type of source that can be triggered via URL. -
status
(type:String.t
, default:nil
) - Output only. Status of the function deployment. -
versionId
(type:String.t
, default:nil
) - Output only. The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being created. -
buildId
(type:String.t
, default:nil
) - Output only. The Cloud Build ID of the latest successful deployment of the function. -
buildServiceAccount
(type:String.t
, default:nil
) - Optional. A service account the user provides for use with Cloud Build. -
entryPoint
(type:String.t
, default:nil
) - 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.
Summary
Functions
Unwrap a decoded JSON object into its complex fields.
Types
@type t() :: %GoogleApi.CloudFunctions.V1.Model.CloudFunction{ automaticUpdatePolicy: GoogleApi.CloudFunctions.V1.Model.AutomaticUpdatePolicy.t() | nil, availableMemoryMb: integer() | nil, buildEnvironmentVariables: map() | nil, buildId: String.t() | nil, buildName: String.t() | nil, buildServiceAccount: String.t() | nil, buildWorkerPool: String.t() | nil, description: String.t() | nil, dockerRegistry: String.t() | nil, dockerRepository: String.t() | nil, entryPoint: String.t() | nil, environmentVariables: map() | nil, eventTrigger: GoogleApi.CloudFunctions.V1.Model.EventTrigger.t() | nil, httpsTrigger: GoogleApi.CloudFunctions.V1.Model.HttpsTrigger.t() | nil, ingressSettings: String.t() | nil, kmsKeyName: String.t() | nil, labels: map() | nil, maxInstances: integer() | nil, minInstances: integer() | nil, name: String.t() | nil, network: String.t() | nil, onDeployUpdatePolicy: GoogleApi.CloudFunctions.V1.Model.OnDeployUpdatePolicy.t() | nil, runtime: String.t() | nil, secretEnvironmentVariables: [GoogleApi.CloudFunctions.V1.Model.SecretEnvVar.t()] | nil, secretVolumes: [GoogleApi.CloudFunctions.V1.Model.SecretVolume.t()] | nil, serviceAccountEmail: String.t() | nil, sourceArchiveUrl: String.t() | nil, sourceRepository: GoogleApi.CloudFunctions.V1.Model.SourceRepository.t() | nil, sourceToken: String.t() | nil, sourceUploadUrl: String.t() | nil, status: String.t() | nil, timeout: String.t() | nil, updateTime: DateTime.t() | nil, versionId: String.t() | nil, vpcConnector: String.t() | nil, vpcConnectorEgressSettings: String.t() | nil }
Functions
Unwrap a decoded JSON object into its complex fields.