@@ -4,18 +4,21 @@ nextflow.enable.dsl=2
44/* *
55 * Process: GenerateReport
66 *
7- * Generates a consolidated report from all status files.
8- * The report includes:
9- * - Repository name
10- * - Clone status
11- * - Dependencies status
12- * - Tests status
13- * - Almanack status
7+ * Aggregates all status files into a single consolidated CSV report.
8+ * The report includes the following columns:
9+ * - Tool: Repository name
10+ * - CloneRepository: Status of repository cloning
11+ * - CheckReadme: Status of README check
12+ * - CheckDependencies: Status of dependencies check
13+ * - CheckTests: Status of tests check
14+ * - Almanack: Status of Almanack analysis
1415 */
1516
1617process GenerateReport {
18+ publishDir path: " ${ params.output_dir} " , mode: ' copy'
19+
1720 input:
18- path " *status_*.txt "
21+ path status_files
1922
2023 output:
2124 path " consolidated_report.csv"
@@ -25,12 +28,16 @@ process GenerateReport {
2528 #!/bin/bash
2629 set -euo pipefail
2730
28- # Create header
29- echo "repo_name,clone_status,deps_status,tests_status,almanack_status" > consolidated_report.csv
30-
31- # Append each status file
32- for f in status_*.txt; do
33- cat "\$ f" >> consolidated_report.csv
31+ # Write header with column names
32+ echo "Tool,CloneRepository,CheckReadme,CheckDependencies,CheckTests,Almanack" > consolidated_report.csv
33+
34+ # Append each status row from all files
35+ for f in ${ status_files} ; do
36+ if [ -f "\$ f" ]; then
37+ cat "\$ f" >> consolidated_report.csv
38+ else
39+ echo "Warning: File \$ f not found" >&2
40+ fi
3441 done
3542 """
3643}
0 commit comments