airflow.providers.google.cloud.operators.functions
¶
此模块包含 Google Cloud Functions 操作符。
模块内容¶
类¶
在 Google Cloud Functions 中创建或更新函数。 |
|
预处理 zip 路径参数。 |
|
从 Google Cloud Functions 中删除指定的函数。 |
|
调用已部署的云函数。用于测试目的,因为允许的流量非常有限。 |
属性¶
- airflow.providers.google.cloud.operators.functions.CLOUD_FUNCTION_VALIDATION: list[dict[str, Any]][源代码]¶
- class airflow.providers.google.cloud.operators.functions.CloudFunctionDeployFunctionOperator(*, location, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', zip_path=None, validate_body=True, impersonation_chain=None, **kwargs)[源代码]¶
基类:
airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator
在 Google Cloud Functions 中创建或更新函数。
参见
有关如何使用此操作符的更多信息,请查看指南: CloudFunctionDeployFunctionOperator
- 参数
location (str) – 应该创建函数的 Google Cloud 区域。
body (dict) – 云函数定义的正文。正文必须是云函数字典,如: https://cloud.google.com/functions/docs/reference/rest/v1/projects.locations.functions 中所述。不同的 API 版本需要不同变体的云函数字典。
project_id (str) – (可选) 应该创建函数的 Google Cloud 项目 ID。
gcp_conn_id (str) – (可选) 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。
api_version (str) – (可选) 使用的 API 版本(例如 v1 - 默认 - 或 v1beta1)。
zip_path (str | None) – 包含函数源代码的 zip 文件的路径。如果设置了路径,则不应在正文中指定 sourceUploadUrl,或者应该为空。然后,将使用从 Cloud Functions API 的 generateUploadUrl 生成的上传 URL 上传 zip 文件。
validate_body (bool) – 如果设置为 False,则不执行正文验证。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选服务帐户,用于使用短期凭据模拟,或获取列表中最后一个帐户的 access_token 所需的帐户链式列表,该帐户将在请求中被模拟。如果设置为字符串,则帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予直接前面的标识,列表中的第一个帐户将此角色授予发起帐户(模板化)。
- template_fields: collections.abc.Sequence[str] = ('body', 'project_id', 'location', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源代码]¶
- airflow.providers.google.cloud.operators.functions.GCF_SOURCE_ARCHIVE_URL = 'sourceArchiveUrl'[源代码]¶
- class airflow.providers.google.cloud.operators.functions.ZipPathPreprocessor(body, zip_path=None)[源代码]¶
预处理 zip 路径参数。
负责检查 zip 路径参数是否相对于 source_code 正文字段正确指定。非空 zip 路径参数很特殊,因为它与 sourceArchiveUrl 和 sourceRepository 正文字段互斥。它也与非空 sourceUploadUrl 互斥。当 zip_path 不为空时,预处理以特殊方式修改 sourceUploadUrl 正文字段。当调用 execute 方法时,会运行一个额外的步骤,并且使用 Cloud Function API 方法 generateUploadUrl 返回的值在正文中设置 sourceUploadUrl 字段值。
- 参数
body (dict) – 传递给 create/update 方法调用的主体。
zip_path (str | None) – (可选) 包含函数源代码的 zip 文件的路径。如果设置了路径,则主体中不应指定 sourceUploadUrl 或应为空。然后,zip 文件将使用通过 Cloud Functions API 中的 generateUploadUrl 生成的上传 URL 上传。
- airflow.providers.google.cloud.operators.functions.FUNCTION_NAME_PATTERN = '^projects/[^/]+/locations/[^/]+/functions/[^/]+$'[source]¶
- class airflow.providers.google.cloud.operators.functions.CloudFunctionDeleteFunctionOperator(*, name, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, project_id=PROVIDE_PROJECT_ID, **kwargs)[source]¶
基类:
airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator
从 Google Cloud Functions 中删除指定的函数。
参见
有关如何使用此运算符的更多信息,请查看以下指南:CloudFunctionDeleteFunctionOperator
- 参数
name (str) – 完全限定的函数名称,匹配以下模式:^projects/[^/]+/locations/[^/]+/functions/[^/]+$
gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。
api_version (str) – 使用的 API 版本(例如 v1 或 v1beta1)。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选服务帐户,用于使用短期凭据模拟,或获取列表中最后一个帐户的 access_token 所需的帐户链式列表,该帐户将在请求中被模拟。如果设置为字符串,则帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予直接前面的标识,列表中的第一个帐户将此角色授予发起帐户(模板化)。
- template_fields: collections.abc.Sequence[str] = ('name', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]¶
- class airflow.providers.google.cloud.operators.functions.CloudFunctionInvokeFunctionOperator(*, function_id, input_data, location, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]¶
基类:
airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator
调用已部署的云函数。用于测试目的,因为允许的流量非常有限。
参见
有关如何使用此操作符的更多信息,请查看指南: CloudFunctionDeployFunctionOperator
- 参数
function_id (str) – 要调用的函数的 ID
input_data (dict) – 要传递给函数的输入
location (str) – 函数所在的位置。
project_id (str) – 可选,Google Cloud Project 函数所属的 project_id。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选服务帐户,用于使用短期凭据模拟,或获取列表中最后一个帐户的 access_token 所需的帐户链式列表,该帐户将在请求中被模拟。如果设置为字符串,则帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予直接前面的标识,列表中的第一个帐户将此角色授予发起帐户(模板化)。
- 返回
无
- template_fields: collections.abc.Sequence[str] = ('function_id', 'input_data', 'location', 'project_id', 'impersonation_chain')[source]¶