Declarative task runner
Project description
cjunct
Cjunct (pronounced SEE-jen) 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 cjunct
# Install both core components and docker-related extensions
pip install "cjunct[docker]"
Usage
Basic examples
# Execute a workflow that is outlined
# in the workdir-located cjunct.yaml file
cjunct run
# Print usage
cjunct --help
Options are configured either via environment variables or via command-line switches. The most common are:
CJUNCT_LOG_LEVEL
: Set log level.CJUNCT_CONTEXT_DIRECTORY
: Where to look for workflow default files.CJUNCT_WORKFLOW_FILE
: Set the workflow file path explicitly.CJUNCT_CONFIG_LOADER_SOURCE_FILE
: Replace the original loader class (cjunct.DefaultYAMLConfigLoader) with a custom definition from the provided file.CJUNCT_DISPLAY_SOURCE_FILE
: Replace the original display class (cjunct.NetPrefixDisplay) with a custom definition from the provided file.CJUNCT_STRATEGY_NAME
: Manage execution strategy.CJUNCT_FORCE_COLOR
: Indicate the need of using (or not using) colors.CJUNCT_SHELL_INJECT_YIELD_FUNCTION
: Whether to inject theyield_outcome
function to theshell
action or not.CJUNCT_EXTERNAL_MODULES_PATHS
: Which paths should be treated as system during external modules loading.CJUNCT_ACTIONS_CLASS_DEFINITIONS_DIRECTORY
: Where to look for custom action runners.CJUNCT_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:
cjunct 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
cjunct-1.4.7.tar.gz
(29.9 kB
view hashes)
Built Distribution
cjunct-1.4.7-py3-none-any.whl
(37.8 kB
view hashes)