# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: cnrm.cloud.google.com/version: 1.106.0 creationTimestamp: null labels: cnrm.cloud.google.com/managed-by-kcc: "true" cnrm.cloud.google.com/stability-level: alpha cnrm.cloud.google.com/system: "true" cnrm.cloud.google.com/tf2crd: "true" name: cloudfunctions2functions.cloudfunctions2.cnrm.cloud.google.com spec: group: cloudfunctions2.cnrm.cloud.google.com names: categories: - gcp kind: CloudFunctions2Function plural: cloudfunctions2functions shortNames: - gcpcloudfunctions2function - gcpcloudfunctions2functions singular: cloudfunctions2function scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .metadata.creationTimestamp name: Age type: date - description: When 'True', the most recent reconcile of the resource succeeded jsonPath: .status.conditions[?(@.type=='Ready')].status name: Ready type: string - description: The reason for the value in 'Ready' jsonPath: .status.conditions[?(@.type=='Ready')].reason name: Status type: string - description: The last transition time for the value in 'Status' jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime name: Status Age type: date name: v1alpha1 schema: openAPIV3Schema: properties: apiVersion: description: 'apiVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' type: string kind: description: 'kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' type: string metadata: type: object spec: properties: buildConfig: description: |- Describes the Build step of the function that builds a container from the given source. properties: build: description: |- The Cloud Build name of the latest successful deployment of the function. type: string dockerRepository: description: User managed repository created in Artifact Registry optionally with a customer managed encryption key. type: string entryPoint: description: |- 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. type: string environmentVariables: additionalProperties: type: string description: User-provided build-time environment variables for the function. type: object runtime: description: |- The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. type: string source: description: The location of the function source code. properties: repoSource: description: If provided, get the source from this location in a Cloud Source Repository. properties: branchName: description: Regex matching branches to build. type: string commitSha: description: Regex matching tags to build. type: string dir: description: Directory, relative to the source root, in which to run the build. type: string invertRegex: description: |- Only trigger a build if the revision regex does NOT match the revision regex. type: boolean projectId: description: |- Immutable. ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed. type: string repoName: description: Name of the Cloud Source Repository. type: string tagName: description: Regex matching tags to build. type: string type: object storageSource: description: If provided, get the source from this location in Google Cloud Storage. properties: bucket: description: Google Cloud Storage bucket containing the source. type: string generation: description: |- Google Cloud Storage generation for the object. If the generation is omitted, the latest generation will be used. type: integer object: description: Google Cloud Storage object containing the source. type: string type: object type: object workerPool: description: Name of the Cloud Build Custom Worker Pool that should be used to build the function. type: string type: object description: description: User-provided description of a function. type: string eventTrigger: description: |- An Eventarc trigger managed by Google Cloud Functions that fires events in response to a condition in another service. properties: eventFilters: description: Criteria used to filter events. items: properties: attribute: description: |- 'Required. The name of a CloudEvents attribute. Currently, only a subset of attributes are supported for filtering. Use the 'gcloud eventarc providers describe' command to learn more about events and their attributes. Do not filter for the 'type' attribute here, as this is already achieved by the resource's 'event_type' attribute. type: string operator: description: |- 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'. [See documentation on path patterns here](https://cloud.google.com/eventarc/docs/path-patterns)'. type: string value: description: |- Required. The value for the attribute. If the operator field is set as 'match-path-pattern', this value can be a path pattern instead of an exact value. type: string required: - attribute - value type: object type: array eventType: description: Required. The type of event to observe. type: string pubsubTopic: description: |- The name of a Pub/Sub topic in the same project that will be used as the transport topic for the event delivery. type: string retryPolicy: description: |- Describes the retry policy in case of function's execution failure. Retried execution is charged as any other execution. Possible values: ["RETRY_POLICY_UNSPECIFIED", "RETRY_POLICY_DO_NOT_RETRY", "RETRY_POLICY_RETRY"]. type: string serviceAccountEmail: description: The email of the service account for this function. type: string trigger: description: Output only. The resource name of the Eventarc trigger. type: string triggerRegion: description: |- 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. type: string type: object location: description: Immutable. The location of this cloud function. type: string projectRef: description: The project that this resource belongs to. oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: 'Allowed value: The `name` field of a `Project` resource.' type: string name: description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' type: string namespace: description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' type: string type: object resourceID: description: Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default. type: string serviceConfig: description: Describes the Service being deployed. properties: allTrafficOnLatestRevision: description: Whether 100% of traffic is routed to the latest revision. Defaults to true. type: boolean availableCpu: description: The number of CPUs used in a single container instance. Default value is calculated from available memory. type: string availableMemory: description: |- 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. type: string environmentVariables: additionalProperties: type: string description: Environment variables that shall be available during function execution. type: object gcfUri: description: URIs of the Service deployed. type: string ingressSettings: description: 'Available ingress settings. Defaults to "ALLOW_ALL" if unspecified. Default value: "ALLOW_ALL" Possible values: ["ALLOW_ALL", "ALLOW_INTERNAL_ONLY", "ALLOW_INTERNAL_AND_GCLB"].' type: string maxInstanceCount: description: |- The limit on the maximum number of function instances that may coexist at a given time. type: integer maxInstanceRequestConcurrency: description: Sets the maximum number of concurrent requests that each instance can receive. Defaults to 1. type: integer minInstanceCount: description: |- The limit on the minimum number of function instances that may coexist at a given time. type: integer secretEnvironmentVariables: description: Secret environment variables configuration. items: properties: key: description: Name of the environment variable. type: string projectId: description: Project identifier (preferrably project number but can also be the project ID) of the project that contains the secret. If not set, it will be populated with the function's project assuming that the secret exists in the same project as of the function. type: string secret: description: Name of the secret in secret manager (not the full resource name). type: string version: description: 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. type: string required: - key - projectId - secret - version type: object type: array secretVolumes: description: Secret volumes configuration. items: properties: mountPath: description: 'The path within the container to mount the secret volume. For example, setting the mountPath 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.' type: string projectId: description: Project identifier (preferrably project number but can also be the project ID) of the project that contains the secret. If not set, it will be populated with the function's project assuming that the secret exists in the same project as of the function. type: string secret: description: Name of the secret in secret manager (not the full resource name). type: string versions: description: 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.'. items: properties: path: description: 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 mountPath as '/etc/secrets' and path as secret_foo would mount the secret value file at /etc/secrets/secret_foo. type: string version: description: 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. type: string required: - path - version type: object type: array required: - mountPath - projectId - secret type: object type: array service: description: Name of the service associated with a Function. type: string serviceAccountEmail: description: The email of the service account for this function. type: string timeoutSeconds: description: |- 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. type: integer uri: description: URI of the Service deployed. type: string vpcConnector: description: The Serverless VPC Access connector that this cloud function can connect to. type: string vpcConnectorEgressSettings: description: 'Available egress settings. Possible values: ["VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED", "PRIVATE_RANGES_ONLY", "ALL_TRAFFIC"].' type: string type: object required: - location - projectRef type: object status: properties: conditions: description: Conditions represent the latest available observation of the resource's current state. items: properties: lastTransitionTime: description: Last time the condition transitioned from one status to another. type: string message: description: Human-readable message indicating details about last transition. type: string reason: description: Unique, one-word, CamelCase reason for the condition's last transition. type: string status: description: Status is the status of the condition. Can be True, False, Unknown. type: string type: description: Type is the type of the condition. type: string type: object type: array environment: description: The environment the function is hosted on. type: string observedGeneration: description: ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. type: integer state: description: Describes the current state of the function. type: string updateTime: description: The last update timestamp of a Cloud Function. type: string type: object required: - spec type: object served: true storage: true subresources: status: {} status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: []