Skip to content

Commit 987902a

Browse files
committed
correcting Markdown for better readability
1 parent 4831365 commit 987902a

File tree

1 file changed

+37
-35
lines changed

1 file changed

+37
-35
lines changed

windowsdoc.md

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,65 +1,67 @@
1-
**Windows Compatible Cwltool**
1+
## **Windows Compatible Cwltool**
22
Windows Compatible cwltool means that now you can create and run your workflows usinng cwltool on windows under a docker container.
33
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).
44
You can also provide your own Default Docker Container using `--default-container` argument.
55

6-
***Requirements***:
7-
python 2 or 3, Yes Now we support python 3 too.
8-
Docker
6+
### ***Requirements***:
7+
* python 2 or 3, Yes Now we support python 3 too.
8+
* Docker
99

10-
***Best Practises***:
10+
### ***Best Practises***:
1111
You should install nodejs on your system if your Workflow contains [Javascript Expressions](http://www.commonwl.org/v1.0/CommandLineTool.html#InlineJavascriptRequirement).
1212

13-
***Installation***:
14-
****Using Pip****:
15-
You can install cwltool on windows using pip
13+
### ***Installation***:
14+
**Using Pip**:
15+
You can install cwltool on windows using pip
1616
`pip install cwltool`
1717

18-
****Developing from source****:
19-
`git clone https://github.com/common-workflow-language/cwltool.git`
20-
`cd cwltool`
18+
**Developing from source**:
19+
`git clone https://github.com/common-workflow-language/cwltool.git`
20+
`cd cwltool`
2121
`python setup.py develop`
2222

2323
***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.
2424

25-
***Running Cwltool's Unittest***
26-
If you want to run cwltool's unit test, go to cwltool's repository on your system and run
25+
### ***Running Cwltool's Unittest***
26+
If you want to run cwltool's unit test, go to cwltool's repository on your system and run
2727
`python setup.py test`
2828

29-
***Running Conformance tests using cwltool***
30-
Download cwltest using `pip install cwltest`
31-
Clone `Common-Workflow-language` repository using `git clone https://github.com/common-workflow-language/common-workflow-language.git`
32-
change directory using `cd common-workflow-language/v1.0`
33-
Run Tests with `cwltest --test conformance_test_v1
34-
0.yaml -j 4 --tool cwltool`, here `-j` arg is used to run multiple tests in parallel.
29+
### ***Running Conformance tests using cwltool***
30+
Download cwltest using `pip install cwltest`
31+
Clone `Common-Workflow-language` repository using `git clone https://github.com/common-workflow-language/common-workflow-language.git`
32+
change directory using `cd common-workflow-language/v1.0`
33+
Run Tests with `cwltest --test conformance_test_v1.0.yaml -j 4 --tool cwltool`, here `-j` arg is used to run multiple tests in parallel.
3534

36-
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.
35+
 
36+
 
3737

38-
***Docker doesn't work on windows, even outside cwltool.***
38+
> ***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.***
39+
40+
**Docker doesn't work on windows, even outside cwltool.**
3941
Make sure you followed all instructions carefully while installing Docker. Especially setting up Environment variables. Consult online Docker community if problem persists.
4042

41-
***You Local Drives are not being Shared with Docker Container.***
42-
On native Docker for windows(supported by Windows 10):
43-
On your tray, next to your clock, right-click on Docker, then click on Settings, there you'll find the Shared Drives: Here you can share your Drives with Docker.
43+
**You Local Drives are not being Shared with Docker Container.**
44+
* ***On native Docker for windows(supported by Windows 10):***
45+
On your tray, next to your clock, right-click on Docker, then click on Settings, there you'll find the Shared Drives: Here you can share your Drives with Docker.
4446
If you encounter a Firewall issue, you can [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/).
4547

46-
On Docker Toolbox:
48+
* ***On Docker Toolbox:***
4749
Docker Toolbox uses Virtualbox to create linux base on which Docker machine runs. Your Docker Container will be created inside Virtualbox. To share you Drives
4850
in virtualbox, go to ****Virtualbox->settings->shared folders->Machine Folders****
49-
Here Map your Drives you want to share with your Docker Container.
51+
Here Map your Drives you want to share with your Docker Container.
5052
If you want to keep these settings permanent(Recommended!), You should mark `make permanent` checkbox or else these settings will be erased everytime your virtualbox closes.
5153

52-
***In a Docker Container with Shared Drives, few Files are shown on `ls` but most of them doesn't.***
53-
This means your Drives/Folders are not shared properly. When a path is mentioned in docker, it gets cached. So the few folder names that appear on `ls` is because of that.
54+
**In a Docker Container with Shared Drives, few Files are shown on `ls` but most of them doesn't.**
55+
This means your Drives/Folders are not shared properly. When a path is mentioned in docker, it gets cached. So the few folder names that appear on `ls` is because of that.
5456
In order to solve this problem follow the previous question.
5557

56-
***Can't create/modify a file in Docker when using cwltool.***
58+
**Can't create/modify a file in Docker when using cwltool.**
5759
When folders are shared with docker Container, they inherit their current file access permission. 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.
5860

59-
If you still face some issues setting up Docker on windows, please consult online Docker Community. If the Problem is specific to cwltool, create a issue on cwltool. We would definitely try to help you.
61+
**Workflows with Javascript Expressions occasionally gives Timeout error.**
62+
For evaluating `Javascript expressions` cwltool looks for Nodejs on your system, in case if it can't find a Nodejs installation it creates a node Docker container to execute JS expressions.
63+
In order to avoid waiting forever in case some error occurs, cwltool times out js expression evaluation after timeout period ends. You can provide a custom timeout period using `--eval-timeout` argument, by default its value is 20 sec.
64+
So if you face this error, 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.
65+
66+
> ***If you still face some issues setting up Docker on windows, please consult online Docker Community. If the Problem is specific to cwltool, create a issue on cwltool. We would definitely try to help you.***
6067
61-
***Workflows with Javascript Expressions occasionally gives Timeout error.***
62-
For evaluating `Javascript expressions` cwltool looks for Nodejs on your system, in case if it can't find a Nodejs installation it creates a node Docker container to execute JS expressions.
63-
In order to avoid waiting forever in case some error occurs, cwltool times out js expression evaluation after timeout period ends. You can provide a custom timeout period using `--eval-timeout` argument, by default its value is 20 sec.
64-
So if you face this error, 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.
65-

0 commit comments

Comments
 (0)