An opinionated implementation of exclusively using airflow DockerOperators for all Operators
Project description
airflow-docker
Description
An opinionated implementation of exclusively using airflow DockerOperators for all Operators.
Default Operator
from airflow_docker.operator import Operator
task = Operator(
image='some-image:latest',
...
)
Default Sensor
from airflow_docker.operator import Sensor
sensor = Sensor(
image='some-image:latest',
...
)
Task Code
from airflow_docker_helper import client
client.sensor(True)
Branch Operator
Dag Task
from airflow_docker.operator import BranchOperator
branching_task = BranchOperator(
image='some-image:latest',
...
)
Task Code
from airflow_docker_helper import client
client.branch_to_tasks(['task1', 'task2'])
Short Circuit Operator
Dag Task
from airflow_docker.operator import ShortCircuitOperator
short_circuit = ShortCircuitOperator(
image='some-image:latest',
...
)
Task Code
from airflow_docker_helper import client
client.short_circuit() # This task will short circuit if this function gets called
Context Usage
Dag Task
from airflow_docker.operator import Operator
task = Operator(
image='some-image:latest',
provide_context=True,
...
)
Task Code
from airflow_docker_helper import client
context = client.context()
Configuration
The following operator defaults can be set under the airflowdocker
namespace:
- force_pull (boolean true/false)
- auto_remove (boolean true/false)
- network_mode
For example, to set force_pull
to False by default set the following environment variable like so:
export AIRFLOW__AIRFLOWDOCKER__FORCE_PULL=false
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
airflow-docker-0.3.0.tar.gz
(11.3 kB
view hashes)
Built Distribution
Close
Hashes for airflow_docker-0.3.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ace23430f3bc55b84eabc22b4e3f28b4e7e7a05e7b81d31bdd5bf5cd8860111 |
|
MD5 | c910da0e3e77d3458d0bfd50f5cc6035 |
|
BLAKE2b-256 | ec81a73a0516cec1d2147ca8881800f99e1398bd13bad4a6d9e06c83af51dd9c |