Skip to content

Commit b6b6476

Browse files
authored
Improve coverage badge update process in README.md
Refactor coverage badge update logic in README.md to handle missing badge case and improve readability.
1 parent aa5d107 commit b6b6476

1 file changed

Lines changed: 14 additions & 5 deletions

File tree

.github/workflows/tag_and_publish.yml

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,25 @@ jobs:
5050
sed -i "s/$interrogate_badge/$new_interrogate_badge/g" README.md
5151
- name: Get Coverage values and Update README.md
5252
run: |
53+
set -euo pipefail
54+
5355
coverage run -m unittest discover
5456
coverage_val=$(coverage report | grep "^TOTAL" | grep -o '[0-9]\+%' | grep -o '[0-9]\+')
55-
coverage_badge=$(grep '^\!\[Coverage\]' README.md | sed -n 's/.*\(coverage-[^)]*\).*/\1/p')
56-
if (( $(echo "$coverage_val >= 90.00" | bc -l) )); then
57-
new_coverage_badge="coverage-$coverage_val%25-brightgreen"
57+
58+
coverage_badge=$(grep '^\!\[Coverage\]' README.md | sed -n 's/.*\(coverage-[^)]*\).*/\1/p' || true)
59+
if [[ -z "${coverage_badge:-}" ]]; then
60+
echo "Coverage badge not found in README.md; skipping."
61+
exit 0
62+
fi
63+
64+
if (( $(echo "$coverage_val >= 90.00" | bc -l) )); then
65+
new_coverage_badge="coverage-$coverage_val%25-brightgreen"
5866
elif (( $(echo "$coverage_val < 80.00" | bc -l) )); then
59-
new_coverage_badge="coverage-$coverage_val%25-red"
67+
new_coverage_badge="coverage-$coverage_val%25-red"
6068
else
61-
new_coverage_badge="coverage-$coverage_val%25-yellow"
69+
new_coverage_badge="coverage-$coverage_val%25-yellow"
6270
fi
71+
6372
sed -i "s/$coverage_badge/$new_coverage_badge/g" README.md
6473
- name: Commit changes
6574
uses: EndBug/add-and-commit@v9

0 commit comments

Comments
 (0)