-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Workflow RO-Crate specification requirements #10
Comments
Shall we also consider some running environment information, such as docker ? e.g.:
|
I had something similar in mind for galaxy, like, on which instance can we run this workflow |
I had a small list with things:
|
Support for describing test cases Hi! One of the main things we're trying to figure out while developing the Life Monitor is how test description is going to look like. Up to now, we've created three workflow ro-crate examples, which don't assume anything other than what's already in the current specs, i.e., that the crate COULD contain a "test" subdir. In practice, as a first stab at imagining how things could be structured, we've arranged the "test" dir in the examples to contain a params file that points at inputs and expected outputs. The Here are a couple of questions that came up while trying to reason on this:
The last two bullets seem to suggest that ro-crates would make things much simpler whith respect to workflows uploaded as single files. What do you think about all this? Let me know if you think this should be moved to a separate issue. |
Update: I have done more work on the current test metadata file structure and related code (see crs4/life_monitor#10). I've also tried to better clarify the current state of things in crs4/life_monitor#11, which can hopefully serve as a starting point for further discussion. Any feedback is more than welcome! |
@simleo sorry for very late reply. With regards to how this fits in the Workflow RO-Crate spec, I think the test descriptions should stay in the file you described, and the For how users would add tests to a pre-uploaded workflow, I think they would almost always want define the tests externally rather than through a web form. Currently in Workflow Hub is it not possible to upload additional files after the fact, but we will support this soon. |
Considering @simleo's use case of test data https://github.com/crs4/life_monitor/wiki/Test-Metadata-Draft-Spec I think we can use https://schema.org/potentialAction from the E.g. On the Workflow contextual entity: "potentialAction": { "@id": "tests/test1.json" } which we could describe as: { "@id": "tests/test1.json",
"@type": "AssessAction",
"agent": {
"@id": "http://lifemonitor.example.com/"
},
"instrument": { "@id": "tests/inputs-job.json" },
"target": { "@id": "#a4b022ac-abc0-46cc-bf75-3402f89a304e" }
},
{ "@id": "#a4b022ac-abc0-46cc-bf75-3402f89a304e",
"@type": "EntryPoint",
"urlTemplate": "http://lifemonitor.example.com/test/submit?wf=https://workflowhub.eu/workflows/53",
"contentType": "application/json"
} Here there is a cheaky We may not need the If all the things needed by https://github.com/crs4/life_monitor/wiki/Test-Metadata-Draft-Spec can be represented as |
Our current assumption is indeed that the test metadata file will be separate, acting as a sort of "plug-in" that adds additional metadata to crates that include testing material. The idea is that basically Life Monitor only expects to find a We also assumed you'd link to the test metadata file in some special way (e.g., the One thing that occurred to me after reading you post, though, is that we were somewhat assuming Life Monitor to be the only possible testing service, while one might want to add an arbitrary test layout to a crate. The One thing I find strange about the entry point example is that it assumes the crate to be registered to (a specific instance of) the WorkflowHub, and with a specific ID. My understanding is that RO-Crates can exist independently from the WorkflowHub, so we are working under the assumption that information about the interaction with the Life Monitor API will be handled in the WorkflowHub backend, not in the crate. I.e., a user registers a new workflow on the WorkflowHub; the WorkflowHub backend makes a POST call to the Life Monitor API (containing a link to the RO-Crate and other info such as uuid, name and version); Life Monitor gets the RO-Crate, reads its contents and acts according to any testing material in it. |
A place to collect requirements for the Workflow RO-Crate requirements.
The current specification is described at https://github.com/workflowhub-eu/about/blob/master/Workflow-RO-Crate.md
The text was updated successfully, but these errors were encountered: