Add JSON report for planemo run invocations#1153
Add JSON report for planemo run invocations#1153jmchilton merged 18 commits intogalaxyproject:masterfrom
Conversation
mvdbeek
left a comment
There was a problem hiding this comment.
I think this is a cool start. Maybe you could model the run report after the test report functionality that generates the report from a template (
) ?
I don't think we need something human-readable actually - we just want to be able to get the IDs. Wolfgang is parsing (We don't have to use YAML btw, JSON is also fine if you prefer.) |
|
I don't think the report itself needs to be human readable (as opposed to what the docs say), I think what's cool is that we can start from the same JSON and produce different kind of reports (markdown, HTML, xunit, plain text, yaml). |
|
I was just hacking on that invocation test report for https://github.com/galaxyproject/planemo/pull/1152/files#diff-27ed15e8e508ef68adea5c98c2025fc3e70937c5d14affdaeaa59b56ba25a6dcR386. It would be nice if this exact JSON is something we could put in the test result JSON somewhere - maybe as a subset of the "data" key or a an "invocation_details" key below "data". I guess that is just an implementation detail though. |
|
@jmchilton do you mean the json structure should look different so it can be reused? |
|
Yeah - let me be more concrete. I think it should be called Move: invocation_details = {
'invocation_id': run_result._invocation_id,
'history_id': run_result._history_id,
'workflow_id': run_result._workflow_id,
'invocation_state': run_result.invocation_state,
'history_state': run_result.history_state,
'error_message': run_result.error_message,
}Into an Then in
That way tooling that is developed around |
|
Okay, I'll have a look.
Aren't we duplicating a lot of stuff here? All this data comes from the GalaxyWorkflowRunResponse in the first place. |
|
There seems to be a step missing, structured_test_data is a method of the TestCase class which is not used when running runnables without testing them. I can probably get it to work (maybe add a structured_test_data method to the RunResponse class as well?) but otherwise maybe you can clarify what you meant @jmchilton? |
|
I think what I was thinking was this - b8cebeb. But now I see there is a thing called invocation_details that is a lot like what I was proposing with execution_details 😆 - of course @mvdbeek did it first and better. His general idea of making this into a report option would be doable if we ensure this is all in there in this way (which it may already be though - I'm unsure). |
|
I would be happy to make the simplest change possible: and then modify the But maybe this can be done in a later PR. |
mvdbeek
left a comment
There was a problem hiding this comment.
This looks fantastic, thanks a lot @simonbray!

Fixes #1149.
We could make this way more extensive, e.g. include all job ids, all invocation step ids, etc... For @wm75 and me this would be sufficient at the moment:
Maybe we can extend it later if there's interest.