A package that simplifies the validation and decoding of Data Manager Workflow definitions.
The Job decoder is published on PyPI and can be installed from there:
pip install im-data-manager-workflow-engine
Once installed you can validate the workflow definition (expected to be a dictionary formed from the definition YAML file) with:
>>> from workflow import decoder >>> error: Optional[str] = decoder.validate_schema(workflow)
The project's written in Python and uses Poetry for dependency and package management. We also use pre-commit to manage our pre-commit hooks, which rely on black, mypy, pylint, amongst others.
From within a VS Code devcontainer environment (recommended):
poetry install --with dev --sync pre-commit install -t commit-msg -t pre-commit
And then start by running the pre-commit hooks to ensure you're stating with a _clean_ project:
pre-commit run --all-files
And then run the tests:
poetry run coverage run -m pytest poetry run coverage report
- Report bugs, suggest features or view the source code on GitHub.