From a8ebb5604923f0f2471f5a8099f40719364fea70 Mon Sep 17 00:00:00 2001 From: Ubuntu Date: Wed, 23 Aug 2017 23:25:51 +0000 Subject: [PATCH 1/2] force download so download doesn't fail on previously downloaded file force download so download doesn't fail on previously downloaded file In some cases the download client will download more than one file even when only one file uuid is specified. We have seen this when requesting download of a VCF file and the client also downloads the VCF index file even though we passed the file uuid for only the VDF (non index) file --- DockstoreRunner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DockstoreRunner.py b/DockstoreRunner.py index 64324d1..a70972b 100644 --- a/DockstoreRunner.py +++ b/DockstoreRunner.py @@ -330,7 +330,7 @@ def download_and_transform_json(self, json_encoded): #create list of individual command 'words' for input to run commmand function self.run_command(cmd, self.MAX_ATTEMPTS, self.DELAY_IN_SECONDS) - cmd = "icgc-storage-client download --output-dir {} --object-id {} --output-layout bundle".format(self.tmp_dir, file_uuid) + cmd = "icgc-storage-client download --output-dir {} --object-id {} --output-layout bundle --force".format(self.tmp_dir, file_uuid) #create list of individual command 'words' for input to run commmand function self.run_command(cmd, self.MAX_ATTEMPTS, self.DELAY_IN_SECONDS) From 7daa598a1dbcdc86505203ce3fc400c21cbfb9b6 Mon Sep 17 00:00:00 2001 From: Walt Shands Date: Fri, 25 Aug 2017 21:37:49 +0000 Subject: [PATCH 2/2] set versions for python packages set versions for python packages to get around bug where cwltool validation of JSON input file fails on boolean value in dictionary with no spaces around it. E.g. disable-cutadapt:true causes a syntax error from cwltool: Syntax error while parsing a flow mapping$ 57 in "file:///datastore/./datastore/launcher-90d02d43-5f9d-47b9- bfd9-f80a9a34af17/workflow_params.json", line 1, column 1$ 58 expected ',' or '}', but got '' --- Dockerfile | 7 ++++--- requirements.txt | 30 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 requirements.txt diff --git a/Dockerfile b/Dockerfile index 28df9d9..56724e2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,16 +20,17 @@ RUN apt-get update && apt-get install --yes \ libxml2-dev \ libxslt-dev \ lib32z1-dev \ - python-setuptools \ build-essential RUN pip install --upgrade pip -RUN pip install jsonschema jsonmerge openpyxl sets json-spec elasticsearch semver + +COPY requirements.txt . +RUN pip install -r requirements.txt #install cwltool in the container #use the version required by dockstore RUN pip install setuptools==28.8.0 -RUN pip install cwl-runner cwltool==1.0.20170217172322 schema-salad==2.2.20170222151604 avro==1.8.1 +RUN pip install cwl-runner==1.0 cwltool==1.0.20170217172322 schema-salad==2.2.20170222151604 avro==1.8.1 RUN pip install functools32==3.2.3.post2 #Patch the cwltool code that sets up the docker run command line diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..e16fad0 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,30 @@ +CacheControl==0.11.7 +definitions==0.2.0 +elasticsearch==5.4.0 +et-xmlfile==1.0.1 +isodate==0.5.4 +jdcal==1.3 +json-spec==0.10.1 +jsonmerge==1.3.0 +jsonschema==2.6.0 +lockfile==0.12.2 +lxml==3.7.3 +mistune==0.7.4 +nltk==3.2.4 +numpy==1.12.1 +openpyxl==2.4.7 +pathlib==1.0.1 +pyparsing==2.2.0 +PyYAML==3.12 +rdflib==4.2.2 +rdflib-jsonld==0.4.0 +requests==2.14.2 +ruamel.ordereddict==0.4.9 +ruamel.yaml==0.14.12 +semver==2.7.6 +sets==0.3.2 +shellescape==3.4.1 +six==1.10.0 +typing==3.5.3.0 +urllib3==1.21.1 +