cwltool icon indicating copy to clipboard operation
cwltool copied to clipboard

CWL validation error for CUDARequirement

Open ctriquet-cs opened this issue 6 months ago • 0 comments

A graph type CWL file using cwltool:CUDARequirement fails validating:

$ uvx cwltool --version
/home/xxx/.cache/uv/archive-v0/ZMLCW12Mp3N3VGv3_5qoT/bin/cwltool 3.1.20250110105449
$ uvx cwltool --enable-ext --validate hello_gpu.cwl
...
ERROR Tool definition failed initialization:
Tool definition file:///home/xxx/hello_gpu.cwl#hello-cl failed validation:
hello_gpu.cwl:28:3:   checking object 'hello_gpu.cwl#hello-cl'
hello_gpu.cwl:35:3:     checking field 'requirements'
hello_gpu.cwl:38:5:       checking item
                            Field 'class' contains undefined reference to
                            'http://commonwl.org/cwltool#CUDARequirement'

This is working with a command line CWL file:

$ uvx cwltool --enable-ext --validate hello_gpu_cmd.cwl
INFO /home/xxx/.cache/uv/archive-v0/ZMLCW12Mp3N3VGv3_5qoT/bin/cwltool 3.1.20250110105449
INFO Resolved 'hello_gpu_cmd.cwl' to 'file:///home/xxx/hello_gpu_cmd.cwl'
hello_gpu_cmd.cwl is valid CWL.

It seems to be a regression between cwltool versions 3.1.20240708091337 and 3.1.20240909164951:

$ uvx [email protected] --enable-ext --validate hello_gpu.cwl
INFO /home/xxx/.cache/uv/archive-v0/h23YVLkmKiHUylFu5yntD/bin/cwltool 3.1.20240708091337
INFO Resolved 'hello_gpu.cwl' to 'file:///home/xxx/hello_gpu.cwl'
hello_gpu.cwl is valid CWL.
❯ uvx [email protected] --enable-ext --validate hello_gpu.cwl
INFO /home/xxx/.cache/uv/archive-v0/tTUhElDku-ZBcz3fPrqTp/bin/cwltool 3.1.20240909164951
INFO Resolved 'hello_gpu.cwl' to 'file:///home/xxx/hello_gpu.cwl'
ERROR Tool definition failed initialization:
Tool definition file:///home/xxx/hello_gpu.cwl#hello-cl failed validation:
hello_gpu.cwl:28:3:   checking object 'hello_gpu.cwl#hello-cl'
hello_gpu.cwl:35:3:     checking field 'requirements'
hello_gpu.cwl:38:5:       checking item
                            Field 'class' contains undefined reference to
                            'http://commonwl.org/cwltool#CUDARequirement'

The corresponding CWL files are attached into cwl.zip.

ctriquet-cs avatar Apr 15 '25 12:04 ctriquet-cs