From 8102a4c463c21f3bba4f27f0dbc402b9850de915 Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Sun, 14 Jan 2024 18:24:05 +0000 Subject: CI: Check help tags for errors (duplicates, missing, etc) (#13865) - Run the doc make html awk script, which also checks, that all referenced help tags exists. - Run the doc maketags awk script, which checks for duplicates - in case of any error in the previous two steps, exit the CI with an error and show the errors.log file, that is generated by the previous 2 steps Signed-off-by: Christian Brabandt --- .github/workflows/ci.yml | 7 ++++++- runtime/doc/maketags.awk | 7 +++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b51cadeab0..0efadcf9b9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -265,7 +265,12 @@ jobs: if: contains(matrix.extra, 'vimtags') run: | # This will exit with an error code if the generated vim tags differs from source. - git diff --exit-code -- runtime/doc/tags + ( + cd runtime/doc + git diff --exit-code -- tags + make html; rm *.html tags.ref; + test -f errors.log && exit 3; + ) - name: Generate gcov files if: matrix.coverage diff --git a/runtime/doc/maketags.awk b/runtime/doc/maketags.awk index c6b2cd91f3..20b2b081ad 100644 --- a/runtime/doc/maketags.awk +++ b/runtime/doc/maketags.awk @@ -21,6 +21,13 @@ NR == 1 { nf=split(FILENAME,f,".") gsub(/%/,"\\%"); nf=split($0,tag," "); + if (counttag[tag[1]] > 0) + { + print "==============" > "errors.log" + print "Duplicate Tag " tag[1] > "errors.log" + print "==============" > "errors.log" + } + counttag[tag[1]]++ tagkey[t]=tag[1];tagref[t]=tag[2];tagnum[t]=NR; print $1 " " $2 " line " NR >"tags.ref" n=split($2,w,"."); -- cgit v1.2.3