Project

General

Profile

Actions

Bug #19678

closed

arvados-cwl-runner: id name must be a string

Added by Lily Coultas about 2 years ago. Updated almost 2 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Story points:
-
Release relationship:
Auto

Description

arvados-cwl-runner errors if there is an id: name that is not a string, when running a cwl file.

Minimal example (using a record to store a first and last name):

cwl file:

---
class: Workflow
cwlVersion: v1.1
inputs:
  - type:
      fields:
        - name: first
          type: string
        - name: last
          type: string
      type: record
    id: name
outputs:
  - type:
      fields:
        - name: first
          type: string
        - name: last
          type: string
      type: record
    id: processed_name
    outputSource: name
steps: []

input.json:

{"name":{"first":"foo","last":"bar"}}

When running the above file with cwltool, it produces the expected output:

{"processed_name": {"first": "foo", "last": "bar"}}

When running with arvados-cwl-runner --local minimal.cwl input.json it produces the following error:

ERROR Input object failed validation:
identifier field 'ordereddict([('first', 'foo'), ('last', 'bar')])' must be a string

The above failing workflow can be made to work by changing the inputs called name to be called notname instead, so it seems likely the bug may have something to do with treating name in a special way.


Related issues

Related to Arvados - Bug #19599: ContextualVersionConflict 'importlib-metadata<5,>=0.23; python_version == "3.7"'), {'argcomplete'})ResolvedPeter AmstutzActions
Is duplicate of Arvados - Bug #19571: arvados-cwl-runner scattering bugResolvedPeter Amstutz10/28/2022Actions
Actions

Also available in: Atom PDF