A simple repository that serve as boilerplate to run Airflow.
- Docker
- Python >= 3.8
It's possible to spin up an Airflow instance locally simply running:
make airflow-up
After that airflow is reachable at localhost:8080. To login use this credentials:
user: airflow password: airflow
Airflow instance is based on LocalExecutor, this means that the tasks will run inside the scheduler container.
To shut down airflow run:
make airflow-down
When interacting with the codebase from your IDE or editor of your choice, it's helpful to have
airflow installed locally.
Run make init-venv
. The command will setup a virtual environment, and install all the libraries
needed to work with the codebase.
To lint the code base use the command make lint
, the linting is based on flake8.
Before being able the unit test locally, you need to run make init-local
, that will create
the artifacts to run airflow locally (e.g. setting up a DB based on SQLite).
To run unit tests use the command make run-tests
, this will use pytest to run the test suits.
It's possible to fix the imports oder in the python files, simply running make fix-imports