Skip to content

cwltool fails in git bash #344

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
hmenager opened this issue Mar 23, 2017 · 6 comments
Closed

cwltool fails in git bash #344

hmenager opened this issue Mar 23, 2017 · 6 comments

Comments

@hmenager
Copy link
Member

reporting this for @am-cornelis
trying to run cwltool in git bash (on Windows) fails when trying to create a symlink.

I'm pasting below the extensive bug report she sent me:

At the ELIXIR All Hands - CWL workshop, I came across the following
error message, which you wanted to hear about.

I was running the cwl-runner on windows using git bash:

$ cwl-runner helloworld.cwl input.yaml
C:\Apps\Python27\Scripts\cwl-runner 1.0.20170309164828
Resolved 'helloworld.cwl' to
'file:///C:/src/play/cwl-workshop/helloworld.cwl'
Got workflow error
Traceback (most recent call last):
  File "c:\apps\python27\lib\site-packages\cwltool\main.py", line 230,
in single_job_executor
    r.run(**kwargs)
  File "c:\apps\python27\lib\site-packages\cwltool\job.py", line 213, in run
    stageFiles(self.pathmapper, os.symlink, ignoreWritable=True)
AttributeError: 'module' object has no attribute 'symlink'
Workflow error, try again with --debug for more information:
'module' object has no attribute 'symlink'

This is my setup:

Windows 10 Pro, with Git Bash (2.7.0)

$ python --version
Python 2.7.11

$ pip --version
pip 7.1.2 from c:\apps\python27\lib\site-packages (python 2.7)

$ cwl-runner --version
C:\Apps\Python27\Scripts\cwl-runner 1.0.20170309164828

Cheers,
Amélie

@am-cornelis
Copy link

If it helps reproduce the error: here are the 2 files I was using...

cwl-workshop.zip

helloworld.cwl

#!/usr/bin/env cwl-runner
 
 cwlVersion: v1.0
 class: CommandLineTool
 
 inputs:
   message: string
 
 baseCommand: [ echo ]
 
 outputs:
   response: stdout

input.yaml

message: "Bonjour, Monde"

mr-c added a commit that referenced this issue Jun 22, 2017
8b6ddb1 Merge pull request #461 from MarkRobbo/rdfs-namespace
eb64c56 Add rdfs namespaces where used
e5f4086 Merge pull request #416 from common-workflow-language/mr-c-patch-1
4cf45da Merge pull request #459 from common-workflow-language/airflow-badge
100635d add badge and promote Airflow upwards
db0c837 Merge pull request #407 from common-workflow-language/fix-support-link
0d88a24 Merge pull request #455 from ohsu-comp-bio/cwl-tes-implementation
8d76233 Merge pull request #453 from common-workflow-language/fix-conflicting-ids
3496956 fix conflicting IDs
15a7d51 Merge pull request #452 from common-workflow-language/hmenager-patch-1
78940a8 Add ELIXIR + BioExcel participating organizations
05fcef8 remove funnel from list since we are no longer maintaining it
09c2d0c Merge pull request #445 from common-workflow-language/toil-backend-update
873ebfa Merge pull request #448 from common-workflow-language/skanwal-patch-1
d52c2b1 Update README.md
77f38c8 Merge pull request #447 from common-workflow-language/avro-spec
615646e Fix broken avro spec link
a863f80 Merge pull request #441 from common-workflow-language/more-contributors
9e84f13 Merge pull request #444 from common-workflow-language/mr-c-patch-2
506508b Merge pull request #432 from michael-kotliar/master
dfbb124 update list of schedulers and platforms for Toil
f7c68c4 add matching SVG
c2c1f1e Added more contributors
50e9d25 Merge pull request #439 from common-workflow-language/link-cwlgen
6362e57 Add link to python-cwlgen.
04c3f8e Add Airflow in Implementations Section of Readme
e150035 Merge pull request #426 from common-workflow-language/fix-wc-test
6acb016 Fix wc test by using wc -l to avoid padding issues on different implementions of 'wc' (!)
d80919e Revert "Fix identifier conflicts (checked by cwltool for the first time) by giving ids"
f2ea521 Merge pull request #418 from mdmiller53/master
2ade169 Update README.md
9930c4a Merge pull request #417 from common-workflow-language/fix-id-conflicts
fcc593a Fix identifier conflicts (checked by cwltool for the first time) by giving ids to embedded tools and workflows.
60b4701 Move blog link out of support section
d038d86 Merge pull request #355 from StarvingMarvin/master
f6b6f74 Merge pull request #409 from common-workflow-language/LourensVeen-uml-sketch
e4b4b99 Add UML sketch
81d5e1e Merge branch 'master' of https://github.com/common-workflow-language/common-workflow-language
074a420 Merge branch 'master' of github.com:StarvingMarvin/common-workflow-language
1f5ccec Use explicit anchor
b0e1212 fix support link
1452e65 Merge pull request #406 from sharmatime/patch-1
b60a48c Update README.md
aa44386 Merge pull request #400 from common-workflow-language/v1.1.0-dev1
e6dc6e4 Use ShellCommandRequirement for stderr tests.
7098e43 turn off shell quoting for stderr tests
8de0b2b sync remaining updates made to v1.0
8ab5eb9 stderr redirect tests use "echo" instead of checking for the usage message of "egrep".
a90334a Merge pull request #399 from common-workflow-language/Consonance
9566984 add platform support list for Consonance
d0fc2df Add missing files.
f0f8b67 Sync v1.1 conformance test suite to changes in v1.0 suite.
50f052e Merge pull request #340 from Jeltje/master
f8a2d76 Add Consonance
776eb3b Merge pull request #397 from common-workflow-language/ohofmann-clarifications
af0b112 participating organization clarifications
c7958cf Merge pull request #395 from common-workflow-language/dir5-allow-symlink
12c12ce Merge pull request #366 from common-workflow-language/support-link-and-collabs
142e34e Make the "dir5.cwl" pass if the implementation uses symlinks.
1d5c5b9 document Toil's slurm support
7063fc0 Merge pull request #386 from common-workflow-language/cwl-ecosystem-update
85976a7 Add latest additions to the CWL ecosystem
f956af5 Merge pull request #385 from common-workflow-language/fix/issue/195
3a5aef3 Additional participating organizations
103c976 Merge pull request #383 from andrewjesaitis/userguide_typo
f95eb57 Use v1.0 style id's in inputs/outputs example
2d7707c Merge pull request #376 from common-workflow-language/open-stand
6396df0 long overdue linking to open-stand.org
2d74be4 even dhough slim is larger than alpine, it reuses debian:8 that is already pulled for other tests, so overall smaller overhead
a4822d8 specifying python2 as baseCommand in order for tests to work with systems where python3 is the default
360e2b9 Merge pull request #371 from common-workflow-language/smoe-userguide-typo-contianer
1a571ba UserGuide.yml trivial typo
3bd20eb Merge pull request #368 from bamuzesc/patch-1
bed0329 removed redundant line 4 "baseCommand: javac"
3003fc4 support instructions link, list of collabs
37c3e0a Merge pull request #360 from zrilak/master
2bc1b13 Tweaks to README
87d982f Merge branch 'master' of github.com:common-workflow-language/common-workflow-language
4f80e57 some concluding remark
047c9ad UserGuide: about nested workflow
d5d124c include empty.yml
3b41eda outputSource within output parameter
70f528a CWL View link
dc7d391 even dhough slim is larger than alpine, it reuses debian:8 that is already pulled for other tests, so overall smaller overhead
40b65c2 Merge remote-tracking branch 'upstream/master'
25975b0 specifying python2 as baseCommand in order for tests to work with systems where python3 is the default
9ce806b empty.yml can't be quite empty..?
37ef31c How to make empty.yml
1104bf7 Fix typos in UserGuide
f5c5f4d Update README.md
dd083bd Clarify Xenon CWL work
97b3698 Update organizations
5473858 Merge pull request #344 from common-workflow-language/import-hint-test
a26c1ae add test for importing hints
fd09b15 fixed typos

git-subtree-dir: cwltool/schemas
git-subtree-split: 8b6ddb1
@xamgore
Copy link

xamgore commented Jun 23, 2017

The same issue with symlink:

Got workflow error
Traceback (most recent call last):
  File "c:\users\mi\downloads\cwl\venv\lib\site-packages\cwltool\main.py", line 251, in single_job_executor
    r.run(**kwargs)
  File "c:\users\mi\downloads\cwl\venv\lib\site-packages\cwltool\job.py", line 275, in run
    stageFiles(self.pathmapper, os.symlink, ignoreWritable=True)
AttributeError: 'module' object has no attribute 'symlink'
Workflow error, try again with --debug for more information:
'module' object has no attribute 'symlink'

@tetron
Copy link
Member

tetron commented Jun 23, 2017

Windows support is being worked on here: #419

tetron pushed a commit that referenced this issue Jul 23, 2017
@manu-chroma
Copy link
Member

cc: @kapilkd13

@kapilkd13
Copy link
Contributor

Hi @xamgore @am-cornelis We have made cwltool compatible with windows with the latest release. You can try it by updating your cwltool. Just to clarify, you won't need to use git bash, command prompt would work 😃 . Documentation on windows usage is currently in this PR #486

@manu-chroma
Copy link
Member

I'm closing this issue now -- @hmenager @am-cornelis.

@kapilkd13 has already provided all the relevant details.

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

No branches or pull requests

6 participants