Skip to main content

Apache Airflow Providers containing Deferrable Operators & Sensors from Astronomer

Project description

PyPI Version PyPI - Python Version PyPI - License Code style: black CodeCov Documentation Status Security: bandit

Apache Airflow Providers containing Deferrable Operators & Sensors from Astronomer.

Installation

Install and update using pip:

pip install astronomer-providers

This only installs dependencies for core provider. To install all dependencies, run:

pip install 'astronomer-providers[all]'

To only install the dependencies for a specific provider, specify the integration name as extra argument, example to install Kubernetes provider dependencies, run:

pip install 'astronomer-providers[cncf.kubernetes]'

Extras

Extra Name

Installation Command

Dependencies

all

pip install 'astronomer-providers[all]'

All providers

amazon

pip install 'astronomer-providers[amazon]'

Amazon

apache.livy

pip install 'astronomer-providers[apache.livy]'

Apache Livy

cncf.kubernetes

pip install 'astronomer-providers[cncf.kubernetes]'

Kubernetes

databricks

pip install 'astronomer-providers[databricks]'

Databricks

google

pip install 'astronomer-providers[google]'

Google Cloud

http

pip install 'astronomer-providers[http]'

HTTP

snowflake

pip install 'astronomer-providers[snowflake]'

Snowflake

Example Usage

This repo is structured same as the Apache Airflow’s source code, so for example if you want to import Async operators, you can import it as follows:

from astronomer.providers.amazon.aws.sensors.s3 import S3KeySensorAsync as S3KeySensor

waiting_for_s3_key = S3KeySensor(
    task_id="waiting_for_s3_key",
    bucket_key="sample_key.txt",
    wildcard_match=False,
    bucket_name="sample-bucket",
)

Example DAGs for each provider is within the respective provider’s folder. For example, the Kubernetes provider’s DAGs are within the astronomer/providers/cncf/kubernetes/example_dags folder.

Principle

We will only create Async operators for the “sync-version” of operators that do some level of polling (take more than a few seconds to complete).

For example, we won’t create an async Operator for a BigQueryCreateEmptyTableOperator but will create one for BigQueryInsertJobOperator that actually runs queries and can take hours in the worst case for task completion.

Changelog

We follow Semantic Versioning for releases. Check CHANGELOG.rst for the latest changes.

Contributing Guide

All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome.

A detailed overview on how to contribute can be found in the Contributing Guide.

As contributors and maintainers to this project, you are expected to abide by the Contributor Code of Conduct.

Goals for the project

  • Our focus is on the speed of iteration and development in this stage of the project and so we want to be able to quickly iterate with our community members and customers and cut releases as necessary

  • Airflow Providers are separate packages from the core apache-airflow package and we would like to avoid further bloating the Airflow repo

  • We want users and the community to be able to easily track features and the roadmap for individual providers that we develop

  • We would love to see the Airflow community members create, maintain and share their providers to build an Ecosystem of Providers.

License

Apache License 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astronomer-providers-1.3.0.tar.gz (99.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

astronomer_providers-1.3.0-py3-none-any.whl (147.4 kB view details)

Uploaded Python 3

File details

Details for the file astronomer-providers-1.3.0.tar.gz.

File metadata

  • Download URL: astronomer-providers-1.3.0.tar.gz
  • Upload date:
  • Size: 99.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for astronomer-providers-1.3.0.tar.gz
Algorithm Hash digest
SHA256 0e4ba9c46b69130cec8dea927f846d63dfd44721def7ad46ab679f1302b1e9f5
MD5 9c3e1cc1bcc73fbf3f7273f18514e86a
BLAKE2b-256 5b440e095eb7e8e15d11dc4370d8c50f774281f32ecc42790ad61ca895b1d4d4

See more details on using hashes here.

File details

Details for the file astronomer_providers-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for astronomer_providers-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4fa93af86d5b805a4d2b6dfb4b84acd4cd6d5c6c4b30811d1da33f11ffb0a6d5
MD5 f07572518194eddb8e2c92f9ffaacc1f
BLAKE2b-256 0a64485c58b103cc6cf162fcdf35b38bc91452d6ea17adff96ce0ad22f379389

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page