airflow.providers.google.cloud.operators.functions
¶
此模組包含 Google Cloud Functions 運算子。
模組內容¶
類別¶
在 Google Cloud Functions 中建立或更新函數。 |
|
預先處理 zip 路徑參數。 |
|
從 Google Cloud Functions 刪除指定的函數。 |
|
調用已部署的 Cloud Function。用於測試目的,因為僅允許非常少的流量。 |
屬性¶
- 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) – Cloud Functions 定義的本文。本文必須是 Cloud Functions 字典,如以下連結所述: https://cloud.google.com/functions/docs/reference/rest/v1/projects.locations.functions 。不同的 API 版本需要不同變體的 Cloud Functions 字典。
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 方法並在本體中設定由 generateUploadUrl Cloud Function API 方法傳回的值時,會執行額外步驟。
- 參數
- airflow.providers.google.cloud.operators.functions.FUNCTION_NAME_PATTERN = '^projects/[^/]+/locations/[^/]+/functions/[^/]+$'[原始碼]¶
- 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)[原始碼]¶
基底類別:
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')[原始碼]¶
- 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)[原始碼]¶
基底類別:
airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator
調用已部署的 Cloud Function。用於測試目的,因為僅允許非常少的流量。
參閱
有關如何使用此運算子的更多資訊,請查看指南: CloudFunctionDeployFunctionOperator
- 參數
function_id (str) – 要呼叫的函數 ID
input_data (dict) – 傳遞至函數的輸入
location (str) – 函數所在的位置。
project_id (str) – (可選) Google Cloud 專案 project_id,函數屬於該專案。如果設定為 None 或遺失,則使用來自 Google Cloud 連線的預設 project_id。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬,或取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須將「服務帳戶權杖建立者」IAM 角色授予直接前一個身分,列表中的第一個帳戶將此角色授予原始帳戶 (可使用範本)。
- 回傳
None
- template_fields: collections.abc.Sequence[str] = ('function_id', 'input_data', 'location', 'project_id', 'impersonation_chain')[原始碼]¶