From 6efbd7ebd1f844df31eced47f0e46cb51b769729 Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Fri, 29 Jan 2021 11:54:38 +0000
Subject: [PATCH] Add JUnit test reporting for Gitlab CI

---
 .gitlab-ci.yml | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6a90ca0a..63c76952 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -17,15 +17,20 @@ build_pkg:bullseye:amd64:
 test:
   stage: test
   image: golang:1.15
+  before_script:
+    # Install tooling dependencies.
+    - (cd /tmp && go get github.com/boumenot/gocover-cobertura)
+    - (cd /tmp && go get github.com/jstemmer/go-junit-report)
   script:
     # The following monstruosity is required to generate a single coverage
     # result statement for the entire package, but without generating build
     # errors due to multiple definition of flags in cmd/ tools.
     # See also https://github.com/golang/go/issues/27333
-    - go test -v -cover -coverpkg=$(go list ./... | grep -v /cmd/) -coverprofile=cover.out ./...
+    - go test -v -cover -coverpkg=$(go list ./... | grep -v /cmd/) -coverprofile=cover.out ./... 2>&1 | go-junit-report -set-exit-code > report.xml
     # Convert coverage output to XML for Gitlab integration.
-    - (cd /tmp && go get github.com/boumenot/gocover-cobertura)
     - gocover-cobertura < cover.out > cover.xml
   artifacts:
+    when: always
     reports:
       cobertura: cover.xml
+      junit: report.xml
-- 
GitLab