Cjunct (pronounced SEE-jen) is an extensible declarative task runner, aimed to make complex routine jobs easier to configure.
Table of Contents
# Install only core components
pip install cjunct
# Install both core components and docker-related extensions
pip install "cjunct[docker]"
# 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_LOG_FILE
: Set log file. -
CJUNCT_WORKFLOW_FILE
: Set the workflow file path explicitly. -
CJUNCT_STRATEGY_NAME
: Manage execution strategy. -
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
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.
poetry run pytest --cov --cov-report=html:.coverage_report
poetry run tox