From 0bf0720b6b317591e07df8fe7b5bfd7cb5bc8760 Mon Sep 17 00:00:00 2001
From: Virgile Prevosto <virgile.prevosto@m4x.org>
Date: Fri, 23 Apr 2021 16:49:00 +0200
Subject: [PATCH] [ci] keeps results in artifacts

---
 .gitlab-ci.yml  | 6 ++++++
 nix/frama-ci.sh | 9 ++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d147ca793a8..3ef9fe51d26 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,6 +31,12 @@ frama-c:
   stage: build
   script:
    - nix/frama-ci.sh build -A frama-c.main
+  artifacts:
+    when: on_failure
+    paths:
+      - commits.nix
+      - results.log
+    expire_in: 1 day
   tags:
    - nix
 
diff --git a/nix/frama-ci.sh b/nix/frama-ci.sh
index dbbe1bb07e4..d3a76ed345d 100755
--- a/nix/frama-ci.sh
+++ b/nix/frama-ci.sh
@@ -9,4 +9,11 @@ export FRAMA_CI=$(nix-instantiate --eval -E "((import <nixos-20.03> {}).callPack
 FRAMA_CI=${FRAMA_CI#\"}
 FRAMA_CI=${FRAMA_CI%\"}
 
-$FRAMA_CI/compile.sh $@
+PIPE=$(mktemp)
+rm $PIPE
+mkfifo $PIPE
+tee results.log < $PIPE &
+$FRAMA_CI/compile.sh $@ > $PIPE 2>&1
+STATUS=$?
+rm $PIPE
+exit $STATUS
-- 
GitLab