Jupyter Notebook operator for Apache Airflow.
Project description
Airflow-Notebook is an Notebook op to enable running notebooks as part of a Airflow DAG. This package is installed on the host(s) where Apache Airflow webserver and scheduler applications reside.
Building airflow-notebook
make clean install
Usage
Example below on how to use the operator for testing purposes.
from airflow import DAG
from datetime import datetime, timedelta
from notebook_op import NotebookOp
def run_notebook_op(op_name, cos_pull_archive, pipeline_outputs, pipeline_inputs):
op = NotebookOp(name=op_name,
namespace='default',
task_id=op_name,
notebook=op_name,
cos_endpoint='http://object.storage:30000',
cos_bucket='test-bucket',
cos_directory='test-directory',
cos_pull_archive=cos_pull_archive,
pipeline_outputs=pipeline_outputs,
pipeline_inputs=pipeline_inputs,
image='elyra/tensorflow:1.15.2-py3',
in_cluster=True,
env_vars={'AWS_ACCESS_KEY_ID': 'minio', 'AWS_SECRET_ACCESS_KEY': 'minio123',
'GITHUB_TOKEN': 'XXXXXXXXXXXXX'},
dag=dag,
)
return op
default_args = {
'start_date': datetime(2020, 1, 1),
'project_id' : '{{ pipeline_name }}',
'retries': 1,
'retry_delay': timedelta(minutes=3),
}
dag = DAG(
'test_dag',
default_args=default_args,
description='A Sample Test DAG',
)
notebook_op_1 = run_notebook_op('generate-community-contributions',
'generate-community-contributions-37215ef9-70b2-450d-b1e0-655df0b96d6e.tar.gz',
'community_contributions.csv',
'None'
)
notebook_op_2 = run_notebook_op('generate-overview',
'generate-overview-5244c826-ca17-493c-aeb8-e7a224f44527.tar.gz',
'community_overview.csv',
'None',
)
notebook_op_3 = run_notebook_op('overview',
'overview-3dbdd4e8-dc24-489e-bb89-f4e6b9b5e52a.tar.gz',
'None',
'community_contributions.csv,community_overview.csv',
)
notebook_op_1 << notebook_op_3
notebook_op_2 << notebook_op_3
Generated Airflow DAG
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
Built Distribution
File details
Details for the file airflow-notebook-0.0.1.tar.gz
.
File metadata
- Download URL: airflow-notebook-0.0.1.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | be65a5c7ea5774578f8976c199ec6c4fdb490f49ee309fc151befcb9b8f5bf71 |
|
MD5 | 4823342aa52e348758ffeefeb0da267d |
|
BLAKE2b-256 | 793a760a540a4cde09175ad011243c51aad51550580f25e4035c11bb1675b2a5 |
File details
Details for the file airflow_notebook-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: airflow_notebook-0.0.1-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15b482d284f32f6c83b1b9e40b13caa740d9cacbf2ce782667beb7c7b4fc60e2 |
|
MD5 | 482343db5df71195359646866991266d |
|
BLAKE2b-256 | aea5ed324c502cdc32c439815de3583f04f0f98b856401e3ed52832eecf8834a |