From c76bb63ac92d7efabb57e0cbe5b04e4c8e36f9dc Mon Sep 17 00:00:00 2001
From: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>
Date: Tue, 5 Nov 2024 18:20:20 -0500
Subject: [PATCH] Initial implementation of metadata

---
 .gitlab-ci.yml |  2 +-
 Snakefile      | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1df546a9..4d77de9b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -178,7 +178,7 @@ deploy_results:
     - "collect_results:femc_photon"
     - "collect_results:femc_pi0"
   script:
-    - echo "deploy results!"
+    - snakemake $SNAKEMAKE_FLAGS --cores 1 results/metadata.json
     - find results -print | sort | tee summary.txt
     - xrdfs $XROOTD_RW_ENDPOINT mkdir $XROOTD_OUTPUT_PREFIX/pipeline-$CI_PIPELINE_ID
     - xrdcp -r results $XROOTD_RW_ENDPOINT/$XROOTD_OUTPUT_PREFIX/pipeline-$CI_PIPELINE_ID
diff --git a/Snakefile b/Snakefile
index 9c125483..b913cc80 100644
--- a/Snakefile
+++ b/Snakefile
@@ -86,3 +86,23 @@ rule org2py:
         """
 awk -f {input.converter} {input.notebook} > {output}
 """
+
+
+rule metadata:
+    output:
+        "results/metadata.json"
+    shell:
+        """
+cat > {output} <<EOF
+{{
+  "CI_COMMIT_REF_NAME": "${{CI_COMMIT_REF_NAME:-}}",
+  "CI_COMMIT_SHA": "${{CI_COMMIT_SHA:-}}",
+  "CI_PIPELINE_ID": "${{CI_PIPELINE_ID:-}}",
+  "CI_PIPELINE_SOURCE": "${{CI_PIPELINE_SOURCE:-}}",
+  "CI_PROJECT_ID": "${{CI_PROJECT_ID:-}}",
+  "PIPELINE_NAME": "${{PIPELINE_NAME:-}}"
+}}
+EOF
+# validate JSON
+jq '.' {output}
+"""
-- 
GitLab