cwl2inputs is a Transpiler-Mate plugin that generates an inputs.yaml template
for a selected CWL workflow or tool using cwltool's Python APIs.
Use Python 3.10 or newer. From this repository:
python -m pip install . transpiler-mate-runtimeThe plugin registers in transpiler_mate.plugins and is invoked through the
runtime; there is no standalone cwl2inputs executable.
transpiler-mate cwl2inputs --output inputs.yaml 'workflow.cwl#main'For the burned-area workflow, from the organization workspace:
transpiler-mate cwl2inputs \
--output tmp/build/burned-area-severity/inputs.yaml \
'tmp/burned-area-severity.cwl#burned-area-severity'--output defaults to inputs.yaml. Parent directories are created as needed;
an existing output file is replaced after successful template generation.
Always select the process with #<process-id>, including single-process documents.
The runtime requires document-level Schema.org SoftwareApplication metadata.
The plugin uses the already-resolved CWL graph and calls cwltool's load_tool
and make_template APIs. It does not execute workflows or containers.
Defaults, example values, and YAML comments come from cwltool. Input ordering
may differ from running cwltool on the original source because the runtime
normalizes the document.
Templates are starting points: replace file/directory paths and other
placeholders before execution. Named optional schemas may appear as schema URI
placeholders; replace them with a value matching the schema or null.
See the first-steps tutorial, CLI guide, and API reference. See CONTRIBUTING.md for checks and development setup.
Bootstrapped with transpiler-mate-plugin-project-template using Copier.