Dequindre /de-KWIN-der/ (n.): A minimalist scheduler.
Project description
Dequindre Is Easy to Setup
Anywhere Python goes, Dequindre can follow. Dequindre is written in pure python and is OS independent. All you need is to pip install dequindre.
Dequindre Is Easy to Run
Dequindre makes it easy to run virtual environments. Dequindre supports virtualenv, pipenv, and conda environments.
Dequindre Is Easy to Learn
You can run your first Dequindre workflow in minutes. Dequindre is less than 1000 lines of Python and fully documented. In contrast, Airflow v1.10.2 has 444 pages of docs.
Your First Dequindre Schedule
Install dequindre from PyPI pip install dequindre. Then in the REPL,
>>> from dequindre import Task, DAG, Dequindre
>>> ## define tasks and environments
>>> boil_water = Task('./boil_water.py')
>>> steep_tea = Task('./steep_tea.py')
>>> drink_tea = Task('./drink_tea.py')
>>> ## define runtime dependencies
>>> make_tea = DAG(dependencies={
... steep_tea: boil_water,
... drink_tea: steep_tea
... })
>>> ## create schedules
>>> dq = Dequindre(make_tea)
>>> dq.get_schedules()
defaultdict(<class 'set'>, {
1: {Task(./boil_water.py)},
2: {Task(./steep_tea.py)},
3: {Task(./drink_tea.py)}})
>>> ## run tasks if the files exist.
>>> dq.run_tasks()
Running Task(./boil_water.py)
I am boiling water...
Running Task(./steep_tea.py)
I am steeping tea...
Running Task(./drink_tea.py)
I am drinking tea...
You can run the tasks by copy-pasting the following python code into the commented files.
# pour_water.py
print("I'm pouring water...")
# boil_water.py
print("I'm boiling water...")
# steep_tea.py
print("I'm steeping tea...")
Features
Automated workflow scheduling
Pure Python: Relies entirely on Python built-ins to reduce bugs and complexity
Cross-Python compatible: Supports Python 2 and Python 3
Cross-platform: Windows and Unix style OS environments
- Run your Python tasks in any pre-defined environments
dequindre facilitates virtualenv, conda, and pipenv environments
Supports dynamic workflow configuration also seen in Airflow
Documented examples and configuration
Extras
License
This project is licensed under the MIT License - see the LICENSE file for details.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Contribute
If you’re interested in contributing to Dequindre, raise an issue, make a pull request to dev, and reach out to the author, vogt4nick.
Please read our contribution guidelines for details on our code of conduct, and the process for submitting pull requests to us.
Acknowledgements
Thank you, Dynatrace, for facilitating the early development of Dequindre during Innovation Day, February 2019.
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 dequindre-0.10.0.tar.gz
.
File metadata
- Download URL: dequindre-0.10.0.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 469ebf400ecc29bed3f159441bf6a0f313986f07306097c597af0f00621bba50 |
|
MD5 | bfe356b2e19b39ec4cdcd54c8b0ef4ed |
|
BLAKE2b-256 | c423d1e09a6e4f44dd5eed706c340bbd6cc6ceeda0dbef042ed5943c86c6931f |
File details
Details for the file dequindre-0.10.0-py3-none-any.whl
.
File metadata
- Download URL: dequindre-0.10.0-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58603a508ddcbac9d32d4f74429ab94675d3eda4a3ed4e3ac9c5c05fa4d8ba18 |
|
MD5 | 293aeedc4f3094a226ed5345603f8f66 |
|
BLAKE2b-256 | 624da4e9e89fcb29e4be6ac1ee3953e26b948581acc4773ab8c2f20712fcda03 |