parent
92593404fa
commit
a6e751da65
1 changed files with 16 additions and 2 deletions
|
|
@ -246,20 +246,34 @@ jobs:
|
||||||
# если переменная пустая/файла нет, печатаем в обычный лог (fallback).
|
# если переменная пустая/файла нет, печатаем в обычный лог (fallback).
|
||||||
if: always()
|
if: always()
|
||||||
run: |
|
run: |
|
||||||
|
echo "### шаг «Coverage summary» начался"
|
||||||
[ -f coverage.xml ] || { echo "coverage.xml отсутствует — пропускаю summary"; exit 0; }
|
[ -f coverage.xml ] || { echo "coverage.xml отсутствует — пропускаю summary"; exit 0; }
|
||||||
report="$(uv run coverage report --skip-covered --sort=cover | tail -40)"
|
# NB (#2871): `coverage report` уважает fail_under из pyproject и выходит с
|
||||||
|
# кодом 2, когда порог не набран, а `run:` идёт под `bash -eo pipefail` —
|
||||||
|
# то есть падение ЭТОГО шага гасит зелёный pytest и выглядит как «job упал
|
||||||
|
# неизвестно где». Разделяем вычисление и вывод, чтобы код возврата был виден.
|
||||||
|
# `|| cov_rc=$?`, а не отдельная строка: под `set -e` присваивание после
|
||||||
|
# упавшей команды просто не выполнится, и код возврата снова потеряется.
|
||||||
|
cov_rc=0
|
||||||
|
uv run coverage report --skip-covered --sort=cover > /tmp/cov_report.txt || cov_rc=$?
|
||||||
|
echo "### coverage report вернул код $cov_rc"
|
||||||
|
report="$(tail -40 /tmp/cov_report.txt)"
|
||||||
if [ -n "${GITHUB_STEP_SUMMARY:-}" ]; then
|
if [ -n "${GITHUB_STEP_SUMMARY:-}" ]; then
|
||||||
{ echo '```'; echo "$report"; echo '```'; } >> "$GITHUB_STEP_SUMMARY"
|
{ echo '```'; echo "$report"; echo '```'; } >> "$GITHUB_STEP_SUMMARY"
|
||||||
else
|
else
|
||||||
echo "$report"
|
echo "$report"
|
||||||
fi
|
fi
|
||||||
|
echo "### шаг «Coverage summary» закончился успешно"
|
||||||
|
|
||||||
- name: Снести тестовый Postgres
|
- name: Снести тестовый Postgres
|
||||||
# if: always() — контейнер уходит и когда сьют красный, и когда прогон
|
# if: always() — контейнер уходит и когда сьют красный, и когда прогон
|
||||||
# отменён concurrency-группой. Иначе на раннере копятся мёртвые контейнеры.
|
# отменён concurrency-группой. Иначе на раннере копятся мёртвые контейнеры.
|
||||||
if: always()
|
if: always()
|
||||||
working-directory: .
|
working-directory: .
|
||||||
run: docker rm -f "$CI_PG" >/dev/null 2>&1 || true
|
run: |
|
||||||
|
echo "### шаг «Снести тестовый Postgres» начался (CI_PG=${CI_PG:-<пусто>})"
|
||||||
|
docker rm -f "$CI_PG" >/dev/null 2>&1 || true
|
||||||
|
echo "### шаг «Снести тестовый Postgres» закончился успешно"
|
||||||
|
|
||||||
frontend-tests:
|
frontend-tests:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue