Declarative task runner
Project description
grana
Grana is an extensible declarative task runner, aimed to make complex routine jobs easier to configure.
Table of Contents
Installation
# Install only core components
pip install grana
# Install with all extensions
pip install "grana[all]"
Usage
Basic examples
# Execute a workflow that is outlined
# in the workdir-located grana.yaml file
grana run
# Print usage
grana --help
Options are configured either via environment variables or via command-line switches. The most common are:
GRANA_LOG_LEVEL: Set log level.GRANA_LOG_FILE: Set log file.GRANA_WORKFLOW_FILE: Set the workflow file path explicitly.GRANA_STRATEGY_NAME: Manage execution strategy.GRANA_ACTIONS_CLASS_DEFINITIONS_DIRECTORY: Where to look for custom action runners.GRANA_STRICT_OUTCOMES_RENDERING: Manage failure behaviour when an outcome key is missing.
Full list of used environment variable names can be obtained with this command:
grana info env-vars
How to contribute
Development environment setup
Requires system-wide poetry>=1.3.2, see official documentation.
poetry env use python3.8
poetry install --no-root --sync --all-extras
The root directory for the source code is src,
thus one may add it to the project's python path
for better IDE integration.
Running tests with coverage on current environment
poetry run pytest --cov --cov-report=html:.coverage_report
Running tests on all available environments
poetry run tox
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file grana-1.1.2.tar.gz.
File metadata
- Download URL: grana-1.1.2.tar.gz
- Upload date:
- Size: 36.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
908e669c81fb7440be782db32e1eb2368b57da218b28bc55226be619cb2c8c99
|
|
| MD5 |
659275cfb6dc6100c113b5764d060bfd
|
|
| BLAKE2b-256 |
7bc7c0e485268a4e9c0ca886def9aedcce58ebbc226456a5f77a7116fb5495b1
|
File details
Details for the file grana-1.1.2-py3-none-any.whl.
File metadata
- Download URL: grana-1.1.2-py3-none-any.whl
- Upload date:
- Size: 45.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57308c1b707f5cc864d30c893ac9515a5ca79c1aa93861ed4f05a0f953e27972
|
|
| MD5 |
e5c91226bb6e4f9ecb2122480faadbe2
|
|
| BLAKE2b-256 |
96792462cb2c8aa41226ece1ead5c3e2071846fcaae2130b035dd0682aab25a4
|