Hi,
I tried to run the CWL Conformance Tests with StreamFlow on BSC MareNostrum5, and nearly all tests failed with the same error.
FileNotFoundError: [Errno 2] No such file or directory: '/gpfs/home/bsc/<USER>/cwl/streamflow/file:/home/bsc/<USER>/cwl/streamflow/common-workflow-language-1c1f122f780075d910fdfdea7e15e46eef3c078d/v1.0/v1.0/no-inputs-wf.cwl'
@GlassOfWhiskey helped me troubleshoot it, and apparently cwltest has some code that fails to resolve symlinks, and instead concatenates two directories. Iacopo shared this code with me on Element, so copying it here in case it helps:
|
def prepare_test_paths( |
|
test: dict[str, str], |
|
cwd: str, |
|
) -> tuple[str, str | None]: |
|
"""Determine the test path and the tool path.""" |
|
cwd = schema_salad.ref_resolver.file_uri(cwd) |
|
processfile = test["tool"] |
|
if processfile.startswith(cwd): |
|
processfile = processfile[len(cwd) + 1 :] |
|
|
|
jobfile = test.get("job") |
|
if jobfile: |
|
if jobfile.startswith(cwd): |
|
jobfile = jobfile[len(cwd) + 1 :] |
|
return processfile, jobfile |
Some context: kinow/cwl-mpi#20 (comment)
Hi,
I tried to run the CWL Conformance Tests with StreamFlow on BSC MareNostrum5, and nearly all tests failed with the same error.
@GlassOfWhiskey helped me troubleshoot it, and apparently cwltest has some code that fails to resolve symlinks, and instead concatenates two directories. Iacopo shared this code with me on Element, so copying it here in case it helps:
cwltest/src/cwltest/utils.py
Lines 407 to 421 in b13d814
Some context: kinow/cwl-mpi#20 (comment)