Каркас pytest с изоляцией путей в tmp: 40 тестов на валидаторы имён, защиту от path traversal, парсеры virsh-вывода, cloud-init генерацию, ротацию бэкапов, CSRF, rate-limit и рендеринг ключевых страниц. GitHub Actions прогоняет compileall, bash -n всех скриптов и pytest. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PKUoZwHMCHnytfswFVRUHw
32 строки
795 B
YAML
32 строки
795 B
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
checks:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.12"
|
|
|
|
- name: Проверка синтаксиса Python
|
|
run: python -m compileall -q web scripts
|
|
|
|
- name: Проверка синтаксиса bash-скриптов
|
|
run: |
|
|
bash -n install.sh bootstrap.sh install_virtuality_node.sh setup_github_sync.sh
|
|
for script in scripts/*.sh; do bash -n "$script"; done
|
|
|
|
- name: Установка зависимостей
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install -r web/requirements.txt pytest httpx
|
|
|
|
- name: Тесты
|
|
run: pytest -q
|