Skip to content

Commit 57b6fae

Browse files
committed
minor fixes including spacing, grammatical correction and adding links
1 parent 446fbce commit 57b6fae

File tree

1 file changed

+65
-26
lines changed

1 file changed

+65
-26
lines changed

windowsdoc.md

Lines changed: 65 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,59 @@
11
## **Windows Compatible Cwltool**
2-
Windows Compatible cwltool means that now you can create and run your workflows using cwltool on Windows under a [Docker Container](https://docs.docker.com/docker-for-windows/).
3-
On Windows, all tools and workflows will be executed inside a linux based Docker Container. If a Docker Container is not provided explicitly (using [Docker Requirement](http://www.commonwl.org/v1.0/CommandLineTool.html#DockerRequirement)) by user, we use a minimal, posix compliant Alpine Docker image which has Bash pre installed as fallback (Default) [Docker Container](https://github.com/frol/docker-alpine-bash).
4-
You can also provide your own default Docker Container using `--default-container` argument.
5-
6-
### ***Windows Version Supported***:
2+
Windows Compatible cwltool means that now you can create and run your workflows
3+
using cwltool on Windows under a [Docker Container](https://docs.docker.com/docker-for-windows/).
4+
On Windows, all tools and workflows will be executed inside a linux based Docker
5+
Container. If a Docker Container is not explicitly provided (using [Docker Requirement](http://www.commonwl.org/v1.0/CommandLineTool.html#DockerRequirement))
6+
by user, then a minimal, posix compliant Alpine Docker image which has Bash pre
7+
installed as fallback (Default) [Docker Container](https://github.com/frol/docker-alpine-bash).
8+
You can also provide your own default Docker Container using the `--default-container` argument.
9+
10+
### ***Windows Versions Supported***:
711
* Windows 10 with native [Docker for Windows](https://docs.docker.com/docker-for-windows/).
812
* Windows 8.1 with [Docker ToolBox](https://docs.docker.com/toolbox/toolbox_install_windows/).
9-
* Windows 7 & 8 with Docker ToolBox may work (Not tested).
13+
* Windows 7 & 8 with Docker ToolBox may work (Not tested, please let us know!).
1014

1115
### ***Requirements***:
12-
* Python 2 or 3.
13-
* Docker
16+
* [Python 2 or 3](https://www.python.org/downloads/windows/).
17+
* [Docker](https://docs.docker.com/docker-for-windows/install/)
1418

1519
### ***Best Practises***:
16-
You should install [Node.js](https://nodejs.org/) on your system if your workflow contains [Javascript Expressions](http://www.commonwl.org/v1.0/CommandLineTool.html#InlineJavascriptRequirement).
20+
You should install [Node.js](https://nodejs.org/en/download/) on your system if
21+
your workflow contains [Javascript Expressions](http://www.commonwl.org/v1.0/CommandLineTool.html#InlineJavascriptRequirement).
1722

1823
### ***Installation***:
1924
**Using Pip**:
2025
You can install cwltool on Windows using pip
21-
`pip install cwltool`
26+
```
27+
pip install cwltool
28+
```
2229

2330
**Installing from source**:
31+
Instead of pip install, you can also install cwltool from source code.
2432
```
2533
git clone https://github.com/common-workflow-language/cwltool.git
2634
cd cwltool
2735
python setup.py develop
2836
```
29-
***Note:*** In order to test if cwltool has been successfully installed on your Windows system, run `cwltool` on your `cmd`. A screen showing help instructions should be there.
37+
***Note:*** In order to test if cwltool has been successfully installed on your
38+
Windows system, run `cwltool` on your `cmd`. A screen showing help instructions
39+
like shown below should be there.
40+
```
41+
CWL document required, no input file was provided
42+
usage: cwltool [-h] [--basedir BASEDIR] [--outdir OUTDIR] [--no-container]
43+
[--preserve-environment ENVVAR] [--preserve-entire-environment]
44+
[--rm-container | --leave-container]
45+
[--tmpdir-prefix TMPDIR_PREFIX]
46+
.......................
47+
```
48+
3049

3150
### ***Running Cwltool's Unit Tests***
3251
If you want to run cwltool's unit test, go to cwltool's repository on your system and run
33-
`python setup.py test`
52+
```
53+
python setup.py test
54+
```
3455

35-
### ***Running Conformance tests using cwltool***
56+
### ***Running Conformance tests using cwltool***
3657
```pip install cwltest
3758
git clone https://github.com/common-workflow-language/common-workflow-language.git
3859
cd common-workflow-language/v1.0
@@ -43,33 +64,51 @@ Here `-j` arg is used to run multiple tests in parallel.
4364
 
4465
 
4566

46-
> #### Installing cwltool on Windows is smooth but you may face some problems in setting up Docker. Some of the common issues and their solution are mentioned below.
67+
> #### Installing cwltool on Windows is smooth but you may face some problems in setting up Docker. Some of the common issues and their solution are mentioned below.
68+
69+
 
4770

4871
**Docker doesn't work on Windows, even outside cwltool.**
49-
Make into proper sentences: Make sure you followed all instructions carefully while installing Docker. Please check the Environment variables. If the problem persists, we recommend consulting the [online Docker Community](https://forums.docker.com/).
72+
Make sure you followed all instructions carefully while installing Docker. Please
73+
check the Environment variables. If the problem persists, we recommend consulting
74+
the [online Docker Community](https://forums.docker.com/).
5075

5176
**Your local drives are not being shared with Docker Container.**
52-
* ***On native Docker for Windows (supported by Windows 10):***
53-
On your tray, next to your clock, right-click on Docker, then click on Settings, there you'll find the shared rives: Here you can share your drives with Docker.
77+
* **On native Docker for Windows (supported by Windows 10):**
78+
On your tray, next to your clock, right-click on Docker, then click on Settings,
79+
there you'll find the shared rives: Here you can share your drives with Docker.
5480
If you encounter a problem with your firewall, please [refer this post](https://blog.olandese.nl/2017/05/03/solve-docker-for-windows-error-a-firewall-is-blocking-file-sharing-between-windows-and-the-containers/).
5581

56-
* ***On Docker Toolbox:***
57-
Docker Toolbox uses Virtualbox to create a linux base on which Docker machine runs. Your Docker Container will be created inside Virtualbox. To share drives
58-
in virtualbox, go to ****Virtualbox->settings->shared folders->Machine Folders****
82+
* **On Docker Toolbox:**
83+
Docker Toolbox uses Virtualbox to create a linux base on which Docker machine runs.
84+
Your Docker Container will be created inside Virtualbox. To share drives
85+
in virtualbox, go to **Virtualbox->settings->shared folders->Machine Folders**.
5986
Here Map the drives you want to share with your Docker Container.
60-
If you want to keep these settings permanent (Recommended!), You should mark the `make permanent` checkbox or else these settings will be erased every time your virtualbox closes.
87+
If you want to keep these settings permanent (Recommended!), You should mark the
88+
`make permanent` checkbox or else these settings will be erased every time your
89+
virtualbox closes.
6190

6291
**In a Docker Container with shared drives, not all files are shown on `ls`.**
63-
This means your drives/folders are not shared properly. Docker uses caching, which may result in not all files and folders being listed on ls.
92+
This means your drives/folders are not shared properly. Docker uses caching,
93+
which may result in not all files and folders being listed on ls.
6494
In order to solve this problem, make your drive mapping settings permanent (see previous question).
6595

6696
**Can't create/modify a file in Docker when using cwltool.**
67-
When folders are shared with Docker Container, they inherit their current file access permissions. If you can write to a folder (with your current privileges) on your local machine, you should be able to write to that folder inside Docker Container also (provided same user initiated Docker). In all it is a file permission issue.
97+
When folders are shared with Docker Container, they inherit their current file
98+
access permissions. If you can write to a folder (with your current privileges)
99+
on your local machine, you should be able to write to that folder inside Docker
100+
Container also (provided same user initiated Docker). In all it is a file permission issue.
101+
So to solve this issue, make sure that on your local system, you have write access for the folders
102+
in which Docker is trying to create/write file.
68103

69104
**Workflows with Javascript Expressions occasionally give Timeout errors.**
70-
To evaluate Javascript Expressions, cwltool looks for Nodejs on your system. In case Nodejs isn't installed, JS expressions are executed in a Docker Container.
71-
In order to avoid waiting forever in case error occurs, cwltool times out js expression evaluation after a timeout period (by default 20 seconds). You can provide a custom timeout period using `--eval-timeout` argument.
72-
So if you face this error, the best option is to install Nodejs on your local system. If you can't then use the `--eval-timeout` argument and set a higher timeout value.
105+
To evaluate Javascript Expressions, cwltool looks for Nodejs on your system.
106+
In case Nodejs isn't installed, JS expressions are executed in a Docker Container.
107+
In order to avoid waiting forever in case error occurs, cwltool times out js
108+
expression evaluation after a timeout period (by default 20 seconds). You can
109+
provide a custom timeout period using `--eval-timeout` argument.
110+
So if you face this error, the best option is to install Nodejs on your local
111+
system. If you can't then use the `--eval-timeout` argument and set a higher timeout value.
73112

74113
> #### If you still face some issues setting up and using Docker on Windows, please consult the online Docker Community. If the problem is specific to cwltool, create an [issue on cwltool](https://github.com/common-workflow-language/cwltool/issues).
75114

0 commit comments

Comments
 (0)