Skip to content

Commit b6bd26f

Browse files
committed
Merge branch 'release/3.3.0'
2 parents 7a563da + d558e81 commit b6bd26f

File tree

17 files changed

+154
-124
lines changed

17 files changed

+154
-124
lines changed

.circleci/config.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
version: 2.1
2+
jobs:
3+
build-test-push-job:
4+
docker:
5+
- image: circleci/buildpack-deps:stretch
6+
environment:
7+
IMAGE_NAME: quay.io/wtsicgp/dockstore-cgpmap
8+
steps:
9+
- checkout
10+
- setup_remote_docker
11+
- run:
12+
name: Build Docker image
13+
command: |
14+
set -e
15+
echo "Building Docker image"
16+
docker build -t test .
17+
- run:
18+
name: Validate CWL files
19+
command: |
20+
set -e
21+
echo "Validating CWL files"
22+
sudo apt-get -y install python3-pip
23+
pip3 install cwltool
24+
cwltool --validate Dockstore.cwl
25+
cwltool --validate cwls/cgpmap-bamBaiOut.cwl
26+
cwltool --validate cwls/cgpmap-bamCsiOut.cwl
27+
cwltool --validate cwls/cgpmap-cramOut.cwl
28+
- run:
29+
name: Verify inherited programs
30+
command: |
31+
set -e
32+
echo 'Verifying programs inherited from cgpbigwig'
33+
docker run --rm -t test bwjoin --version
34+
echo 'Verifying programs inherited from pcap-core'
35+
docker run --rm -t test bwa_mem.pl -version
36+
docker run --rm -t test bammarkduplicates2 --version
37+
docker run --rm -t test samtools --version
38+
docker run --rm -t test bash -c 'bwa 2>&1 | grep Version'
39+
- run:
40+
name: Verify programs
41+
command: |
42+
set -e
43+
echo 'Verify programs from dockstore-cgpmap'
44+
docker run --rm -t test ds-cgpmap.pl -h
45+
- run:
46+
name: Push image to quay.io
47+
command: |
48+
set -e
49+
BRANCH_OR_TAG="${CIRCLE_TAG:-$CIRCLE_BRANCH}"
50+
if [ "$CIRCLE_TAG" = "$BRANCH_OR_TAG" ]; then
51+
echo 'Pushing image'
52+
echo "$DOCKERHUB_PASSWORD" | docker login -u "$DOCKERHUB_USER" --password-stdin
53+
echo "$QUAYIO_PASSWORD" | docker login -u "$QUAYIO_USER" --password-stdin quay.io
54+
CLEAN_BRANCH=$(echo $BRANCH_OR_TAG | tr / -)
55+
docker tag test ${IMAGE_NAME}:${CLEAN_BRANCH}
56+
docker push ${IMAGE_NAME}:${CLEAN_BRANCH}
57+
else
58+
echo "I am not a tag so not pushing image"
59+
fi
60+
61+
workflows:
62+
version: 2.1
63+
build-test-push-workflow:
64+
jobs:
65+
- build-test-push-job:
66+
context:
67+
- dockerhub-casmservice
68+
- quayio-casmservice
69+
filters:
70+
tags:
71+
only: /.+/

.travis.yml

Lines changed: 0 additions & 33 deletions
This file was deleted.

CHANGES.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# CHANGES
22

3+
## 3.3.0
4+
5+
* Update PCAP-core to 5.7.0, which includes bwakit post processing
6+
37
## 3.2.0
48

59
* Update PCAP-core to 5.4.0, new ubuntu htslib/samtools 1.11.

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
FROM quay.io/wtsicgp/pcap-core:5.4.0
1+
FROM quay.io/wtsicgp/pcap-core:5.7.0
22

33
LABEL vendor="Cancer, Ageing and Somatic Mutation, Wellcome Trust Sanger Institute"
44
LABEL maintainer="[email protected]"
55
LABEL uk.ac.sanger.cgp.description="PCAP-core for dockstore.org"
6-
LABEL uk.ac.sanger.cgp.version="3.2.0"
6+
LABEL uk.ac.sanger.cgp.version="3.3.0"
77

88
USER root
99

README.md

Lines changed: 27 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,18 @@ packaged specifically for use with the [Dockstore.org](https://dockstore.org/) f
77

88
[![Quay Badge][quay-status]][quay-repo]
99

10-
| Master | Develop |
11-
| --------------------------------------------- | ----------------------------------------------- |
12-
| [![Master Badge][travis-master]][travis-base] | [![Develop Badge][travis-develop]][travis-base] |
10+
| Master | Develop |
11+
| --- | --- |
12+
| [![Master Badge][circleci-master-badge]][circleci-master] | [![Develop Badge][circleci-develop-badge]][circleci-develop] |
1313

1414
* [Supported input formats](#supported-input-formats)
1515
* [Options for customisation:](#options-for-customisation)
1616
* [Usable Cores](#usable-cores)
17-
* [Other uses](#other-uses)
18-
* [Native docker](#native-docker)
19-
* [Singularity](#singularity)
20-
* [Verifying your deployment](#verifying-your-deployment)
21-
* [Development environment](#development-environment)
22-
* [Release process](#release-process)
17+
* [Run instructions](#run-instructions)
18+
* [Development](#development)
19+
* [Verifying your deployment](#verifying-your-deployment)
20+
* [Development environment](#development-environment)
21+
* [Release process](#release-process)
2322
* [LICENCE](#licence)
2423

2524
## Supported input formats
@@ -31,73 +30,23 @@ packaged specifically for use with the [Dockstore.org](https://dockstore.org/) f
3130

3231
## Options for customisation:
3332

34-
* BWA specific mapping parameters (defaults are based on attempts at a global standard).
35-
* Optionally output CRAM (scramble parameters can be modified)
33+
* BWA specific mapping parameters (defaults are based on attempts at a global standard)
34+
* Optionally output CRAM (see `seqslice` to for faster access, recommend 1000)
35+
* applied to `seqs_per_slice` option of htslib/samtools.
36+
* Optionally run with BWA-MEM2
37+
* Optionally run with bwa-kit post-processing (for calling on alternative contigs)
3638

37-
## Usable Cores
39+
## Run instructions
3840

39-
When running outside of a docker container you can set the number of CPUs via:
41+
The full documentation covering input files, optional parameters, and methods of running dockstore-cgpmap can be found in the [github wiki][github-wiki].
4042

41-
* `export CPU=N`
42-
* `-threads|-t` option of `ds-cgpmap.pl`
43+
## Development
4344

44-
If not set detects available cores on system.
45+
### Verifying your deployment
4546

46-
## Other uses
47+
The `examples/` tree contains test json files populated with data that can be used to verify the tool. More details on running Dockstore locally for testing purposes can be found in the [github wiki][github-wiki].
4748

48-
### Native docker
49-
50-
All of the tools installed as part of [PCAP-core][pcap-core] are available for direct use.
51-
52-
```
53-
export CGPMAP_VER=X.X.X
54-
docker pull quay.io/wtsicgp/dockstore-cgpmap:$CGPMAP_VER
55-
# interactive session
56-
docker --rm -ti [--volume ...] quay.io/wtsicgp/dockstore-cgpmap:$CGPMAP_VER bash
57-
```
58-
59-
### Singularity
60-
61-
The resulting docker container has been tested with Singularity. The command to exec is:
62-
63-
```
64-
ds-cgpmap.pl -h
65-
```
66-
67-
Expected use would be along the lines of:
68-
69-
```
70-
export CGPMAP_VER=X.X.X
71-
singularity pull docker://quay.io/wtsicgp/dockstore-cgpmap:$CGPMAP_VER
72-
73-
singularity exec\
74-
--workdir /.../workspace \
75-
--home /.../workspace:/home \
76-
--bind /.../ref/human:/var/spool/ref:ro \
77-
--bind /.../example_data/cgpmap/insilico_21:/var/spool/data:ro \
78-
dockstore-cgpmap-${CGPMAP_VER}.simg \
79-
ds-cgpmap.pl \
80-
-r /var/spool/ref/core_ref_GRCh37d5.tar.gz \
81-
-i /var/spool/ref/bwa_idx_GRCh37d5.tar.gz \
82-
-s SOMENAME \
83-
-t 6 \
84-
/var/spool/data/\*.bam
85-
```
86-
87-
For a system automatically attaching _all local mount points_ (not default singularity behaviour)
88-
you need not specify any `exec` params (workdir, home, bind) but you should specify the `-outdir`
89-
option for `ds-cgpmap.pl` to prevent data being written to your home directory.
90-
91-
By default results are written to the home directory of the container so ensure you bind
92-
a large volume and set the `-home` variable. As indicated above the location can be overridden
93-
via the options of `ds-cgpmap.pl`
94-
95-
## Verifying your deployment
96-
97-
The `examples/` tree contains test json files populated with data that can be used to verify the
98-
tool. More details can be found [here](examples/README.md).
99-
100-
## Development environment
49+
### Development environment
10150

10251
This project uses git pre-commit hooks. Please enable them to prevent inappropriate large files
10352
being included. Any pull request found not to have adhered to this will be rejected and the branch
@@ -109,14 +58,14 @@ Activate the hooks with
10958
git config core.hooksPath git-hooks
11059
```
11160

112-
## Release process
61+
### Release process
11362

11463
This project is maintained using HubFlow.
11564

11665
1. Make appropriate changes
11766
2. Bump version in `Dockerfile` and `cwls/mixins/requirements.yml`
11867
3. Push changes
119-
4. Check state on Travis
68+
4. Check state on CircleCi
12069
5. Generate the release (add notes to GitHub)
12170
6. Confirm that image has been built on [quay.io][quay-builds]
12271
7. Update the [dockstore][dockstore-cgpmap] entry, see [their docs][dockstore-get-started].
@@ -158,11 +107,13 @@ identical to a statement that reads ‘Copyright (c) 2005, 2006, 2007, 2008,
158107
[bwa-mem.pl]: https://github.com/cancerit/PCAP-core/blob/master/bin/bwa_mem.pl
159108
[cgpmap-expected]: ftp://ftp.sanger.ac.uk/pub/cancer/dockstore/expected
160109
[pcap-core]: https://github.com/cancerit/PCAP-core
110+
[github-wiki]: https://github.com/cancerit/dockstore-cgpmap/wiki
161111

162-
<!-- Travis -->
163-
[travis-base]: https://travis-ci.org/cancerit/dockstore-cgpmap
164-
[travis-master]: https://travis-ci.org/cancerit/dockstore-cgpmap.svg?branch=master
165-
[travis-develop]: https://travis-ci.org/cancerit/dockstore-cgpmap.svg?branch=develop
112+
<!-- CircleCi -->
113+
[circleci-master-badge]: https://circleci.com/gh/cancerit/dockstore-cgpmap/tree/master.svg?style=svg
114+
[circleci-master]: https://circleci.com/gh/cancerit/dockstore-cgpmap/tree/master
115+
[circleci-develop-badge]: https://circleci.com/gh/cancerit/dockstore-cgpmap/tree/develop.svg?style=svg
116+
[circleci-develop]: https://circleci.com/gh/cancerit/dockstore-cgpmap/tree/master
166117

167118
<!-- Gitter -->
168119
[gitter-svg]: https://badges.gitter.im/dockstore-cgp/Lobby.svg

cwls/cgpmap-bamBaiOut.cwl

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,28 +91,35 @@ inputs:
9191
prefix: -bwamem2
9292
position: 9
9393

94+
bwakit:
95+
type: boolean
96+
doc: "Use bwakit post-processing"
97+
inputBinding:
98+
prefix: -bwakit
99+
position: 10
100+
94101
nomarkdup:
95102
type: boolean
96103
doc: "Do not mark duplicates"
97104
inputBinding:
98105
prefix: -nomarkdup
99-
position: 10
106+
position: 11
100107

101108
dupmode:
102109
type: string?
103110
doc: "Duplicate mode as defined by 'samtools markdup' (t)emplate or (s)equence"
104111
default: 't'
105112
inputBinding:
106113
prefix: -dupmode
107-
position: 11
114+
position: 12
108115
separate: true
109116

110117
legacy:
111118
type: boolean
112119
doc: "Use legacy merge/dupmark from biobambam2 tools, slower, more memory"
113120
inputBinding:
114121
prefix: -legacy
115-
position: 12
122+
position: 13
116123

117124
seq_in:
118125
type:
@@ -121,7 +128,7 @@ inputs:
121128
items: File
122129
doc: "Can be BAM, CRAM, fastq (paired or interleaved), BAM/CRAM can be mixed together but not FASTQ."
123130
inputBinding:
124-
position: 13
131+
position: 14
125132

126133
outputs:
127134
out_bam:

cwls/cgpmap-bamCsiOut.cwl

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,28 +91,35 @@ inputs:
9191
prefix: -bwamem2
9292
position: 9
9393

94+
bwakit:
95+
type: boolean
96+
doc: "Use bwakit post-processing"
97+
inputBinding:
98+
prefix: -bwakit
99+
position: 10
100+
94101
nomarkdup:
95102
type: boolean
96103
doc: "Do not mark duplicates"
97104
inputBinding:
98105
prefix: -nomarkdup
99-
position: 10
106+
position: 11
100107

101108
dupmode:
102109
type: string?
103110
doc: "Duplicate mode as defined by 'samtools markdup' (t)emplate or (s)equence"
104111
default: 't'
105112
inputBinding:
106113
prefix: -dupmode
107-
position: 11
114+
position: 12
108115
separate: true
109116

110117
legacy:
111118
type: boolean
112119
doc: "Use legacy merge/dupmark from biobambam2 tools, slower, more memory"
113120
inputBinding:
114121
prefix: -legacy
115-
position: 12
122+
position: 13
116123

117124
seq_in:
118125
type:
@@ -121,7 +128,7 @@ inputs:
121128
items: File
122129
doc: "Can be BAM, CRAM, fastq (paired or interleaved), BAM/CRAM can be mixed together but not FASTQ."
123130
inputBinding:
124-
position: 13
131+
position: 14
125132

126133
outputs:
127134
out_bam:

0 commit comments

Comments
 (0)