File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # yamllint disable rule:line-length
2+ # This workflow runs make coverage/html and verifies that the coverage HTML report is generated.
3+ # yamllint enable rule:line-length
4+
5+ ---
6+ name : Make Coverage HTML
7+
8+ env :
9+ REPORT_DIR : " ./coverage/"
10+ REPORT_FILE : " coverage.html"
11+
12+ on : # yamllint disable-line rule:truthy
13+ push :
14+ branches : ["main"]
15+ pull_request :
16+ branches : ["main"]
17+ workflow_dispatch :
18+
19+ jobs :
20+ make-coverage-html :
21+ name : " Run make coverage/html and verify coverage HTML"
22+ runs-on : ubuntu-24.04
23+
24+ steps :
25+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
26+ with :
27+ fetch-depth : 0
28+
29+ - name : Set up Go
30+ uses : actions/setup-go@v6
31+ with :
32+ go-version : " 1.26.x"
33+
34+ - name : Build
35+ run : go build -v ./...
36+
37+ - name : Tool test
38+ run : |
39+ go version
40+ make --version
41+
42+ - name : Run coverage HTML target
43+ run : make coverage/html
44+
45+ - name : Verify coverage HTML artifact
46+ shell : bash
47+ run : |
48+ if [ ! -f $REPORT_DIR/$REPORT_FILE ]; then
49+ echo "Coverage HTML file not found: $REPORT_DIR/$REPORT_FILE"
50+ exit 1
51+ fi
52+ if [ ! -s $REPORT_DIR/$REPORT_FILE ]; then
53+ echo "Coverage HTML file is empty: $REPORT_DIR/$REPORT_FILE"
54+ exit 1
55+ fi
56+
57+ - name : Upload coverage HTML artifact
58+ uses : actions/upload-artifact@v7
59+ with :
60+ name : coverage-report-html
61+ path : ${{ env.REPORT_DIR }}
Original file line number Diff line number Diff line change @@ -114,7 +114,15 @@ coverage: test
114114
115115coverage/html : coverage.out
116116 $(GOCOVER ) -html=coverage.out -o ./coverage/coverage.html
117- open ./coverage/coverage.html
117+
118+
119+ @if [ "$$(uname)" = "Darwin" ]; then \
120+ open ./coverage/coverage.html; \
121+ elif [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "mingw32" ] || [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "mingw64" ] || [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "cygwin" ]; then \
122+ cmd /c start ./coverage/coverage.html; \
123+ else \
124+ echo "Coverage HTML generated: ./coverage/coverage.html"; \
125+ fi
118126
119127outdated :
120128 $(GO ) list -m -u all
You can’t perform that action at this time.
0 commit comments