Skip to content

Commit

Permalink
New build files
Browse files Browse the repository at this point in the history
  • Loading branch information
czyszCTDS committed Jul 10, 2023
1 parent c98838d commit 952d830
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 0 deletions.
3 changes: 3 additions & 0 deletions gatk4-mutect2-calling-cwl/dockers.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"docker_repository": "docker.osdc.io/ncigdc"
}
50 changes: 50 additions & 0 deletions gatk4-mutect2-calling-cwl/justfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
ENTRY_CWL := "gpas_gatk4.2.4.1_mutect2_workflow.cwl"

# Pack and apply Jinja templating. Creates cwl.json file
# Should be runnable in built docker container
pack:
#!/bin/sh
if [ ! -f cwl.json ]; then
just _validate_entry
just _cwltool-pack > tmp.json
just _jinja tmp.json > cwl.json
rm tmp.json
fi
just _print-cwl

# Ensures CWL entrypoint script exists
_validate_entry:
#!/bin/sh
if [ ! -f {{ENTRY_CWL}} ]; then
echo "No entry CWL file found!"
echo {{ENTRY_CWL}}
exit 1;
fi

# Prints cwl.json if exists
_print-cwl:
@cat cwl.json

# Packs CWL workflow into single json file
_cwltool-pack: _validate_entry
python3 -m cwltool --pack {{ENTRY_CWL}}

# Apply template to JSON from dockers.json, errors on missing keys
_jinja JSON:
jinja -u 'strict' -d dockers.json {{JSON}}

# Validates CWL workflow
validate: _validate_entry
python3 -m cwltool --validate {{ENTRY_CWL}}

# Formats and prints all Dockers used in workflow
get-dockers:
just pack | grep dockerPull | cut -f2- -d ":" | sort | uniq | sed "s/\"//g"

# Prints all dockerPull declarations in unformatted workflow
get-dockers-template:
just _cwltool-pack | grep dockerPull | cut -f2- -d ":" | sort | uniq | sed "s/\"//g"

# Print template input file for workflow
inputs:
python3 -m cwltool --make-template {{ENTRY_CWL}}

0 comments on commit 952d830

Please sign in to comment.