galaxyproject / galaxyproject/planemo

Improve resilience when outputs aren't produced in workflow tests

Open
#1,272 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
110
Forks
102
Avg merge
4d 21h
Merged PRs (30d)
13

Description

```
There were problems with 1 test(s) - out of 1 test(s) executed. See /home/runner/work/iwc/iwc/tool_test_output.html for detailed breakdown.
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.7.14/x64/lib/python3.7/site-packages/planemo/galaxy/activity.py", line 53, in execute
return _execute(ctx, config, runnable, job_path, **kwds)
File "/opt/hostedtoolcache/Python/3.7.14/x64/lib/python3.7/site-packages/planemo/galaxy/activity.py", line 227, in _execute
run_response.collect_outputs(ctx, output_directory)
File "/opt/hostedtoolcache/Python/3.7.14/x64/lib/python3.7/site-packages/planemo/galaxy/activity.py", line 429, in collect_outputs
pseduo_location=True,
File "/opt/hostedtoolcache/Python/3.7.14/x64/lib/python3.7/site-packages/galaxy/tool_util/cwl/util.py", line 456, in output_to_cwl_json
properties = output_properties(pseduo_location=pseduo_location, **dataset_dict)
File "/opt/hostedtoolcache/Python/3.7.14/x64/lib/python3.7/site-packages/galaxy/tool_util/cwl/util.py", line 35, in output_properties
f = open(path, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpzvrwtntr/full contaminant + mito scaffold list'
VGP-assembly-decontamination-pipeline.ga_0: failed
```

that's not very helpful, I think we just need to catch all exception in collect_outputs.
It is quite clear what the error is if you look at the failing jobs.

https://github.com/galaxyproject/iwc/actions/runs/3158850531/jobs/5141410583

Contributor guide

Open the contributing guide

Research direction

Start with collect_outputs in planemo/galaxy/activity.py and inspect the linked GitHub Actions job for the failing workflow and missing output. Reproduce or examine how a missing output reaches output_to_cwl_json, then ensure the workflow test reports the failure usefully instead of aborting during output collection.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.