astronomer.providers.amazon.aws.hooks.base_aws

This module contains async AWS Base Hook for deferrable operators and sensors.

Classes

AwsBaseHookAsync

Interacts with AWS using aiobotocore asynchronously.

Module Contents

class astronomer.providers.amazon.aws.hooks.base_aws.AwsBaseHookAsync(aws_conn_id=default_conn_name, verify=None, region_name=None, client_type=None, resource_type=None, config=None)[source]

Bases: airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook

Interacts with AWS using aiobotocore asynchronously.

Note

AwsBaseHookAsync uses aiobotocore to create asynchronous hooks. Hence, AwsBaseHookAsync only supports the authentication mechanism that aiobotocore supports. Currently, AwsBaseHookAsync supports only AWS STS client method assume_role provided in the Airflow connection extra args via aiobotocore.

Parameters:
  • aws_conn_id (str | None) – The Airflow connection used for AWS credentials. If this is None or empty then the default boto3 behaviour is used. If running Airflow in a distributed manner and aws_conn_id is None or empty, then default boto3 configuration would be used (and must be maintained on each worker node).

  • verify (bool | str | None) – Whether or not to verify SSL certificates.

  • region_name (str | None) – AWS region_name. If not specified then the default boto3 behaviour is used.

  • client_type (str | None) – boto3.client client_type. Eg ‘s3’, ‘emr’ etc

  • resource_type (str | None) – boto3.resource resource_type. Eg ‘dynamodb’ etc

  • config (botocore.config.Config | dict[str, Any] | None) – Configuration for botocore client.

See also

AWS API

async get_client_async()[source]

Create an Async Client object to communicate with AWS services.

static get_role_credentials(async_session, conn_config)[source]
Async:

Get the role_arn, method credentials from connection details and get the role credentials detail.