airflow.providers.amazon.aws.hooks.mwaa

此模組包含 AWS MWAA hook。

MwaaHook

與 AWS Managed Workflows for Apache Airflow 進行互動。

模組內容

class airflow.providers.amazon.aws.hooks.mwaa.MwaaHook(*args, **kwargs)[source]

繼承自: airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook

與 AWS Managed Workflows for Apache Airflow 進行互動。

提供一個簡單的封裝,用於圍繞 boto3.client("mwaa") 進行操作。

如果您的 IAM 策略沒有 airflow:InvokeRestApi 許可權,該 hook 將使用備用方法,該方法利用 AWS 憑據為 Airflow Web UI 生成本地 Web 登入令牌,然後直接向 Airflow API 發出請求。透過將 generate_local_token 設定為 True,可以將此備用方法設定為預設(且唯一)使用的方法。在此處瞭解更多資訊: https://docs.aws.amazon.com/mwaa/latest/userguide/access-mwaa-apache-airflow-rest-api.html#granting-access-MWAA-Enhanced-REST-API

可以指定其他引數(例如 aws_conn_id),這些引數將傳遞給底層的 AwsBaseHook。

invoke_rest_api(env_name, path, method, body=None, query_params=None, generate_local_token=False)[source]

使用指定的輸入在 Airflow Web 伺服器上呼叫 REST API。

引數:
  • env_name (str) – MWAA 環境的名稱

  • path (str) – 要呼叫的 Apache Airflow REST API 端點路徑

  • method (str) – 用於進行 Airflow REST API 呼叫的 HTTP 方法: 'GET'|'PUT'|'POST'|'PATCH'|'DELETE'

  • body (dict | None) – Apache Airflow REST API 呼叫的請求主體

  • query_params (dict | None) – 要包含在 Apache Airflow REST API 呼叫中的查詢引數

  • generate_local_token (bool) – 如果為 True,則僅使用本地 Web 令牌方法,而不先嚐試 boto 的 invoke_rest_api。如果為 False,則在嘗試 boto 的 invoke_rest_api 後,本地 Web 令牌方法用作備用方法

此條目有幫助嗎?