Skip to content

Commit ed1c02c

Browse files
committed
step
1 parent 53cfdf6 commit ed1c02c

File tree

1 file changed

+23
-13
lines changed

1 file changed

+23
-13
lines changed

extra/ci_collect_logs.sh

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,26 @@ if [ -z "$ALL_BOARD_DATA" ] || [ -z "$GITHUB_REPOSITORY" ] || [ -z "$GITHUB_RUN_
1212
exit 0
1313
fi
1414

15+
artifact_count() {
16+
COUNT=$1
17+
ICON=$2
18+
if [ $COUNT -eq 0 ] ; then
19+
ICON=":new_moon:"
20+
fi
21+
printf "<code>%3i</code>%s" $COUNT $ICON
22+
}
23+
1524
artifact_entry() {
16-
ICON="$1"
17-
TEXT="$2"
18-
LINK="$3"
25+
TEXT="$1"
26+
LINK="$2"
1927

2028
if [ -z "$LINK" ] ; then
2129
BOARD_LINK="$BOARD"
2230
else
2331
BOARD_LINK="<a href=\"$LINK\">$BOARD</a>"
2432
fi
25-
echo -e "<li><details><summary>$ICON $BOARD_LINK (<code>$VARIANT</code>) - $TEXT</summary>$DETAILS</details></li>"
33+
COUNTS="<b>$(artifact_count $SKETCH_ERRORS ":red_circle:") $(artifact_count $SKETCH_WARNINGS ":yellow_circle:")</b> $(artifact_count $((SKETCH_COUNT - SKETCH_ERRORS - SKETCH_WARNINGS)) ":green_circle:")"
34+
echo -e "<li><details><summary>$TITLE $BOARD_LINK (<code>$VARIANT</code>) $TEXT</summary><table>$DETAILS</table></details></li>"
2635
}
2736

2837
details_line() {
@@ -31,17 +40,19 @@ details_line() {
3140
if echo "$SKETCH_NAME" | grep -qE 'libraries/' ; then
3241
LIB=$(echo "$SKETCH_NAME" | sed -e 's/.*libraries\///' -e 's/\/.*//')
3342
SKETCH=$(echo "$SKETCH_NAME" | sed -e 's/.*libraries\/[^/]*\///')
34-
SUMMARY="$ICON <code>$LIB</code> <code>$SKETCH</code> : $TEXT"
43+
SUMMARY="<code>$LIB</code> <code>$SKETCH</code>"
3544
else
36-
SUMMARY="$ICON <code>$SKETCH_NAME</code> : $TEXT"
45+
SUMMARY="<code>$SKETCH_NAME</code>"
3746
fi
3847
if [ $SKETCH_ISSUES_COUNT -ne 0 ] ; then
48+
SUMMARY="$SUMMARY :down:"
3949
ICON="$SKETCH_ISSUES_COUNT $ICON"
4050
BODY="\n\n\`\`\`\n${SKETCH_ISSUES}\n\`\`\`\n"
4151
else
52+
SUMMARY="$SUMMARY :white_check_mark:"
4253
BODY=""
4354
fi
44-
echo -e "<tr><td>$ICON</td><td><details><summary>$SUMMARY</summary>$BODY</details></td></tr>"
55+
echo -e "<tr><td align=right>$ICON</td><td><details><summary>$SUMMARY</summary>$BODY</details></td></tr>"
4556
}
4657

4758
ARTIFACTS=$(jq -cr 'map(.artifact) | unique | .[]' <<< ${ALL_BOARD_DATA}) # this avoids the 'zephyr' artifact
@@ -54,7 +65,7 @@ for artifact in $ARTIFACTS ; do
5465
FQBN="arduino:$SUBARCH:$BOARD"
5566
REPORT_FILE="$(echo $FQBN | tr ':' '-').json"
5667

57-
DETAILS="<table><tr><th>Status</th><th>Sketch</th></tr>"
68+
DETAILS=""
5869
ARTIFACT_LINK=""
5970
if [ ! -f $REPORT_FILE ]; then
6071
ARTIFACT_STATUS="fire"
@@ -85,20 +96,19 @@ for artifact in $ARTIFACTS ; do
8596
fi
8697
done
8798
fi
88-
DETAILS="${DETAILS}</table>"
8999

90100
case $ARTIFACT_STATUS in
91101
success)
92-
artifact_entry ":white_check_mark:" "All $SKETCH_COUNT sketches built successfully"
102+
artifact_entry "PASS :white_check_mark:"
93103
;;
94104
warning)
95-
artifact_entry ":exclamation:" "All $SKETCH_COUNT sketches built ($SKETCH_WARNINGS with warnings)" "$ARTIFACT_LINK"
105+
artifact_entry "<b>WARNING</> :exclamation:" "$ARTIFACT_LINK"
96106
;;
97107
error)
98-
artifact_entry ":x:" "$SKETCH_ERRORS out of $SKETCH_COUNT sketches failed to build" "$ARTIFACT_LINK"
108+
artifact_entry "<b>FAILURE</b> :x:" "$ARTIFACT_LINK"
99109
;;
100110
*)
101-
artifact_entry ":fire:" "Report file missing or unreadable"
111+
artifact_entry "<b>CI ISSUE</b> :fire:"
102112
;;
103113
esac
104114
done

0 commit comments

Comments
 (0)