Apache Airflow code editor and file manager
Project description
Airflow Code Editor Plugin
A plugin for Apache Airflow that allows you to edit DAGs in browser. It provides a file managing interface within specified directories and it can be used to edit and download your files. If git support is enabled, the DAGs are stored in a Git repository. You may use it to view Git history, review local changes and commit.
System Requirements
- Airflow Versions
- 1.10.3 or newer
- git Versions (git is not required if git support is disabled)
- 2.0 or newer
Screenshots
Deployment Instructions
-
Install the plugin
pip install airflow-code-editor
-
(Optional) Install Black Python code formatter.
pip install black
-
Restart the Airflow Web Server
-
Open Admin - DAGs Code Editor
Config Options
You can edit your airflow.cfg adding any of the following settings in the [code_editor] section. All the settings are optional.
- git_enabled enable git support (default: True). If git is not installed, disable this option.
- git_cmd git command (path)
- git_default_args git arguments added to each call (default: -c color.ui=true)
- git_author_name human-readable name in the author/committer (default logged user first and last names)
- git_author_email email for the author/committer (default: logged user email)
- git_init_repo initialize a git repo in DAGs folder (default: True)
- root_directory root folder (default: Airflow DAGs folder)
- mount_name configure additional file folder name (mount point)
- mount_path configure additional file path
- line_length Python code formatter - max line length (default: 88)
- string_normalization Python code formatter - if true normalize string quotes and prefixes (default: False)
Example:
[code_editor]
git_enabled = True
git_cmd = /usr/bin/git
git_default_args = -c color.ui=true
git_init_repo = False
root_directory = /home/airflow/dags
line_length = 88
string_normalization = False
mount_name = data
mount_path = /home/airflow/data
mount1_name = logs
mount1_path = /home/airflow/logs
Links
- Apache Airflow - https://github.com/apache/airflow
- Codemirror, In-browser code editor - https://github.com/codemirror/codemirror
- Git WebUI, A standalone local web based user interface for git repositories - https://github.com/alberthier/git-webui
- Black, The Uncompromising Code Formatter - https://github.com/psf/black
- Vuew.js - https://github.com/vuejs/vue
- Vue-Tree, Vue component that implements a TreeView control - https://github.com/grapoza/vue-tree
- Splitpanes - https://github.com/antoniandre/splitpanes
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
Hashes for airflow_code_editor-4.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4da2510ca547c53440660598a5846fa5a0af6c61af79bbd4bfaf35ae3f77623e |
|
MD5 | 96be232fafac6b319c783d1fe9eaf8f0 |
|
BLAKE2b-256 | 16e0e51bb171a85d62a8a3eed2685c02d9c8475d39ac20ec4713830b7c164bcd |
Hashes for airflow_code_editor-4.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45fd93692e322a59b7149a863821cbd77d55daaec9fbc913a006eb1069a2a272 |
|
MD5 | da9865fd4bb7efcd5cd180081b749128 |
|
BLAKE2b-256 | 23dbf41bef3945833be5e6b8fa00091efaa73338a12c5ef769b3dab947c7cbb7 |