Skip to content

Traceback with a workflow with only cwlVersion, class, and empty inputs and outputs #1695

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

Open
kinow opened this issue Jul 17, 2022 · 0 comments

Comments

@kinow
Copy link
Member

kinow commented Jul 17, 2022

I am writing workflows for the initial sections of the user guide, trying to find the simplest workflow possible to run and validate (Java anecdote: an empty Test.java file is a valid Java file and can be used with javac, being the simplest Java file).

An IndexError traceback was raised for the following workflow:

cwlVersion: v1.2
class: CommandLineTool
inputs: []
outputs: []
(venv) kinow@ranma:~/Development/python/workspace/user_guide$ cwltool /tmp/wf.cwl 
INFO /home/kinow/Development/python/workspace/user_guide/venv/bin/cwltool 3.1.20220406080846
INFO Resolved '/tmp/wf.cwl' to 'file:///tmp/wf.cwl'
INFO [job wf.cwl] /tmp/wf0urglt$ 
ERROR Exception while running job
Traceback (most recent call last):
  File "/home/kinow/Development/python/workspace/user_guide/venv/lib/python3.9/site-packages/cwltool/job.py", line 348, in _execute
    rcode = _job_popen(
  File "/home/kinow/Development/python/workspace/user_guide/venv/lib/python3.9/site-packages/cwltool/job.py", line 986, in _job_popen
    sproc = subprocess.Popen(
  File "/home/kinow/Development/python/miniconda3/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/kinow/Development/python/miniconda3/lib/python3.9/subprocess.py", line 1691, in _execute_child
    executable = args[0]
IndexError: list index out of range
WARNING [job wf.cwl] completed permanentFail
{}
WARNING Final process status is permanentFail

Expected Behavior

A better error message (assuming this is not a valid CWL Workflow).

Actual Behavior

A traceback.

Workflow Code

cwlVersion: v1.2
class: CommandLineTool
inputs: []
outputs: []

Full Traceback

INFO /home/kinow/Development/python/workspace/user_guide/venv/bin/cwltool 3.1.20220406080846
INFO Resolved '/tmp/wf.cwl' to 'file:///tmp/wf.cwl'
DEBUG Parsed job order from command line: {
    "id": "/tmp/wf.cwl"
}
DEBUG [job wf.cwl] initializing from file:///tmp/wf.cwl
DEBUG [job wf.cwl] {}
DEBUG [job wf.cwl] path mappings is {}
DEBUG [job wf.cwl] command line bindings is []
DEBUG [job wf.cwl] initial work dir {}
INFO [job wf.cwl] /tmp/vuvihs02$ 
ERROR Exception while running job
Traceback (most recent call last):
  File "/home/kinow/Development/python/workspace/user_guide/venv/lib/python3.9/site-packages/cwltool/job.py", line 348, in _execute
    rcode = _job_popen(
  File "/home/kinow/Development/python/workspace/user_guide/venv/lib/python3.9/site-packages/cwltool/job.py", line 986, in _job_popen
    sproc = subprocess.Popen(
  File "/home/kinow/Development/python/miniconda3/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/kinow/Development/python/miniconda3/lib/python3.9/subprocess.py", line 1691, in _execute_child
    executable = args[0]
IndexError: list index out of range
WARNING [job wf.cwl] completed permanentFail
DEBUG [job wf.cwl] outputs {}
DEBUG [job wf.cwl] Removing input staging directory /tmp/1c33c7tl
DEBUG [job wf.cwl] Removing temporary directory /tmp/wbvodmo6
DEBUG Removing intermediate output directory /tmp/vuvihs02
{}
WARNING Final process status is permanentFail

Your Environment

  • cwltool version: cwltool 3.1.20220406080846
    Check using cwltool --version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant