# Rekcurd-airflow
[](https://travis-ci.com/rekcurd/airflow-plugin)
[](https://badge.fury.io/py/rekcurd-airflow)
[](https://codecov.io/gh/rekcurd/airflow-plugin "Non-generated packages only")
[](https://pypi.python.org/pypi/rekcurd-airflow)
Airflow Plugins for [Rekcurd Dashboard](https://github.com/rekcurd/dashboard)
## Environment
- Python 3.6
- apache-airflow >= 1.10.x
- Rekcurd Dashboard >= 0.4.x
## Setup
- Setup Airflow
- Setup Rekcurd Dashboard and get your access token
- Run the following commands
**Use JWT token published by Rekcurd Dashboard as REKCURD_ACCESS_TOKEN for now**
```
# Set the access token and airflow-rekcurd connection to airflow
# Replace the environment variables with your own values.
$ cd $AIRFLOW_HOME
$ airflow variables -s rekcurd_access_token $REKCURD_ACCESS_TOKEN
$ airflow connections -a --conn_id rekcurd_dashboard \
--conn_uri http://$REKCURD_DASHBOARD_HOST:$REKCURD_DASHBOARD_PORT/
$ pip install rekcurd-airflow
```
## Components
You can see example DAGs for the plugins in [here](./dags)
### Operators
- EvaluationUpdateOperator. ([Example DAG](./dags/example_evaluation_upload.py))
- ModelDeleteOperator. ([Example DAG](./dags/example_model_delete.py))
- ModelEvaluateOperator. ([Example DAG](./dags/example_model_evaluate.py))
- ModelSwitchOperator. ([Example DAG](./dags/example_model_switch.py))
- ModelUpdateOperator. ([Example DAG](./dags/example_model_upload.py))
[Overall Example DAG](./dags/example_all.py)
## Test
```
$ cd airflow-plugin # move to the root directory of this repo
# not necessary if you already setup airflow for this repository
$ export AIRFLOW_HOME=`pwd`
$ pip install -r test-requirements.txt
$ airflow initdb
$ fernet_key=`python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"`
$ sed -i -e "s/\(fernet_key =\).*/\1 $fernet_key/" airflow.cfg
$ python -m unittest
```
[](https://travis-ci.com/rekcurd/airflow-plugin)
[](https://badge.fury.io/py/rekcurd-airflow)
[](https://codecov.io/gh/rekcurd/airflow-plugin "Non-generated packages only")
[](https://pypi.python.org/pypi/rekcurd-airflow)
Airflow Plugins for [Rekcurd Dashboard](https://github.com/rekcurd/dashboard)
## Environment
- Python 3.6
- apache-airflow >= 1.10.x
- Rekcurd Dashboard >= 0.4.x
## Setup
- Setup Airflow
- Setup Rekcurd Dashboard and get your access token
- Run the following commands
**Use JWT token published by Rekcurd Dashboard as REKCURD_ACCESS_TOKEN for now**
```
# Set the access token and airflow-rekcurd connection to airflow
# Replace the environment variables with your own values.
$ cd $AIRFLOW_HOME
$ airflow variables -s rekcurd_access_token $REKCURD_ACCESS_TOKEN
$ airflow connections -a --conn_id rekcurd_dashboard \
--conn_uri http://$REKCURD_DASHBOARD_HOST:$REKCURD_DASHBOARD_PORT/
$ pip install rekcurd-airflow
```
## Components
You can see example DAGs for the plugins in [here](./dags)
### Operators
- EvaluationUpdateOperator. ([Example DAG](./dags/example_evaluation_upload.py))
- ModelDeleteOperator. ([Example DAG](./dags/example_model_delete.py))
- ModelEvaluateOperator. ([Example DAG](./dags/example_model_evaluate.py))
- ModelSwitchOperator. ([Example DAG](./dags/example_model_switch.py))
- ModelUpdateOperator. ([Example DAG](./dags/example_model_upload.py))
[Overall Example DAG](./dags/example_all.py)
## Test
```
$ cd airflow-plugin # move to the root directory of this repo
# not necessary if you already setup airflow for this repository
$ export AIRFLOW_HOME=`pwd`
$ pip install -r test-requirements.txt
$ airflow initdb
$ fernet_key=`python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"`
$ sed -i -e "s/\(fernet_key =\).*/\1 $fernet_key/" airflow.cfg
$ python -m unittest
```
Metadata
Release files for rekcurd-airflow 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| rekcurd-airflow-0.1.0.tar.gz | 5.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rekcurd_airflow-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.7 kB
Release files / rekcurd-airflow-0.1.0.tar.gz
| Download URL | rekcurd-airflow-0.1.0.tar.gz |
|---|---|
| Size | 5.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95e8c3d271daafe59c8b5f9f4c69093cf176c93d13b8348d480a6facac4690f5
|
|
BLAKE2b-256 checksum How to use checksums |
fdb3e26edde3512cf622bd12d0f39393fbba95f3832dfa4092e387a3d9bfaf85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8
|
Release files / rekcurd_airflow-0.1.0-py3-none-any.whl
| Download URL | rekcurd_airflow-0.1.0-py3-none-any.whl |
|---|---|
| Size | 13.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4ca18f04c9c31c1d28db93a48f97132c85f1360af559138c1434b5fdaf28378d
|
|
BLAKE2b-256 checksum How to use checksums |
00f78f83b6fea2652293cf959bbe24b803ba03b8941926ecbd7f27c37a701588
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8
|
Security for rekcurd-airflow 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.