Skip to content

Commit f0c2b8e

Browse files
committed
refactor: Avoid file clobber issues in DESeq2 QC by using unique temp files
1 parent 5a3c481 commit f0c2b8e

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

modules/local/deseq2_qc/main.nf

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,17 @@ process DESEQ2_QC {
4242
$args
4343
4444
if [ -f "R_sessionInfo.log" ]; then
45-
sed "s/deseq2_pca/${label_lower}_deseq2_pca/g" <$pca_header_multiqc >tmp.txt
46-
sed -i -e "s/DESeq2 PCA/${label_upper} DESeq2 PCA/g" tmp.txt
47-
cat tmp.txt *.pca.vals.txt > ${label_lower}.pca.vals_mqc.tsv
45+
# Handle PCA files
46+
sed "s/deseq2_pca/${label_lower}_deseq2_pca/g" <$pca_header_multiqc > pca_header.tmp
47+
sed -i -e "s/DESeq2 PCA/${label_upper} DESeq2 PCA/g" pca_header.tmp
48+
cat pca_header.tmp *.pca.vals.txt > ${label_lower}.pca.vals_mqc.tsv
49+
rm pca_header.tmp
4850
49-
sed "s/deseq2_clustering/${label_lower}_deseq2_clustering/g" <$clustering_header_multiqc >tmp.txt
50-
sed -i -e "s/DESeq2 sample/${label_upper} DESeq2 sample/g" tmp.txt
51-
cat tmp.txt *.sample.dists.txt > ${label_lower}.sample.dists_mqc.tsv
51+
# Handle clustering files
52+
sed "s/deseq2_clustering/${label_lower}_deseq2_clustering/g" <$clustering_header_multiqc > clustering_header.tmp
53+
sed -i -e "s/DESeq2 sample/${label_upper} DESeq2 sample/g" clustering_header.tmp
54+
cat clustering_header.tmp *.sample.dists.txt > ${label_lower}.sample.dists_mqc.tsv
55+
rm clustering_header.tmp
5256
fi
5357
5458
cat <<-END_VERSIONS > versions.yml
@@ -78,7 +82,7 @@ process DESEQ2_QC {
7882
touch size_factors/\${i}.size_factors.RData
7983
done
8084
81-
cat <<-END_VERSIONS > versions.yml
85+
cat <<-END_VERSIONS >|versions.yml
8286
"${task.process}":
8387
r-base: \$(echo \$(R --version 2>&1) | sed 's/^.*R version //; s/ .*\$//')
8488
bioconductor-deseq2: \$(Rscript -e "library(DESeq2); cat(as.character(packageVersion('DESeq2')))")

0 commit comments

Comments
 (0)