google.cloud.gcp_cloudfunctions_cloud_function module – Creates a GCP CloudFunction
Note
This module is part of the google.cloud collection (version 1.4.1).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install google.cloud
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: google.cloud.gcp_cloudfunctions_cloud_function
.
Note
The google.cloud collection will be removed from Ansible 12 due to violations of the Ansible inclusion requirements. The collection has unresolved sanity test failures. See the discussion thread for more information.
Synopsis
A Cloud Function that contains user computation executed in response to an event.
Requirements
The below requirements are needed on the host that executes this module.
python >= 2.6
requests >= 2.18.4
google-auth >= 1.3.0
Parameters
Parameter |
Comments |
---|---|
An OAuth2 access token if credential type is accesstoken. |
|
The type of credential used. Choices:
|
|
The amount of memory in MB available for a function. |
|
User-provided description of a function. |
|
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. |
|
Specifies which Ansible environment you’re running this module within. This should not be set unless you know what you’re doing. This only alters the User Agent string for any API requests. |
|
Environment variables that shall be available during function execution. |
|
An HTTPS endpoint type of source that can be triggered via URL. |
|
The type of event to observe. For example: `providers/cloud.storage/eventTypes/object.change` and `providers/cloud.pubsub/eventTypes/topic.publish`. |
|
The resource(s) from which to observe events, for example, `projects/_/buckets/myBucket.` . |
|
The hostname of the service that should be observed. |
|
An HTTPS endpoint type of source that can be triggered via URL. |
|
A set of key/value label pairs associated with this Cloud Function. |
|
The location of this cloud function. |
|
A user-defined name of the function. Function names must be unique globally and match pattern `projects/*/locations/*/functions/*`. |
|
The Google Cloud Platform project to use. |
|
The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. |
|
Array of scopes to be used |
|
The contents of a Service Account JSON file, either in a dictionary or as a JSON string that represents it. |
|
An optional service account email address if machineaccount is selected and the user does not wish to use the default email. |
|
The path of a Service Account JSON file if serviceaccount is selected as type. |
|
The Google Cloud Storage URL, starting with gs://, pointing to the zip archive which contains the function. |
|
The source repository where a function is hosted. |
|
The URL pointing to the hosted repository where the function is defined . |
|
The Google Cloud Storage signed URL used for source uploading. |
|
Whether the given object should exist in GCP Choices:
|
|
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. |
|
Use HTTP to trigger this function. Choices:
|
Examples
- name: create a cloud function
google.cloud.gcp_cloudfunctions_cloud_function:
name: test_object
location: us-central1
entry_point: helloGET
source_archive_url: gs://ansible-cloudfunctions-bucket/function.zip
trigger_http: 'true'
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The amount of memory in MB available for a function. Returned: success |
|
User-provided description of a function. Returned: success |
|
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. Returned: success |
|
Environment variables that shall be available during function execution. Returned: success |
|
An HTTPS endpoint type of source that can be triggered via URL. Returned: success |
|
The type of event to observe. For example: `providers/cloud.storage/eventTypes/object.change` and `providers/cloud.pubsub/eventTypes/topic.publish`. Returned: success |
|
The resource(s) from which to observe events, for example, `projects/_/buckets/myBucket.` . Returned: success |
|
The hostname of the service that should be observed. Returned: success |
|
An HTTPS endpoint type of source that can be triggered via URL. Returned: success |
|
The deployed url for the function. Returned: success |
|
A set of key/value label pairs associated with this Cloud Function. Returned: success |
|
The location of this cloud function. Returned: success |
|
A user-defined name of the function. Function names must be unique globally and match pattern `projects/*/locations/*/functions/*`. Returned: success |
|
The runtime in which the function is going to run. If empty, defaults to Node.js 6. Returned: success |
|
The email of the service account for this function. Returned: success |
|
The Google Cloud Storage URL, starting with gs://, pointing to the zip archive which contains the function. Returned: success |
|
The source repository where a function is hosted. Returned: success |
|
The URL pointing to the hosted repository where the function were defined at the time of deployment. Returned: success |
|
The URL pointing to the hosted repository where the function is defined . Returned: success |
|
The Google Cloud Storage signed URL used for source uploading. Returned: success |
|
Status of the function deployment. Returned: success |
|
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. Returned: success |
|
Use HTTP to trigger this function. Returned: success |
|
The last update timestamp of a Cloud Function. Returned: success |
|
The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being created. Returned: success |