Skip to content

Conformance tests failing on BSC MareNostrum5 due to home directories being symlinks to GPFS #281

Description

@kinow

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)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions