2222 BEFORE_COVERAGE=/tmp/coverage-api-${BEFORE_SHA}.json
2323 AFTER_COVERAGE=/tmp/coverage-api-${AFTER_SHA}.json
2424 COVERAGE_DIFF=/tmp/coverage-api-${BEFORE_SHA}-${AFTER_SHA}-DIFF.json
25-
25+
2626 vars=(
2727 BEFORE_SHA
2828 AFTER_SHA
3333 AFTER_COVERAGE
3434 COVERAGE_DIFF
3535 )
36-
36+
3737 {
3838 for var in "${vars[@]}"
3939 do
@@ -48,19 +48,19 @@ jobs:
4848 shell : bash -eo pipefail {0}
4949 run : |
5050 docker build coverage --tag opensearch-with-api-plugin
51-
51+
5252 docker run \
5353 --name opensearch \
5454 --rm -d \
5555 -p 9200:9200 -p 9600:9600 \
5656 -e "discovery.type=single-node" \
5757 -e OPENSEARCH_INITIAL_ADMIN_PASSWORD="$OPENSEARCH_PASSWORD" \
5858 opensearch-with-api-plugin
59-
59+
6060 npm ci
61-
61+
6262 npm run dump-cluster-spec -- --opensearch-insecure --output $CLUSTER_SPEC
63-
63+
6464 docker stop opensearch
6565 env :
6666 OPENSEARCH_PASSWORD : BobgG7YrtsdKf9M
@@ -92,14 +92,14 @@ jobs:
9292 --cluster $CLUSTER_SPEC \
9393 --specification $BEFORE_SPEC \
9494 --output $BEFORE_COVERAGE
95-
95+
9696 npm run coverage:spec -- \
9797 --cluster $CLUSTER_SPEC \
9898 --specification $AFTER_SPEC \
9999 --output $AFTER_COVERAGE
100-
100+
101101 jq . $AFTER_COVERAGE
102-
102+
103103 jq --slurp '
104104 [ .[].counts ]
105105 | {
@@ -116,6 +116,18 @@ jobs:
116116 $AFTER_COVERAGE \
117117 | tee $COVERAGE_DIFF
118118
119+ - name : Display Coverage Checklist
120+ shell : bash -eo pipefail {0}
121+ run : |
122+ jq -sc '
123+ (map(.endpoints .uncovered | to_entries | sort_by(.value) | map((.value[] | ascii_upcase) + " " + .key)) | .[] | to_entries | map({path: .value, covered: false})) as $uncovered |
124+ (map(.endpoints .covered | to_entries | sort_by(.value) | map((.value[] | ascii_upcase) + " " + .key)) | .[] | to_entries | map({path: .value, covered: true})) as $covered |
125+ $covered+$uncovered |
126+ sort_by(.path) |
127+ map(if .covered then "-[x] \(.path)" else "-[ ] \(.path)" end) |
128+ .[]
129+ ' $AFTER_COVERAGE | jq -r
130+
119131 - name : Upload Coverage Data
120132 id : upload-coverage
121133 uses : actions/upload-artifact@v4
@@ -150,7 +162,7 @@ jobs:
150162 exit 1
151163 fi
152164 fi
153-
165+
154166 gawk '
155167 BEGIN {
156168 RS = "(\r|\n|\r\n)"
@@ -176,7 +188,7 @@ jobs:
176188 HAD_CHANGES = 1
177189 print
178190 }
179-
191+
180192 END {
181193 if (!HAD_CHANGES) {
182194 print "**NO CHANGES**\n"
0 commit comments