common-workflow-language / common-workflow-language/cwltool

defining dockerFile without dockerImageId gives confusing error

Open
#557 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
376
Forks
255
Avg merge
2d 7h
Merged PRs (30d)
12

Description

When I define a CWL definition containing a dockerFile statement without dockerImageId I get:
```
$ .virtualenv/bin/cwltool 1.0.20171017195544
Resolved 'steps/ampl.cwl' to 'file:///home/gijs/prefactor-cwl/steps/ampl.cwl'
Workflow error, try again with --debug for more information:
Docker is not available for this tool, try --no-container to disable Docker, or install a user space Docker replacement
like uDocker with --user-space-docker-cmd.: 'dockerImageId'
```

When I run the command with --debug enabled I see the error:

```
KeyError: 'dockerImageId'
```

after adding a docker image ID the problems goes away.

Contributor guide

Open the contributing guide

Research direction

Reproduce the CWL definition with a dockerFile but no dockerImageId, first without and then with --debug, using the command shown in the issue. Trace where the missing dockerImageId becomes a KeyError; done means the input produces a clear validation error that identifies the missing field instead of the misleading Docker availability message.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
devops, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.