diff --git a/.dockstore.yml b/.dockstore.yml index 1313ce9..e059940 100644 --- a/.dockstore.yml +++ b/.dockstore.yml @@ -79,3 +79,8 @@ workflows: primaryDescriptorPath: /checkBaitSetName/checkBaitSetName.wdl testParameterFiles: - /checkBaitSetName/checkBaitSetName.inputs.json + - name: checkBaitSetName_dev + subclass: WDL + primaryDescriptorPath: /checkBaitSetName/checkBaitSetName.dev.wdl + testParameterFiles: + - /checkBaitSetName/checkBaitSetName.dev.inputs.json diff --git a/checkBaitSetName/checkBaitSetName.dev.inputs.json b/checkBaitSetName/checkBaitSetName.dev.inputs.json new file mode 100644 index 0000000..e53e7fe --- /dev/null +++ b/checkBaitSetName/checkBaitSetName.dev.inputs.json @@ -0,0 +1,6 @@ +{ + "checkBaitSetName.compareBaitSetName.target_intervals": "File", + "checkBaitSetName.compareBaitSetName.bait_intervals": "File? (optional)", + "checkBaitSetName.compareBaitSetName.fail_task": "Boolean", + "checkBaitSetName.compareBaitSetName.bait_set": "String" +} diff --git a/checkBaitSetName/checkBaitSetName.dev.wdl b/checkBaitSetName/checkBaitSetName.dev.wdl new file mode 100644 index 0000000..596acfd --- /dev/null +++ b/checkBaitSetName/checkBaitSetName.dev.wdl @@ -0,0 +1,54 @@ +workflow checkBaitSetName{ + call compareBaitSetName + + output { + String mismatch_message = compareBaitSetName.mismatch_message + Int? bait_mismatch = compareBaitSetName.bait_mismatch + } +} + +task compareBaitSetName { + String bait_set + Boolean fail_task + File target_intervals + File? bait_intervals + String target_intervals_name = basename(target_intervals) + String bait_intervals_name = if defined(bait_intervals) then basename(select_first([bait_intervals])) else bait_set + "." + + command <<< +python <>> + + output { + String mismatch_message = read_string(stdout()) + Int bait_mismatch = read_int("set_mismatch.txt") + } + + runtime { + docker: "python:3" + memory: "2 GB" + disks: "local-disk 10 HDD" + preemptible: 1 + maxRetries: 0 + failOnStderr: fail_task + } +} \ No newline at end of file