6033967e6a
Ship Keystone auth, multi-service handlers (Yoga→Dalmatian), Compose/Helm packaging, API contract packs, and pytest/Pulumi coverage labs.
1.9 KiB
1.9 KiB
Language / Язык: English | Русский
Pulumi OpenStack tests (pulumi-tests)
Coverage lab that maximises pulumi_openstack, then probes remaining pack
operations over HTTP with non-empty body checks and full method coverage.
Quick start
# from repo root
make pulumi-tests
# or
cd pulumi-tests
make up && make build
make test-pulumi-smoke # fast: collection GET only
make test-pulumi # full: all pack ops × all HTTP methods
open reports/pulumi-report.html
Smoke vs full suite
| Target | Mode | What is exercised |
|---|---|---|
make test-pulumi-smoke |
Smoke (TEST_SMOKE=1) |
pulumi_openstack + collection GET nonempty checks (fast) |
make pulumi-tests / make test-pulumi |
Full lifecycle | pulumi_openstack + every pack operation × GET/POST/PUT/PATCH/DELETE, completeness assert (total == pack size), nonempty bodies on succeeded responses (DELETE/204 may be empty) |
Pack sizes (ops): yoga ~1060 → antelope ~1108 → caracal ~1196 → dalmatian ~1357.
What runs (per series: yoga → dalmatian)
- Activate OpenStack series pack
pulumi upprograms/os_coveragevia Automation API — creates/looks up resources withpulumi_openstack(identity, images, compute, networking, blockstorage, objectstorage, dns, orchestration)- Assert every stack export is non-empty
- HTTP-probe pack operations (smoke: collection GET; full: all methods lifecycle)
- Assert coverage completeness + nonempty JSON on successful body responses
pulumi destroy- Write
pulumi-report.html+pulumi-junit.xml
Reports
| File | Contents |
|---|---|
reports/pulumi-report.html |
HTML summary (expected vs actual + method breakdown) |
reports/pulumi-junit.xml |
JUnit |
reports/series-<name>.json |
Per-series pulumi + HTTP details |
reports/summary.json |
Aggregates |