## INSTALL / BUILD instructions for Apache Airflow Provider packages

NOTE! Those sources are only intended to be used to build Apache Airflow Provider packages,
not the Apache Airflow. They have been generated using the unreleased version of Apache Airflow.
(from master)

The .tar.gz sdist package contains setup.py file that can be use to build the provider package using:

`setup.py bdist_wheel sdist`

Providing that you have all prerequisites described in 'setup_requires'.

# [optional] run Apache RAT (release audit tool) to validate license headers
# RAT docs here: https://creadur.apache.org/rat/. Requires Java and Apache Rat
java -jar apache-rat.jar -d .
