mirror of
https://github.com/wasrusgen/zov-tech.git
synced 2026-06-03 15:24:48 +00:00
52 lines
1.6 KiB
YAML
52 lines
1.6 KiB
YAML
name: CI — Lint + Smoke Tests
|
|
|
|
on:
|
|
push:
|
|
branches: [master, main]
|
|
pull_request:
|
|
branches: [master, main]
|
|
|
|
jobs:
|
|
lint-css:
|
|
name: CSS-линтер
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
- name: Запуск CSS-линтера
|
|
run: python tests/lint_css.py
|
|
|
|
smoke-api:
|
|
name: Smoke-тесты API
|
|
runs-on: ubuntu-latest
|
|
# Запускаем только на пушах в master (не на PR — там нет деплоя)
|
|
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
|
|
# Ждём деплоя GitHub Pages (если были изменения в miniapp/)
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
- name: Пауза после деплоя Pages (60s)
|
|
run: sleep 60
|
|
- name: Запуск smoke-тестов
|
|
run: python tests/smoke_api.py --url https://api.wasrusgen1.pro
|
|
|
|
report:
|
|
name: Сводный отчёт
|
|
runs-on: ubuntu-latest
|
|
needs: [lint-css, smoke-api]
|
|
if: always()
|
|
steps:
|
|
- name: Итог
|
|
run: |
|
|
echo "CSS-линтер: ${{ needs.lint-css.result }}"
|
|
echo "Smoke API: ${{ needs.smoke-api.result }}"
|
|
if [[ "${{ needs.lint-css.result }}" == "failure" || "${{ needs.smoke-api.result }}" == "failure" ]]; then
|
|
echo "❌ CI упал — есть замечания к устранению"
|
|
exit 1
|
|
fi
|
|
echo "✅ CI прошёл"
|