airflow.providers.google.cloud.hooks.functions
此模块包含一个 Google Cloud Functions Hook。
模块内容
-
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', impersonation_chain=None, **kwargs)[source]
Bases: airflow.providers.google.common.hooks.base_google.GoogleBaseHook
Google Cloud Functions API。
Hook 中所有使用了 project_id 的方法都必须使用关键字参数调用,而不是位置参数。
-
api_version[source]
-
get_conn()[source]
检索到 Cloud Functions 的连接。
- 返回:
Google Cloud Function 服务对象。
- 返回类型:
googleapiclient.discovery.build
-
get_function(name)[source]
获取具有指定名称的 Cloud Function。
- 参数:
name (str) – 函数的名称。
- 返回:
表示该函数的 Cloud Functions 对象。
- 返回类型:
dict
-
create_new_function(location, body, project_id)[source]
在 body 中指定的位置创建一个新函数。
- 参数:
-
-
update_function(name, body, update_mask)[source]
根据指定的 update mask 更新 Cloud Functions。
- 参数:
-
-
upload_function_zip(location, zip_path, project_id)[source]
上传包含源码的 ZIP 文件。
- 参数:
location (str) – 创建函数的位置。
zip_path (str) – 要上传的有效 .zip 文件的路径。
project_id (str) – 函数所属的 Google Cloud Project ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 Project ID。
- 返回:
由 generateUploadUrl 方法返回的上传 URL。
- 返回类型:
str
-
delete_function(name)[source]
删除指定的 Cloud Function。
- 参数:
name (str) – 函数的名称。
-
call_function(function_id, input_data, location, project_id=PROVIDE_PROJECT_ID)[source]
调用已部署的 Cloud Function。
这是同步执行的,并且仅应用于测试目的,因为允许的流量非常有限。
- 参数:
function_id (str) – 要调用的函数 ID
input_data (dict) – 要传递给函数的输入
location (str) – 函数所在的位置。
project_id (str) – 函数所属的 Google Cloud Project ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 Project ID。