-
Notifications
You must be signed in to change notification settings - Fork 4
Home
For scientific workflows, the “collapse” over time of the software and services on which they depend for correct operation is destructive to their reusability and to the reproducibility of work for which they were used; in this case, "collapse" can be a change in API that is not backwards compatible, a regression in a tool whose version was not pinned, a change in URL of an external resource, etc.
Life Monitor aims to facilitate the periodic execution, monitoring and sharing of tests for workflows, ensuring that software collapse is detected and communicated to the authors, in the hope it will be solved thus extending the useful life of the workflows.
- Provide a central aggregation point for your workflow test statuses and outputs from various testing bots (e.g., TravisCI, GitHub Actions, your own Jenkins instance, etc.).
- Integrated Jenkins-based workflow test execution service (for EOSC-Life participants).
- Facilitate periodic automated execution of tests for Galaxy, Nextflow and CWL workflows.
- REST API
Life Monitor is still in early development. Here is our planned development road map.
-
End of 2020
- Support for receiving workflow POSTs as Workflow RO-crate;
- Relatively stable interface and implementation for test outcome retrieval;
- Complete first version of Workflow RO-crate draft test specification;
- Support monitoring tests running on external testing services (
test.instance
within the WRO-crate test specs).
-
Mid 2021
- Support for receiving workflow POSTs in non ro-crate format;
- Tooling to support Workflow RO-crate test specification:
- Template creation (maybe user-guided, through a wizard);
- Validation tool;
- Possibly integrated in existing RO-crate support tools (e.g., ro-crate-py).
-
Later
- Internal testing service managed by LifeMonitor;
- Programmable periodic test execution.
Test definition in Life Monitor is based on an extension of the Workflow-RO-Crate specification to include workflow tests. The definition of test parameters does not impose specific mechanisms, but instead leverages existing testing frameworks (e.g., Galaxy Planemo).
More details are available in the current draft specification.