Build branch main with version main (798e361)

Build pipeline: viash-hub.demultiplex.main-plzkv

Source commit: 798e361afe

Source message: Add run information to output (#31)
This commit is contained in:
CI
2024-12-19 15:54:37 +00:00
parent 43010e8c57
commit ce3c3eb442
29 changed files with 387 additions and 153 deletions

View File

@@ -19,6 +19,7 @@
$publish_dir $publish_dir
└── 200624_A00834_0183_BHMTFYDRXX └── 200624_A00834_0183_BHMTFYDRXX
└── 20241217_051404_demultiplex_v1.2 └── 20241217_051404_demultiplex_v1.2
├── run_information.csv
├── fastq ├── fastq
│   ├── Sample1_S1_L001_R1_001.fastq.gz │   ├── Sample1_S1_L001_R1_001.fastq.gz
│   ├── Sample23_S3_L001_R1_001.fastq.gz │   ├── Sample23_S3_L001_R1_001.fastq.gz
@@ -48,6 +49,9 @@
- This logic can be avoided by providing the flag `--plain_output`. - This logic can be avoided by providing the flag `--plain_output`.
# Minor updates
* Added `output_run_information` argument that copies the run information file to the output (PR #31).
# demultiplex v0.3.2 # demultiplex v0.3.2

View File

@@ -48,6 +48,11 @@ argument_groups:
direction: output direction: output
required: false required: false
default: "$id/qc/multiqc_report.html" default: "$id/qc/multiqc_report.html"
- name: "--output_run_information"
type: file
direction: "output"
required: true
default: "$id/run_information.csv"
resources: resources:
- type: nextflow_script - type: nextflow_script
path: main.nf path: main.nf

View File

@@ -225,7 +225,8 @@ workflow run_wf {
//"_meta": "_meta", //"_meta": "_meta",
"output": "output_demultiplexer", "output": "output_demultiplexer",
"output_falco": "output_falco", "output_falco": "output_falco",
"output_multiqc": "output_multiqc" "output_multiqc": "output_multiqc",
"output_run_information": "run_information",
] ]
) )

View File

@@ -35,6 +35,26 @@ workflow test_illumina {
fastq_files.each{ fastq_files.each{
assert it.length() != 0: "Expected FASTQ file to not be empty" assert it.length() != 0: "Expected FASTQ file to not be empty"
} }
assert state.output_run_information.isFile(): "Expected output run information to be a file"
expected_run_information = """[Header]
|Date,6/24/2020
|Application,Illumina DRAGEN COVIDSeq Test Pipeline
|Instrument Type,NovaSeq6000
|Assay,Illumina COVIDSeq Test
|Index Adapters,IDT-ILMN DNA-RNA UDP Indexes
|Chemistry,Amplicon
|[Settings]
|AdapterRead1,CTGTCTCTTATACACATCT
|[Data]
|Lane,Sample_ID,Sample_Type,Index_ID,Index,Index2
|1,Sample1,PatientSample,UDP0001,GAACTGAGCG,TCGTGGAGCG
|1,SampleA,PatientSample,UDP0002,AGGTCAGATA,CTACAAGATA
|1,Sample23,PatientSample,UDP0003,CGTCTCATAT,TATAGTAGCT
|1,sampletest,PatientSample,UDP0004,ATTCCATAAG,TGCCTGGTGG
|""".stripMargin()
assert state.output_run_information.text.replaceAll("\r\n", "\n") == expected_run_information
} }
} }

View File

@@ -1,30 +1,26 @@
#!/bin/bash #!/bin/bash
echo "Publishing $par_input -> $par_output" set -eo pipefail
echo "Publishing $par_input_falco -> $par_output_falco"
echo "Publishing $par_input_multiqc -> $par_output_multiqc"
echo declare -A input_output_mapping=(["par_input"]="par_output"
echo "Creating directory if it does not exist:" ["par_input_falco"]="par_output_falco"
mkdir -p $(dirname "$par_output") && echo "Containing directory $par_output created" ["par_input_multiqc"]="par_output_multiqc"
mkdir -p $(dirname "$par_output_falco") && echo "Containing directory $par_output_falco created" ["par_input_run_information"]="par_output_run_information"
mkdir -p $(dirname "$par_output_multiqc") && echo "Containing directory $par_output_multiqc created" )
echo for input_argument_name in "${!input_output_mapping[@]}"
echo "Copying files..." do
cp -rL "$par_input" "$par_output" input_location="${!input_argument_name}"
cp -rL "$par_input_falco" "$par_output_falco" output_argument_name="${input_output_mapping[$input_argument_name]}"
cp -rL "$par_input_multiqc" "$par_output_multiqc" output_location="${!output_argument_name}"
echo "Publishing $input_location -> $output_location"
echo echo "Creating directory if it does not exist."
echo "Output files:" mkdir -p $(dirname "$output_location") && echo "Containing directory $output_location created"
echo "par_output:"
ls "$par_output"
echo echo "Copying files..."
echo "par_output_falco:" cp -rL "$input_location" "$output_location"
ls "$par_output_falco"
echo echo "Output files for $output_location:"
echo "par_output_multiqc:" ls "$output_location"
ls "$par_output_multiqc" done

View File

@@ -13,7 +13,11 @@ argument_groups:
type: file type: file
required: true required: true
- name: "--input_multiqc" - name: "--input_multiqc"
description: Directory to write falco output to description: Location where to write the MultiQC report to.
type: file
required: true
- name: "--input_run_information"
description: "Location where to write the run information to."
type: file type: file
required: true required: true
- name: Output arguments - name: Output arguments
@@ -30,6 +34,10 @@ argument_groups:
type: file type: file
direction: output direction: output
default: "qc/multiqc_report.html" default: "qc/multiqc_report.html"
- name: --output_run_information
type: file
direction: output
default: run_information.csv
resources: resources:
- type: bash_script - type: bash_script

View File

@@ -19,14 +19,20 @@ workflow run_wf {
] ]
} }
| demultiplex.run( | demultiplex.run(
fromState: [ fromState: { id, state ->
"input": "input", def state_to_pass = [
"run_information": "run_information", "input": state.input,
"demultiplexer": "demultiplexer", "run_information": state.run_information,
"output": "fastq", "demultiplexer": state.demultiplexer,
"output_falco": "qc/fastqc", "output": "fastq",
"output_multiqc": "qc/multiqc_report.html" "output_falco": "qc/fastqc",
], "output_multiqc": "qc/multiqc_report.html",
]
if (state.run_information) {
state_to_pass += ["output_run_information": state.run_information.getName()]
}
state_to_pass
},
toState: { id, result, state -> toState: { id, result, state ->
state + result state + result
}, },
@@ -40,6 +46,7 @@ workflow run_wf {
def fastq_output_1 = (id2 == "run") ? state.fastq_output : "${id2}/" + state.fastq_output def fastq_output_1 = (id2 == "run") ? state.fastq_output : "${id2}/" + state.fastq_output
def falco_output_1 = (id2 == "run") ? state.falco_output : "${id2}/" + state.falco_output def falco_output_1 = (id2 == "run") ? state.falco_output : "${id2}/" + state.falco_output
def multiqc_output_1 = (id2 == "run") ? state.multiqc_output : "${id2}/" + state.multiqc_output def multiqc_output_1 = (id2 == "run") ? state.multiqc_output : "${id2}/" + state.multiqc_output
def run_information_output_1 = (id2 == "run") ? "${state.output_run_information.getName()}" : "${id2}/${state.output_run_information.getName()}"
if (id2 == "run") { if (id2 == "run") {
println("Publising to ${params.publish_dir}") println("Publising to ${params.publish_dir}")
@@ -51,9 +58,11 @@ workflow run_wf {
input: state.output, input: state.output,
input_falco: state.output_falco, input_falco: state.output_falco,
input_multiqc: state.output_multiqc, input_multiqc: state.output_multiqc,
input_run_information: state.output_run_information,
output: fastq_output_1, output: fastq_output_1,
output_falco: falco_output_1, output_falco: falco_output_1,
output_multiqc: multiqc_output_1 output_multiqc: multiqc_output_1,
output_run_information: run_information_output_1,
] ]
}, },
toState: { id, result, state -> [:] }, toState: { id, result, state -> [:] },

View File

@@ -141,9 +141,9 @@ build_info:
output: "target/executable/io/interop_summary_to_csv" output: "target/executable/io/interop_summary_to_csv"
executable: "target/executable/io/interop_summary_to_csv/interop_summary_to_csv" executable: "target/executable/io/interop_summary_to_csv/interop_summary_to_csv"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -470,9 +470,9 @@ tar -C /tmp/ --no-same-owner --no-same-permissions -xvf /tmp/interop.tar.gz && \
mv /tmp/interop-1.3.1-Linux-GNU/bin/index-summary /tmp/interop-1.3.1-Linux-GNU/bin/summary /usr/local/bin/ mv /tmp/interop-1.3.1-Linux-GNU/bin/index-summary /tmp/interop-1.3.1-Linux-GNU/bin/summary /usr/local/bin/
LABEL org.opencontainers.image.description="Companion container for running component io interop_summary_to_csv" LABEL org.opencontainers.image.description="Companion container for running component io interop_summary_to_csv"
LABEL org.opencontainers.image.created="2024-12-18T15:00:53Z" LABEL org.opencontainers.image.created="2024-12-19T15:39:33Z"
LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex" LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex"
LABEL org.opencontainers.image.revision="8d3c2888d6df6688763d303dba03ce53d339fb0f" LABEL org.opencontainers.image.revision="798e361afeea8dbb84dc23ef38e4fbc3883463e7"
LABEL org.opencontainers.image.version="main" LABEL org.opencontainers.image.version="main"
VIASHDOCKER VIASHDOCKER

View File

@@ -26,7 +26,17 @@ argument_groups:
multiple_sep: ";" multiple_sep: ";"
- type: "file" - type: "file"
name: "--input_multiqc" name: "--input_multiqc"
description: "Directory to write falco output to" description: "Location where to write the MultiQC report to."
info: null
must_exist: true
create_parent: true
required: true
direction: "input"
multiple: false
multiple_sep: ";"
- type: "file"
name: "--input_run_information"
description: "Location where to write the run information to."
info: null info: null
must_exist: true must_exist: true
create_parent: true create_parent: true
@@ -69,6 +79,17 @@ argument_groups:
direction: "output" direction: "output"
multiple: false multiple: false
multiple_sep: ";" multiple_sep: ";"
- type: "file"
name: "--output_run_information"
info: null
default:
- "run_information.csv"
must_exist: true
create_parent: true
required: false
direction: "output"
multiple: false
multiple_sep: ";"
resources: resources:
- type: "bash_script" - type: "bash_script"
path: "code.sh" path: "code.sh"
@@ -170,9 +191,9 @@ build_info:
output: "target/executable/io/publish" output: "target/executable/io/publish"
executable: "target/executable/io/publish/publish" executable: "target/executable/io/publish/publish"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -186,7 +186,11 @@ function ViashHelp {
echo "" echo ""
echo " --input_multiqc" echo " --input_multiqc"
echo " type: file, required parameter, file must exist" echo " type: file, required parameter, file must exist"
echo " Directory to write falco output to" echo " Location where to write the MultiQC report to."
echo ""
echo " --input_run_information"
echo " type: file, required parameter, file must exist"
echo " Location where to write the run information to."
echo "" echo ""
echo "Output arguments:" echo "Output arguments:"
echo " --output" echo " --output"
@@ -200,6 +204,10 @@ function ViashHelp {
echo " --output_multiqc" echo " --output_multiqc"
echo " type: file, output, file must exist" echo " type: file, output, file must exist"
echo " default: qc/multiqc_report.html" echo " default: qc/multiqc_report.html"
echo ""
echo " --output_run_information"
echo " type: file, output, file must exist"
echo " default: run_information.csv"
} }
# initialise variables # initialise variables
@@ -482,9 +490,9 @@ RUN apt-get update && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
LABEL org.opencontainers.image.description="Companion container for running component io publish" LABEL org.opencontainers.image.description="Companion container for running component io publish"
LABEL org.opencontainers.image.created="2024-12-18T15:00:54Z" LABEL org.opencontainers.image.created="2024-12-19T15:39:33Z"
LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex" LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex"
LABEL org.opencontainers.image.revision="8d3c2888d6df6688763d303dba03ce53d339fb0f" LABEL org.opencontainers.image.revision="798e361afeea8dbb84dc23ef38e4fbc3883463e7"
LABEL org.opencontainers.image.version="main" LABEL org.opencontainers.image.version="main"
VIASHDOCKER VIASHDOCKER
@@ -657,6 +665,17 @@ while [[ $# -gt 0 ]]; do
VIASH_PAR_INPUT_MULTIQC=$(ViashRemoveFlags "$1") VIASH_PAR_INPUT_MULTIQC=$(ViashRemoveFlags "$1")
shift 1 shift 1
;; ;;
--input_run_information)
[ -n "$VIASH_PAR_INPUT_RUN_INFORMATION" ] && ViashError Bad arguments for option \'--input_run_information\': \'$VIASH_PAR_INPUT_RUN_INFORMATION\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1
VIASH_PAR_INPUT_RUN_INFORMATION="$2"
[ $# -lt 2 ] && ViashError Not enough arguments passed to --input_run_information. Use "--help" to get more information on the parameters. && exit 1
shift 2
;;
--input_run_information=*)
[ -n "$VIASH_PAR_INPUT_RUN_INFORMATION" ] && ViashError Bad arguments for option \'--input_run_information=*\': \'$VIASH_PAR_INPUT_RUN_INFORMATION\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1
VIASH_PAR_INPUT_RUN_INFORMATION=$(ViashRemoveFlags "$1")
shift 1
;;
--output) --output)
[ -n "$VIASH_PAR_OUTPUT" ] && ViashError Bad arguments for option \'--output\': \'$VIASH_PAR_OUTPUT\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1 [ -n "$VIASH_PAR_OUTPUT" ] && ViashError Bad arguments for option \'--output\': \'$VIASH_PAR_OUTPUT\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1
VIASH_PAR_OUTPUT="$2" VIASH_PAR_OUTPUT="$2"
@@ -690,6 +709,17 @@ while [[ $# -gt 0 ]]; do
VIASH_PAR_OUTPUT_MULTIQC=$(ViashRemoveFlags "$1") VIASH_PAR_OUTPUT_MULTIQC=$(ViashRemoveFlags "$1")
shift 1 shift 1
;; ;;
--output_run_information)
[ -n "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ] && ViashError Bad arguments for option \'--output_run_information\': \'$VIASH_PAR_OUTPUT_RUN_INFORMATION\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1
VIASH_PAR_OUTPUT_RUN_INFORMATION="$2"
[ $# -lt 2 ] && ViashError Not enough arguments passed to --output_run_information. Use "--help" to get more information on the parameters. && exit 1
shift 2
;;
--output_run_information=*)
[ -n "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ] && ViashError Bad arguments for option \'--output_run_information=*\': \'$VIASH_PAR_OUTPUT_RUN_INFORMATION\' \& \'$2\' - you should provide exactly one argument for this option. && exit 1
VIASH_PAR_OUTPUT_RUN_INFORMATION=$(ViashRemoveFlags "$1")
shift 1
;;
---engine) ---engine)
VIASH_ENGINE_ID="$2" VIASH_ENGINE_ID="$2"
shift 2 shift 2
@@ -874,6 +904,10 @@ if [ -z ${VIASH_PAR_INPUT_MULTIQC+x} ]; then
ViashError '--input_multiqc' is a required argument. Use "--help" to get more information on the parameters. ViashError '--input_multiqc' is a required argument. Use "--help" to get more information on the parameters.
exit 1 exit 1
fi fi
if [ -z ${VIASH_PAR_INPUT_RUN_INFORMATION+x} ]; then
ViashError '--input_run_information' is a required argument. Use "--help" to get more information on the parameters.
exit 1
fi
if [ -z ${VIASH_META_NAME+x} ]; then if [ -z ${VIASH_META_NAME+x} ]; then
ViashError 'name' is a required argument. Use "--help" to get more information on the parameters. ViashError 'name' is a required argument. Use "--help" to get more information on the parameters.
exit 1 exit 1
@@ -909,6 +943,9 @@ fi
if [ -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then if [ -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then
VIASH_PAR_OUTPUT_MULTIQC="qc/multiqc_report.html" VIASH_PAR_OUTPUT_MULTIQC="qc/multiqc_report.html"
fi fi
if [ -z ${VIASH_PAR_OUTPUT_RUN_INFORMATION+x} ]; then
VIASH_PAR_OUTPUT_RUN_INFORMATION="run_information.csv"
fi
# check whether required files exist # check whether required files exist
if [ ! -z "$VIASH_PAR_INPUT" ] && [ ! -e "$VIASH_PAR_INPUT" ]; then if [ ! -z "$VIASH_PAR_INPUT" ] && [ ! -e "$VIASH_PAR_INPUT" ]; then
@@ -923,6 +960,10 @@ if [ ! -z "$VIASH_PAR_INPUT_MULTIQC" ] && [ ! -e "$VIASH_PAR_INPUT_MULTIQC" ]; t
ViashError "Input file '$VIASH_PAR_INPUT_MULTIQC' does not exist." ViashError "Input file '$VIASH_PAR_INPUT_MULTIQC' does not exist."
exit 1 exit 1
fi fi
if [ ! -z "$VIASH_PAR_INPUT_RUN_INFORMATION" ] && [ ! -e "$VIASH_PAR_INPUT_RUN_INFORMATION" ]; then
ViashError "Input file '$VIASH_PAR_INPUT_RUN_INFORMATION' does not exist."
exit 1
fi
# check whether parameters values are of the right type # check whether parameters values are of the right type
if [[ -n "$VIASH_META_CPUS" ]]; then if [[ -n "$VIASH_META_CPUS" ]]; then
@@ -1008,6 +1049,9 @@ fi
if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ] && [ ! -d "$(dirname "$VIASH_PAR_OUTPUT_MULTIQC")" ]; then if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ] && [ ! -d "$(dirname "$VIASH_PAR_OUTPUT_MULTIQC")" ]; then
mkdir -p "$(dirname "$VIASH_PAR_OUTPUT_MULTIQC")" mkdir -p "$(dirname "$VIASH_PAR_OUTPUT_MULTIQC")"
fi fi
if [ ! -z "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ] && [ ! -d "$(dirname "$VIASH_PAR_OUTPUT_RUN_INFORMATION")" ]; then
mkdir -p "$(dirname "$VIASH_PAR_OUTPUT_RUN_INFORMATION")"
fi
if [ "$VIASH_ENGINE_ID" == "native" ] ; then if [ "$VIASH_ENGINE_ID" == "native" ] ; then
if [ "$VIASH_MODE" == "run" ]; then if [ "$VIASH_MODE" == "run" ]; then
@@ -1033,6 +1077,10 @@ if [ ! -z "$VIASH_PAR_INPUT_MULTIQC" ]; then
VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_INPUT_MULTIQC")" ) VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_INPUT_MULTIQC")" )
VIASH_PAR_INPUT_MULTIQC=$(ViashDockerAutodetectMount "$VIASH_PAR_INPUT_MULTIQC") VIASH_PAR_INPUT_MULTIQC=$(ViashDockerAutodetectMount "$VIASH_PAR_INPUT_MULTIQC")
fi fi
if [ ! -z "$VIASH_PAR_INPUT_RUN_INFORMATION" ]; then
VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_INPUT_RUN_INFORMATION")" )
VIASH_PAR_INPUT_RUN_INFORMATION=$(ViashDockerAutodetectMount "$VIASH_PAR_INPUT_RUN_INFORMATION")
fi
if [ ! -z "$VIASH_PAR_OUTPUT" ]; then if [ ! -z "$VIASH_PAR_OUTPUT" ]; then
VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_OUTPUT")" ) VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_OUTPUT")" )
VIASH_PAR_OUTPUT=$(ViashDockerAutodetectMount "$VIASH_PAR_OUTPUT") VIASH_PAR_OUTPUT=$(ViashDockerAutodetectMount "$VIASH_PAR_OUTPUT")
@@ -1048,6 +1096,11 @@ if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ]; then
VIASH_PAR_OUTPUT_MULTIQC=$(ViashDockerAutodetectMount "$VIASH_PAR_OUTPUT_MULTIQC") VIASH_PAR_OUTPUT_MULTIQC=$(ViashDockerAutodetectMount "$VIASH_PAR_OUTPUT_MULTIQC")
VIASH_CHOWN_VARS+=( "$VIASH_PAR_OUTPUT_MULTIQC" ) VIASH_CHOWN_VARS+=( "$VIASH_PAR_OUTPUT_MULTIQC" )
fi fi
if [ ! -z "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ]; then
VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_PAR_OUTPUT_RUN_INFORMATION")" )
VIASH_PAR_OUTPUT_RUN_INFORMATION=$(ViashDockerAutodetectMount "$VIASH_PAR_OUTPUT_RUN_INFORMATION")
VIASH_CHOWN_VARS+=( "$VIASH_PAR_OUTPUT_RUN_INFORMATION" )
fi
if [ ! -z "$VIASH_META_RESOURCES_DIR" ]; then if [ ! -z "$VIASH_META_RESOURCES_DIR" ]; then
VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_META_RESOURCES_DIR")" ) VIASH_DIRECTORY_MOUNTS+=( "$(ViashDockerAutodetectMountArg "$VIASH_META_RESOURCES_DIR")" )
VIASH_META_RESOURCES_DIR=$(ViashDockerAutodetectMount "$VIASH_META_RESOURCES_DIR") VIASH_META_RESOURCES_DIR=$(ViashDockerAutodetectMount "$VIASH_META_RESOURCES_DIR")
@@ -1120,9 +1173,11 @@ cat > "\$tempscript" << 'VIASHMAIN'
$( if [ ! -z ${VIASH_PAR_INPUT+x} ]; then echo "${VIASH_PAR_INPUT}" | sed "s#'#'\"'\"'#g;s#.*#par_input='&'#" ; else echo "# par_input="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT+x} ]; then echo "${VIASH_PAR_INPUT}" | sed "s#'#'\"'\"'#g;s#.*#par_input='&'#" ; else echo "# par_input="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_FALCO+x} ]; then echo "${VIASH_PAR_INPUT_FALCO}" | sed "s#'#'\"'\"'#g;s#.*#par_input_falco='&'#" ; else echo "# par_input_falco="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT_FALCO+x} ]; then echo "${VIASH_PAR_INPUT_FALCO}" | sed "s#'#'\"'\"'#g;s#.*#par_input_falco='&'#" ; else echo "# par_input_falco="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_INPUT_MULTIQC}" | sed "s#'#'\"'\"'#g;s#.*#par_input_multiqc='&'#" ; else echo "# par_input_multiqc="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_INPUT_MULTIQC}" | sed "s#'#'\"'\"'#g;s#.*#par_input_multiqc='&'#" ; else echo "# par_input_multiqc="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_RUN_INFORMATION+x} ]; then echo "${VIASH_PAR_INPUT_RUN_INFORMATION}" | sed "s#'#'\"'\"'#g;s#.*#par_input_run_information='&'#" ; else echo "# par_input_run_information="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT+x} ]; then echo "${VIASH_PAR_OUTPUT}" | sed "s#'#'\"'\"'#g;s#.*#par_output='&'#" ; else echo "# par_output="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT+x} ]; then echo "${VIASH_PAR_OUTPUT}" | sed "s#'#'\"'\"'#g;s#.*#par_output='&'#" ; else echo "# par_output="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_FALCO+x} ]; then echo "${VIASH_PAR_OUTPUT_FALCO}" | sed "s#'#'\"'\"'#g;s#.*#par_output_falco='&'#" ; else echo "# par_output_falco="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT_FALCO+x} ]; then echo "${VIASH_PAR_OUTPUT_FALCO}" | sed "s#'#'\"'\"'#g;s#.*#par_output_falco='&'#" ; else echo "# par_output_falco="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_OUTPUT_MULTIQC}" | sed "s#'#'\"'\"'#g;s#.*#par_output_multiqc='&'#" ; else echo "# par_output_multiqc="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_OUTPUT_MULTIQC}" | sed "s#'#'\"'\"'#g;s#.*#par_output_multiqc='&'#" ; else echo "# par_output_multiqc="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_RUN_INFORMATION+x} ]; then echo "${VIASH_PAR_OUTPUT_RUN_INFORMATION}" | sed "s#'#'\"'\"'#g;s#.*#par_output_run_information='&'#" ; else echo "# par_output_run_information="; fi )
$( if [ ! -z ${VIASH_META_NAME+x} ]; then echo "${VIASH_META_NAME}" | sed "s#'#'\"'\"'#g;s#.*#meta_name='&'#" ; else echo "# meta_name="; fi ) $( if [ ! -z ${VIASH_META_NAME+x} ]; then echo "${VIASH_META_NAME}" | sed "s#'#'\"'\"'#g;s#.*#meta_name='&'#" ; else echo "# meta_name="; fi )
$( if [ ! -z ${VIASH_META_FUNCTIONALITY_NAME+x} ]; then echo "${VIASH_META_FUNCTIONALITY_NAME}" | sed "s#'#'\"'\"'#g;s#.*#meta_functionality_name='&'#" ; else echo "# meta_functionality_name="; fi ) $( if [ ! -z ${VIASH_META_FUNCTIONALITY_NAME+x} ]; then echo "${VIASH_META_FUNCTIONALITY_NAME}" | sed "s#'#'\"'\"'#g;s#.*#meta_functionality_name='&'#" ; else echo "# meta_functionality_name="; fi )
$( if [ ! -z ${VIASH_META_RESOURCES_DIR+x} ]; then echo "${VIASH_META_RESOURCES_DIR}" | sed "s#'#'\"'\"'#g;s#.*#meta_resources_dir='&'#" ; else echo "# meta_resources_dir="; fi ) $( if [ ! -z ${VIASH_META_RESOURCES_DIR+x} ]; then echo "${VIASH_META_RESOURCES_DIR}" | sed "s#'#'\"'\"'#g;s#.*#meta_resources_dir='&'#" ; else echo "# meta_resources_dir="; fi )
@@ -1145,34 +1200,30 @@ $( if [ ! -z ${VIASH_META_MEMORY_PIB+x} ]; then echo "${VIASH_META_MEMORY_PIB}"
## VIASH END ## VIASH END
#!/bin/bash #!/bin/bash
echo "Publishing \$par_input -> \$par_output" set -eo pipefail
echo "Publishing \$par_input_falco -> \$par_output_falco"
echo "Publishing \$par_input_multiqc -> \$par_output_multiqc"
echo declare -A input_output_mapping=(["par_input"]="par_output"
echo "Creating directory if it does not exist:" ["par_input_falco"]="par_output_falco"
mkdir -p \$(dirname "\$par_output") && echo "Containing directory \$par_output created" ["par_input_multiqc"]="par_output_multiqc"
mkdir -p \$(dirname "\$par_output_falco") && echo "Containing directory \$par_output_falco created" ["par_input_run_information"]="par_output_run_information"
mkdir -p \$(dirname "\$par_output_multiqc") && echo "Containing directory \$par_output_multiqc created" )
echo for input_argument_name in "\${!input_output_mapping[@]}"
echo "Copying files..." do
cp -rL "\$par_input" "\$par_output" input_location="\${!input_argument_name}"
cp -rL "\$par_input_falco" "\$par_output_falco" output_argument_name="\${input_output_mapping[\$input_argument_name]}"
cp -rL "\$par_input_multiqc" "\$par_output_multiqc" output_location="\${!output_argument_name}"
echo "Publishing \$input_location -> \$output_location"
echo echo "Creating directory if it does not exist."
echo "Output files:" mkdir -p \$(dirname "\$output_location") && echo "Containing directory \$output_location created"
echo "par_output:"
ls "\$par_output"
echo echo "Copying files..."
echo "par_output_falco:" cp -rL "\$input_location" "\$output_location"
ls "\$par_output_falco"
echo echo "Output files for \$output_location:"
echo "par_output_multiqc:" ls "\$output_location"
ls "\$par_output_multiqc" done
VIASHMAIN VIASHMAIN
bash "\$tempscript" & bash "\$tempscript" &
wait "\$!" wait "\$!"
@@ -1192,6 +1243,9 @@ if [[ "$VIASH_ENGINE_TYPE" == "docker" ]]; then
if [ ! -z "$VIASH_PAR_INPUT_MULTIQC" ]; then if [ ! -z "$VIASH_PAR_INPUT_MULTIQC" ]; then
VIASH_PAR_INPUT_MULTIQC=$(ViashDockerStripAutomount "$VIASH_PAR_INPUT_MULTIQC") VIASH_PAR_INPUT_MULTIQC=$(ViashDockerStripAutomount "$VIASH_PAR_INPUT_MULTIQC")
fi fi
if [ ! -z "$VIASH_PAR_INPUT_RUN_INFORMATION" ]; then
VIASH_PAR_INPUT_RUN_INFORMATION=$(ViashDockerStripAutomount "$VIASH_PAR_INPUT_RUN_INFORMATION")
fi
if [ ! -z "$VIASH_PAR_OUTPUT" ]; then if [ ! -z "$VIASH_PAR_OUTPUT" ]; then
VIASH_PAR_OUTPUT=$(ViashDockerStripAutomount "$VIASH_PAR_OUTPUT") VIASH_PAR_OUTPUT=$(ViashDockerStripAutomount "$VIASH_PAR_OUTPUT")
fi fi
@@ -1201,6 +1255,9 @@ if [[ "$VIASH_ENGINE_TYPE" == "docker" ]]; then
if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ]; then if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ]; then
VIASH_PAR_OUTPUT_MULTIQC=$(ViashDockerStripAutomount "$VIASH_PAR_OUTPUT_MULTIQC") VIASH_PAR_OUTPUT_MULTIQC=$(ViashDockerStripAutomount "$VIASH_PAR_OUTPUT_MULTIQC")
fi fi
if [ ! -z "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ]; then
VIASH_PAR_OUTPUT_RUN_INFORMATION=$(ViashDockerStripAutomount "$VIASH_PAR_OUTPUT_RUN_INFORMATION")
fi
if [ ! -z "$VIASH_META_RESOURCES_DIR" ]; then if [ ! -z "$VIASH_META_RESOURCES_DIR" ]; then
VIASH_META_RESOURCES_DIR=$(ViashDockerStripAutomount "$VIASH_META_RESOURCES_DIR") VIASH_META_RESOURCES_DIR=$(ViashDockerStripAutomount "$VIASH_META_RESOURCES_DIR")
fi fi
@@ -1229,6 +1286,10 @@ if [ ! -z "$VIASH_PAR_OUTPUT_MULTIQC" ] && [ ! -e "$VIASH_PAR_OUTPUT_MULTIQC" ];
ViashError "Output file '$VIASH_PAR_OUTPUT_MULTIQC' does not exist." ViashError "Output file '$VIASH_PAR_OUTPUT_MULTIQC' does not exist."
exit 1 exit 1
fi fi
if [ ! -z "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ] && [ ! -e "$VIASH_PAR_OUTPUT_RUN_INFORMATION" ]; then
ViashError "Output file '$VIASH_PAR_OUTPUT_RUN_INFORMATION' does not exist."
exit 1
fi
exit 0 exit 0

View File

@@ -148,9 +148,9 @@ build_info:
output: "target/executable/io/untar" output: "target/executable/io/untar"
executable: "target/executable/io/untar/untar" executable: "target/executable/io/untar/untar"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -476,9 +476,9 @@ RUN apt-get update && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
LABEL org.opencontainers.image.description="Companion container for running component io untar" LABEL org.opencontainers.image.description="Companion container for running component io untar"
LABEL org.opencontainers.image.created="2024-12-18T15:00:54Z" LABEL org.opencontainers.image.created="2024-12-19T15:39:34Z"
LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex" LABEL org.opencontainers.image.source="https://github.com/viash-hub/demultiplex"
LABEL org.opencontainers.image.revision="8d3c2888d6df6688763d303dba03ce53d339fb0f" LABEL org.opencontainers.image.revision="798e361afeea8dbb84dc23ef38e4fbc3883463e7"
LABEL org.opencontainers.image.version="main" LABEL org.opencontainers.image.version="main"
VIASHDOCKER VIASHDOCKER

View File

@@ -139,9 +139,9 @@ build_info:
output: "target/nextflow/dataflow/combine_samples" output: "target/nextflow/dataflow/combine_samples"
executable: "target/nextflow/dataflow/combine_samples/main.nf" executable: "target/nextflow/dataflow/combine_samples/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -2972,9 +2972,9 @@ meta = [
"engine" : "native|native", "engine" : "native|native",
"output" : "target/nextflow/dataflow/combine_samples", "output" : "target/nextflow/dataflow/combine_samples",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",

View File

@@ -133,9 +133,9 @@ build_info:
output: "target/nextflow/dataflow/gather_fastqs_and_validate" output: "target/nextflow/dataflow/gather_fastqs_and_validate"
executable: "target/nextflow/dataflow/gather_fastqs_and_validate/main.nf" executable: "target/nextflow/dataflow/gather_fastqs_and_validate/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -2965,9 +2965,9 @@ meta = [
"engine" : "native|native", "engine" : "native|native",
"output" : "target/nextflow/dataflow/gather_fastqs_and_validate", "output" : "target/nextflow/dataflow/gather_fastqs_and_validate",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",

View File

@@ -85,6 +85,17 @@ argument_groups:
direction: "output" direction: "output"
multiple: false multiple: false
multiple_sep: ";" multiple_sep: ";"
- type: "file"
name: "--output_run_information"
info: null
default:
- "$id/run_information.csv"
must_exist: true
create_parent: true
required: true
direction: "output"
multiple: false
multiple_sep: ";"
resources: resources:
- type: "nextflow_script" - type: "nextflow_script"
path: "main.nf" path: "main.nf"
@@ -220,9 +231,9 @@ build_info:
output: "target/nextflow/demultiplex" output: "target/nextflow/demultiplex"
executable: "target/nextflow/demultiplex/main.nf" executable: "target/nextflow/demultiplex/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
dependencies: dependencies:
- "target/nextflow/io/untar" - "target/nextflow/io/untar"
- "target/nextflow/dataflow/gather_fastqs_and_validate" - "target/nextflow/dataflow/gather_fastqs_and_validate"

View File

@@ -2900,6 +2900,19 @@ meta = [
"direction" : "output", "direction" : "output",
"multiple" : false, "multiple" : false,
"multiple_sep" : ";" "multiple_sep" : ";"
},
{
"type" : "file",
"name" : "--output_run_information",
"default" : [
"$id/run_information.csv"
],
"must_exist" : true,
"create_parent" : true,
"required" : true,
"direction" : "output",
"multiple" : false,
"multiple_sep" : ";"
} }
] ]
} }
@@ -3088,9 +3101,9 @@ meta = [
"engine" : "native|native", "engine" : "native|native",
"output" : "target/nextflow/demultiplex", "output" : "target/nextflow/demultiplex",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",
@@ -3369,7 +3382,8 @@ workflow run_wf {
//"_meta": "_meta", //"_meta": "_meta",
"output": "output_demultiplexer", "output": "output_demultiplexer",
"output_falco": "output_falco", "output_falco": "output_falco",
"output_multiqc": "output_multiqc" "output_multiqc": "output_multiqc",
"output_run_information": "run_information",
] ]
) )

View File

@@ -98,6 +98,17 @@
} }
,
"output_run_information": {
"type":
"string",
"description": "Type: `file`, required, default: `$id.$key.output_run_information.csv`. ",
"help_text": "Type: `file`, required, default: `$id.$key.output_run_information.csv`. "
,
"default":"$id.$key.output_run_information.csv"
}
} }
}, },

View File

@@ -141,9 +141,9 @@ build_info:
output: "target/nextflow/io/interop_summary_to_csv" output: "target/nextflow/io/interop_summary_to_csv"
executable: "target/nextflow/io/interop_summary_to_csv/main.nf" executable: "target/nextflow/io/interop_summary_to_csv/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -2977,9 +2977,9 @@ meta = [
"engine" : "docker|native", "engine" : "docker|native",
"output" : "target/nextflow/io/interop_summary_to_csv", "output" : "target/nextflow/io/interop_summary_to_csv",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",

View File

@@ -26,7 +26,17 @@ argument_groups:
multiple_sep: ";" multiple_sep: ";"
- type: "file" - type: "file"
name: "--input_multiqc" name: "--input_multiqc"
description: "Directory to write falco output to" description: "Location where to write the MultiQC report to."
info: null
must_exist: true
create_parent: true
required: true
direction: "input"
multiple: false
multiple_sep: ";"
- type: "file"
name: "--input_run_information"
description: "Location where to write the run information to."
info: null info: null
must_exist: true must_exist: true
create_parent: true create_parent: true
@@ -69,6 +79,17 @@ argument_groups:
direction: "output" direction: "output"
multiple: false multiple: false
multiple_sep: ";" multiple_sep: ";"
- type: "file"
name: "--output_run_information"
info: null
default:
- "run_information.csv"
must_exist: true
create_parent: true
required: false
direction: "output"
multiple: false
multiple_sep: ";"
resources: resources:
- type: "bash_script" - type: "bash_script"
path: "code.sh" path: "code.sh"
@@ -170,9 +191,9 @@ build_info:
output: "target/nextflow/io/publish" output: "target/nextflow/io/publish"
executable: "target/nextflow/io/publish/main.nf" executable: "target/nextflow/io/publish/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -2836,7 +2836,18 @@ meta = [
{ {
"type" : "file", "type" : "file",
"name" : "--input_multiqc", "name" : "--input_multiqc",
"description" : "Directory to write falco output to", "description" : "Location where to write the MultiQC report to.",
"must_exist" : true,
"create_parent" : true,
"required" : true,
"direction" : "input",
"multiple" : false,
"multiple_sep" : ";"
},
{
"type" : "file",
"name" : "--input_run_information",
"description" : "Location where to write the run information to.",
"must_exist" : true, "must_exist" : true,
"create_parent" : true, "create_parent" : true,
"required" : true, "required" : true,
@@ -2887,6 +2898,19 @@ meta = [
"direction" : "output", "direction" : "output",
"multiple" : false, "multiple" : false,
"multiple_sep" : ";" "multiple_sep" : ";"
},
{
"type" : "file",
"name" : "--output_run_information",
"default" : [
"run_information.csv"
],
"must_exist" : true,
"create_parent" : true,
"required" : false,
"direction" : "output",
"multiple" : false,
"multiple_sep" : ";"
} }
] ]
} }
@@ -3012,9 +3036,9 @@ meta = [
"engine" : "docker|native", "engine" : "docker|native",
"output" : "target/nextflow/io/publish", "output" : "target/nextflow/io/publish",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",
@@ -3067,9 +3091,11 @@ cat > "$tempscript" << VIASHMAIN
$( if [ ! -z ${VIASH_PAR_INPUT+x} ]; then echo "${VIASH_PAR_INPUT}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input='&'#" ; else echo "# par_input="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT+x} ]; then echo "${VIASH_PAR_INPUT}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input='&'#" ; else echo "# par_input="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_FALCO+x} ]; then echo "${VIASH_PAR_INPUT_FALCO}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input_falco='&'#" ; else echo "# par_input_falco="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT_FALCO+x} ]; then echo "${VIASH_PAR_INPUT_FALCO}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input_falco='&'#" ; else echo "# par_input_falco="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_INPUT_MULTIQC}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input_multiqc='&'#" ; else echo "# par_input_multiqc="; fi ) $( if [ ! -z ${VIASH_PAR_INPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_INPUT_MULTIQC}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input_multiqc='&'#" ; else echo "# par_input_multiqc="; fi )
$( if [ ! -z ${VIASH_PAR_INPUT_RUN_INFORMATION+x} ]; then echo "${VIASH_PAR_INPUT_RUN_INFORMATION}" | sed "s#'#'\\"'\\"'#g;s#.*#par_input_run_information='&'#" ; else echo "# par_input_run_information="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT+x} ]; then echo "${VIASH_PAR_OUTPUT}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output='&'#" ; else echo "# par_output="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT+x} ]; then echo "${VIASH_PAR_OUTPUT}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output='&'#" ; else echo "# par_output="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_FALCO+x} ]; then echo "${VIASH_PAR_OUTPUT_FALCO}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output_falco='&'#" ; else echo "# par_output_falco="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT_FALCO+x} ]; then echo "${VIASH_PAR_OUTPUT_FALCO}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output_falco='&'#" ; else echo "# par_output_falco="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_OUTPUT_MULTIQC}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output_multiqc='&'#" ; else echo "# par_output_multiqc="; fi ) $( if [ ! -z ${VIASH_PAR_OUTPUT_MULTIQC+x} ]; then echo "${VIASH_PAR_OUTPUT_MULTIQC}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output_multiqc='&'#" ; else echo "# par_output_multiqc="; fi )
$( if [ ! -z ${VIASH_PAR_OUTPUT_RUN_INFORMATION+x} ]; then echo "${VIASH_PAR_OUTPUT_RUN_INFORMATION}" | sed "s#'#'\\"'\\"'#g;s#.*#par_output_run_information='&'#" ; else echo "# par_output_run_information="; fi )
$( if [ ! -z ${VIASH_META_NAME+x} ]; then echo "${VIASH_META_NAME}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_name='&'#" ; else echo "# meta_name="; fi ) $( if [ ! -z ${VIASH_META_NAME+x} ]; then echo "${VIASH_META_NAME}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_name='&'#" ; else echo "# meta_name="; fi )
$( if [ ! -z ${VIASH_META_FUNCTIONALITY_NAME+x} ]; then echo "${VIASH_META_FUNCTIONALITY_NAME}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_functionality_name='&'#" ; else echo "# meta_functionality_name="; fi ) $( if [ ! -z ${VIASH_META_FUNCTIONALITY_NAME+x} ]; then echo "${VIASH_META_FUNCTIONALITY_NAME}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_functionality_name='&'#" ; else echo "# meta_functionality_name="; fi )
$( if [ ! -z ${VIASH_META_RESOURCES_DIR+x} ]; then echo "${VIASH_META_RESOURCES_DIR}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_resources_dir='&'#" ; else echo "# meta_resources_dir="; fi ) $( if [ ! -z ${VIASH_META_RESOURCES_DIR+x} ]; then echo "${VIASH_META_RESOURCES_DIR}" | sed "s#'#'\\"'\\"'#g;s#.*#meta_resources_dir='&'#" ; else echo "# meta_resources_dir="; fi )
@@ -3092,34 +3118,30 @@ $( if [ ! -z ${VIASH_META_MEMORY_PIB+x} ]; then echo "${VIASH_META_MEMORY_PIB}"
## VIASH END ## VIASH END
#!/bin/bash #!/bin/bash
echo "Publishing \\$par_input -> \\$par_output" set -eo pipefail
echo "Publishing \\$par_input_falco -> \\$par_output_falco"
echo "Publishing \\$par_input_multiqc -> \\$par_output_multiqc"
echo declare -A input_output_mapping=(["par_input"]="par_output"
echo "Creating directory if it does not exist:" ["par_input_falco"]="par_output_falco"
mkdir -p \\$(dirname "\\$par_output") && echo "Containing directory \\$par_output created" ["par_input_multiqc"]="par_output_multiqc"
mkdir -p \\$(dirname "\\$par_output_falco") && echo "Containing directory \\$par_output_falco created" ["par_input_run_information"]="par_output_run_information"
mkdir -p \\$(dirname "\\$par_output_multiqc") && echo "Containing directory \\$par_output_multiqc created" )
echo for input_argument_name in "\\${!input_output_mapping[@]}"
echo "Copying files..." do
cp -rL "\\$par_input" "\\$par_output" input_location="\\${!input_argument_name}"
cp -rL "\\$par_input_falco" "\\$par_output_falco" output_argument_name="\\${input_output_mapping[\\$input_argument_name]}"
cp -rL "\\$par_input_multiqc" "\\$par_output_multiqc" output_location="\\${!output_argument_name}"
echo "Publishing \\$input_location -> \\$output_location"
echo echo "Creating directory if it does not exist."
echo "Output files:" mkdir -p \\$(dirname "\\$output_location") && echo "Containing directory \\$output_location created"
echo "par_output:"
ls "\\$par_output"
echo echo "Copying files..."
echo "par_output_falco:" cp -rL "\\$input_location" "\\$output_location"
ls "\\$par_output_falco"
echo echo "Output files for \\$output_location:"
echo "par_output_multiqc:" ls "\\$output_location"
ls "\\$par_output_multiqc" done
VIASHMAIN VIASHMAIN
bash "$tempscript" bash "$tempscript"
''' '''

View File

@@ -37,8 +37,18 @@
"input_multiqc": { "input_multiqc": {
"type": "type":
"string", "string",
"description": "Type: `file`, required. Directory to write falco output to", "description": "Type: `file`, required. Location where to write the MultiQC report to",
"help_text": "Type: `file`, required. Directory to write falco output to" "help_text": "Type: `file`, required. Location where to write the MultiQC report to."
}
,
"input_run_information": {
"type":
"string",
"description": "Type: `file`, required. Location where to write the run information to",
"help_text": "Type: `file`, required. Location where to write the run information to."
} }
@@ -86,6 +96,17 @@
} }
,
"output_run_information": {
"type":
"string",
"description": "Type: `file`, default: `$id.$key.output_run_information.csv`. ",
"help_text": "Type: `file`, default: `$id.$key.output_run_information.csv`. "
,
"default":"$id.$key.output_run_information.csv"
}
} }
}, },

View File

@@ -148,9 +148,9 @@ build_info:
output: "target/nextflow/io/untar" output: "target/nextflow/io/untar"
executable: "target/nextflow/io/untar/main.nf" executable: "target/nextflow/io/untar/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
package_config: package_config:
name: "demultiplex" name: "demultiplex"
version: "main" version: "main"

View File

@@ -2989,9 +2989,9 @@ meta = [
"engine" : "docker|native", "engine" : "docker|native",
"output" : "target/nextflow/io/untar", "output" : "target/nextflow/io/untar",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",

View File

@@ -179,9 +179,9 @@ build_info:
output: "target/nextflow/runner" output: "target/nextflow/runner"
executable: "target/nextflow/runner/main.nf" executable: "target/nextflow/runner/main.nf"
viash_version: "0.9.0" viash_version: "0.9.0"
git_commit: "8d3c2888d6df6688763d303dba03ce53d339fb0f" git_commit: "798e361afeea8dbb84dc23ef38e4fbc3883463e7"
git_remote: "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex" git_remote: "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex"
git_tag: "v0.1.1-12-g8d3c288" git_tag: "v0.1.1-13-g798e361"
dependencies: dependencies:
- "target/nextflow/demultiplex" - "target/nextflow/demultiplex"
- "target/nextflow/io/publish" - "target/nextflow/io/publish"

View File

@@ -3021,9 +3021,9 @@ meta = [
"engine" : "native|native", "engine" : "native|native",
"output" : "target/nextflow/runner", "output" : "target/nextflow/runner",
"viash_version" : "0.9.0", "viash_version" : "0.9.0",
"git_commit" : "8d3c2888d6df6688763d303dba03ce53d339fb0f", "git_commit" : "798e361afeea8dbb84dc23ef38e4fbc3883463e7",
"git_remote" : "https://x-access-token:ghs_Iv5SuazXszUy4WWFyKOtFABImrj2oY0GsE3i@github.com/viash-hub/demultiplex", "git_remote" : "https://x-access-token:ghs_44flLTQIYGBkc9xcwCZoLYe7mxXzgw1iszFO@github.com/viash-hub/demultiplex",
"git_tag" : "v0.1.1-12-g8d3c288" "git_tag" : "v0.1.1-13-g798e361"
}, },
"package_config" : { "package_config" : {
"name" : "demultiplex", "name" : "demultiplex",
@@ -3090,14 +3090,20 @@ workflow run_wf {
] ]
} }
| demultiplex.run( | demultiplex.run(
fromState: [ fromState: { id, state ->
"input": "input", def state_to_pass = [
"run_information": "run_information", "input": state.input,
"demultiplexer": "demultiplexer", "run_information": state.run_information,
"output": "fastq", "demultiplexer": state.demultiplexer,
"output_falco": "qc/fastqc", "output": "fastq",
"output_multiqc": "qc/multiqc_report.html" "output_falco": "qc/fastqc",
], "output_multiqc": "qc/multiqc_report.html",
]
if (state.run_information) {
state_to_pass += ["output_run_information": state.run_information.getName()]
}
state_to_pass
},
toState: { id, result, state -> toState: { id, result, state ->
state + result state + result
}, },
@@ -3111,6 +3117,7 @@ workflow run_wf {
def fastq_output_1 = (id2 == "run") ? state.fastq_output : "${id2}/" + state.fastq_output def fastq_output_1 = (id2 == "run") ? state.fastq_output : "${id2}/" + state.fastq_output
def falco_output_1 = (id2 == "run") ? state.falco_output : "${id2}/" + state.falco_output def falco_output_1 = (id2 == "run") ? state.falco_output : "${id2}/" + state.falco_output
def multiqc_output_1 = (id2 == "run") ? state.multiqc_output : "${id2}/" + state.multiqc_output def multiqc_output_1 = (id2 == "run") ? state.multiqc_output : "${id2}/" + state.multiqc_output
def run_information_output_1 = (id2 == "run") ? "${state.output_run_information.getName()}" : "${id2}/${state.output_run_information.getName()}"
if (id2 == "run") { if (id2 == "run") {
println("Publising to ${params.publish_dir}") println("Publising to ${params.publish_dir}")
@@ -3122,9 +3129,11 @@ workflow run_wf {
input: state.output, input: state.output,
input_falco: state.output_falco, input_falco: state.output_falco,
input_multiqc: state.output_multiqc, input_multiqc: state.output_multiqc,
input_run_information: state.output_run_information,
output: fastq_output_1, output: fastq_output_1,
output_falco: falco_output_1, output_falco: falco_output_1,
output_multiqc: multiqc_output_1 output_multiqc: multiqc_output_1,
output_run_information: run_information_output_1,
] ]
}, },
toState: { id, result, state -> [:] }, toState: { id, result, state -> [:] },