airflow.providers.google.cloud.hooks.functions

This module contains a Google Cloud Functions Hook.

Module Contents

Classes

CloudFunctionsHook

Hook for the Google Cloud Functions APIs.

Attributes

TIME_TO_SLEEP_IN_SECONDS

airflow.providers.google.cloud.hooks.functions.TIME_TO_SLEEP_IN_SECONDS = 1[source]
class airflow.providers.google.cloud.hooks.functions.CloudFunctionsHook(api_version, gcp_conn_id='google_cloud_default', delegate_to=None, impersonation_chain=None)[source]

Bases: airflow.providers.google.common.hooks.base_google.GoogleBaseHook

Hook for the Google Cloud Functions APIs.

All the methods in the hook where project_id is used must be called with keyword arguments rather than positional.

get_conn(self)[source]

Retrieves the connection to Cloud Functions.

Returns

Google Cloud Function services object.

Return type

dict

get_function(self, name)[source]

Returns the Cloud Function with the given name.

Parameters

name (str) -- Name of the function.

Returns

A Cloud Functions object representing the function.

Return type

dict

create_new_function(self, location, body, project_id)[source]

Creates a new function in Cloud Function in the location specified in the body.

Parameters
  • location (str) -- The location of the function.

  • body (dict) -- The body required by the Cloud Functions insert API.

  • project_id (str) -- Optional, Google Cloud Project project_id where the function belongs. If set to None or missing, the default project_id from the Google Cloud connection is used.

Returns

None

Return type

None

update_function(self, name, body, update_mask)[source]

Updates Cloud Functions according to the specified update mask.

Parameters
  • name (str) -- The name of the function.

  • body (dict) -- The body required by the cloud function patch API.

  • update_mask (List[str]) -- The update mask - array of fields that should be patched.

Returns

None

Return type

None

upload_function_zip(self, location, zip_path, project_id)[source]

Uploads zip file with sources.

Parameters
  • location (str) -- The location where the function is created.

  • zip_path (str) -- The path of the valid .zip file to upload.

  • project_id (str) -- Optional, Google Cloud Project project_id where the function belongs. If set to None or missing, the default project_id from the Google Cloud connection is used.

Returns

The upload URL that was returned by generateUploadUrl method.

Return type

str

delete_function(self, name)[source]

Deletes the specified Cloud Function.

Parameters

name (str) -- The name of the function.

Returns

None

Return type

None

call_function(self, function_id, input_data, location, project_id=PROVIDE_PROJECT_ID)[source]

Synchronously invokes a deployed Cloud Function. To be used for testing purposes as very limited traffic is allowed.

Parameters
  • function_id (str) -- ID of the function to be called

  • input_data (Dict) -- Input to be passed to the function

  • location (str) -- The location where the function is located.

  • project_id (str) -- Optional, Google Cloud Project project_id where the function belongs. If set to None or missing, the default project_id from the Google Cloud connection is used.

Returns

None

Return type

dict

Was this entry helpful?