cwl2oci is a Transpiler-Mate plugin that generates OCI image annotations from
normalized software metadata and a selected CWL process.
The plugin writes a JSON document containing standard
org.opencontainers.image.* properties and CWL-specific org.cwl.* properties:
{
"$manifest": {
"org.opencontainers.image.title": "Example workflow",
"org.opencontainers.image.version": "1.0.0",
"org.cwl.entrypoint": "main",
"org.cwl.type": "Workflow"
}
}It implements the
Transpiler-Mate API plugin
contract and registers cwl2oci.plugin:cwl2oci in the
transpiler_mate.plugins entry-point group. It does not install a standalone
command-line program or build an OCI image.
git clone https://github.com/Transpiler-Mate/cwl2oci.git
cd cwl2oci
python -m pip install .Python 3.10 or newer is required. A compatible Transpiler-Mate host supplies the CWL context and defines how plugins are invoked.
The documentation follows Diátaxis and is published at https://Transpiler-Mate.github.io/cwl2oci/:
- tutorials for guided learning;
- how-to guides for specific tasks;
- reference for the exact plugin and output contracts;
- explanation for architecture and design context.
See CONTRIBUTING.md. Submit issues at https://github.com/Transpiler-Mate/cwl2oci/issues.
Licensed under the Apache License 2.0.