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.2.2.tar.gz
(9.9 kB
view details)
Built Distribution
File details
Details for the file airflow-docker-0.2.2.tar.gz
.
File metadata
- Download URL: airflow-docker-0.2.2.tar.gz
- Upload date:
- Size: 9.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3470c2a68a600ed0e4085a76a73d3cf5e1ee686dc9a9c872ce4918d9e01b1275 |
|
MD5 | 008d126a7125aa227fc14ee84c2ccbe0 |
|
BLAKE2b-256 | f84a8d4d0669f3946a0004bca74891c3853c17c1620aad46aef39eb1c1dd93f0 |
File details
Details for the file airflow_docker-0.2.2-py2.py3-none-any.whl
.
File metadata
- Download URL: airflow_docker-0.2.2-py2.py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62f7439fbc2d9c5878a3f11bd86fe22fe868daefff77d72d3f3a58371f00532e |
|
MD5 | 789346c083f01a5e8db01b4cbb90f30e |
|
BLAKE2b-256 | 4dda25c1cf98094c7b3ebefd1d7216f1ae27f95e150c35d8502fcd1dd03d374b |