Skip to main content

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.

PyPI - Python Version License PyPI version Tests Code style: black

Table of Contents
  1. Installation
  2. Usage
  3. How to contribute

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_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

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cjunct-2.2.0.tar.gz (33.1 kB view hashes)

Uploaded Source

Built Distribution

cjunct-2.2.0-py3-none-any.whl (41.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page