Files
inecs cbd0adca91 Initial release of the oVirt/RHV Engine API simulator.
Stateful FastAPI lab with contract packs, Compose/Helm, Docker Hub release
targets, and Pulumi coverage across all Engine series (GET/POST/PUT/DELETE/HEAD).
2026-07-18 04:49:28 +03:00

62 lines
1.5 KiB
YAML

name: ci
on:
push:
branches: [main, master]
pull_request:
jobs:
offline:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build images
run: |
cp -n .env.example .env || true
docker compose build simulator dev
- name: Critical lint (syntax / undefined names)
run: docker compose run --rm --no-deps dev ruff check app tests --select E9,F63,F7,F82
- name: Offline unit + contract tests
run: make test
- name: Helm template
run: |
curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
make helm-template
integration:
runs-on: ubuntu-latest
needs: offline
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Start stack
run: |
cp -n .env.example .env || true
make up
make seed
- name: Smoke
run: make smoke
- name: Contract pack activate
run: |
curl -sf -X POST http://127.0.0.1:5000/ui/api/ovirt/contracts/activate \
-H 'Content-Type: application/json' \
-d '{"series":"3.6"}'
curl -sf -X POST http://127.0.0.1:5000/ui/api/ovirt/contracts/activate \
-H 'Content-Type: application/json' \
-d '{"series":"4.5"}'
- name: Integration tests
run: make test-integration