Skip to content

Repository files navigation

CWL 2 OCI

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.

Installation

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.

Documentation

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.

Contributing

See CONTRIBUTING.md. Submit issues at https://github.com/Transpiler-Mate/cwl2oci/issues.

License

Licensed under the Apache License 2.0.

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages