ci: replace junit html generation with gh action
galargh committed
Feb 28, 2023 at 13:00 UTC
fe8f72e70739b7a55330a2a609fe3fd2a0bfc1ae
4 files changed
+15
-77
.github/workflows/sharness.yml
+15
-3
@@ -56,9 +56,7 @@ jobs:
56
make -O -j "$PARALLEL" \
57
test_sharness \
58
coverage/sharness_tests.coverprofile \
59
- test/sharness/test-results/sharness.xml \
60
- test/sharness/test-results/sharness.html \
61
- test/sharness/test-results/sharness-html
59
+ test/sharness/test-results/sharness.xml
60
working-directory: kubo
61
env:
62
TEST_NO_DOCKER: 0
@@ -88,6 +86,13 @@ jobs:
86
echo "# Summary" >> $GITHUB_STEP_SUMMARY
87
echo >> $GITHUB_STEP_SUMMARY
88
cat kubo/test/sharness/test-results/summary.txt >> $GITHUB_STEP_SUMMARY
89
+ - name: Generate one-page HTML report
90
+ uses: pl-strflt/junit-xml-to-html@v1
91
+ if: failure() || success()
92
+ with:
93
+ mode: no-frames
94
+ input: kubo/test/sharness/test-results/sharness.xml
95
+ output: kubo/test/sharness/test-results/sharness.html
96
- name: Upload one-page HTML report to S3
97
id: one-page
98
uses: pl-strflt/tf-aws-gh-runner/.github/actions/upload-artifact@main
@@ -101,6 +106,13 @@ jobs:
106
with:
107
name: sharness.html
108
path: kubo/test/sharness/test-results/sharness.html
109
+ - name: Generate full HTML report
110
+ uses: pl-strflt/junit-xml-to-html@v1
111
+ if: failure() || success()
112
+ with:
113
+ mode: frames
114
+ input: kubo/test/sharness/test-results/sharness.xml
115
+ output: kubo/test/sharness/test-results/sharness-html
116
- name: Upload full HTML report to S3
117
id: full
118
uses: pl-strflt/tf-aws-gh-runner/.github/actions/upload-artifact@main
test/sharness/Rules.mk
-15
@@ -47,21 +47,6 @@ $(d)/test-results/sharness.xml: $(T_$(d))
47
@(cd $(@D)/.. && ./lib/test-aggregate-junit-reports.sh)
48
.PHONY: $(d)/test-results/sharness.xml
49
50
-$(d)/download-saxon:
51
- @echo "*** $@ ***"
52
- @(cd $(@D) && ./lib/download-saxon.sh)
53
-.PHONY: $(d)/download-saxon
54
-
55
-$(d)/test-results/sharness-html: $(d)/test-results/sharness.xml $(d)/download-saxon
56
- @echo "*** $@ ***"
57
- @(cd $(@D)/.. && ./lib/test-generate-junit-html.sh frames)
58
-.PHONY: $(d)/test-results/sharness-html
59
-
60
-$(d)/test-results/sharness.html: $(d)/test-results/sharness.xml $(d)/download-saxon
61
- @echo "*** $@ ***"
62
- @(cd $(@D)/.. && ./lib/test-generate-junit-html.sh no-frames)
63
-.PHONY: $(d)/test-results/sharness.html
64
-
50
$(d)/clean-test-results:
51
rm -rf $(@D)/test-results
52
.PHONY: $(d)/clean-test-results
test/sharness/lib/download-saxon.sh
deleted
-39
@@ -1,39 +0,0 @@
1
-#!/bin/bash
2
-
3
-dependencies=(
4
- "url=https://raw.githubusercontent.com/pl-strflt/Saxon-HE/3e039cdbccf4efb9643736f34c839a3bae3402ae/11/Java/SaxonHE11-4J.zip;md5=8a4783d307c32c898f8995b8f337fd6b"
5
- "url=https://raw.githubusercontent.com/pl-strflt/ant/c781f7d79b92cc55530245d9554682a47f46851e/src/etc/junit-frames-saxon.xsl;md5=6eb013566903a91e4959413f6ff144d0"
6
- "url=https://raw.githubusercontent.com/pl-strflt/ant/c781f7d79b92cc55530245d9554682a47f46851e/src/etc/junit-noframes-saxon.xsl;md5=8d54882d5f9d32a7743ec675cc2e30ac"
7
-)
8
-
9
-dependenciesdir="lib/dependencies"
10
-mkdir -p "$dependenciesdir"
11
-
12
-get_md5() {
13
- md5sum "$1" | cut -d ' ' -f 1
14
-}
15
-
16
-for dependency in "${dependencies[@]}"; do
17
- url="$(echo "$dependency" | cut -d ';' -f 1 | cut -d '=' -f 2)"
18
- md5="$(echo "$dependency" | cut -d ';' -f 2 | cut -d '=' -f 2)"
19
- filename="$(basename "$url")"
20
- if test -f "$dependenciesdir/$filename" && test "$(get_md5 "$dependenciesdir/$filename")" = "$md5"; then
21
- echo "Using cached $filename"
22
- else
23
- echo "Downloading $filename"
24
- curl -L --max-redirs 5 --retry 5 --no-progress-meter --output "$dependenciesdir/$filename" "$url"
25
- actual_md5="$(get_md5 "$dependenciesdir/$filename")"
26
- if test "$actual_md5" != "$md5"; then
27
- echo "Downloaded $filename has wrong md5sum ('$actual_md5' != '$md5')"
28
- exit 1
29
- fi
30
- dirname=${filename%.*}
31
- extension=${filename#$dirname.}
32
- if test "$extension" = "zip"; then
33
- echo "Removing old $dependenciesdir/$dirname"
34
- rm -rf "$dependenciesdir/$dirname"
35
- echo "Unzipping $dependenciesdir/$filename"
36
- unzip "$dependenciesdir/$filename" -d "$dependenciesdir/$dirname"
37
- fi
38
- fi
39
-done
test/sharness/lib/test-generate-junit-html.sh
deleted
-20
@@ -1,20 +0,0 @@
1
-#!/bin/bash
2
-
3
-case "$1" in
4
- "frames")
5
- java -jar lib/dependencies/SaxonHE11-4J/saxon-he-11.4.jar \
6
- -s:test-results/sharness.xml \
7
- -xsl:lib/dependencies/junit-frames-saxon.xsl \
8
- output.dir=$(pwd)/test-results/sharness-html
9
- ;;
10
- "no-frames")
11
- java -jar lib/dependencies/SaxonHE11-4J/saxon-he-11.4.jar \
12
- -s:test-results/sharness.xml \
13
- -xsl:lib/dependencies/junit-noframes-saxon.xsl \
14
- -o:test-results/sharness.html
15
- ;;
16
- *)
17
- echo "Usage: $0 [frames|no-frames]"
18
- exit 1
19
- ;;
20
-esac