Files
vmware-api-simulator/pulumi-tests/README.ru.md
T
inecs 131e2e63d2 Document 2026-07-18 lab test results across EN/RU guides.
Record offline 161 passed, green test-vsphere probes, and full pulumi-tests
7/7 with REST matrix 1987/1987 (critical=0); note the Terraform cookbook
binary mismatch separately.
2026-07-18 09:38:37 +03:00

3.6 KiB
Raw Blame History

Гибридный lab-набор pulumi для vmware-api-simulator

Language / Язык: English | Русский

Гибрид под pulumi-tests/:

  1. Layer A (обязателен для «100%») — HTTP contract matrix: все IMPLEMENTED REST verb+path × majors 69, плюс синтетический HEAD на каждый GET
  2. Layer B (smoke / lifecycle) — официальный pulumi-vsphere
  3. Deep REST CRUD (session / folder / tag / content library / VM)
  4. SOAP-операции из /sdk/vimService.wsdl (без нового SOAP universe)

Одним pulumi-vsphere закрыть ~1092 REST verb×path нельзя — 100% = HTTP-матрица (coverage probed/declared, critical=0), а не число provider-ресурсов.

Последний lab-прогон (2026-07-18)

Полный гибрид (make pulumi-tests, seed-профиль small):

Проверка Результат
Кейсы 7 / 7 passed (PU-INV, PU-FOLDER, PU-VM, PU-TAG, PU-REST, PU-CRUD, PU-SOAP)
Layer A REST matrix 1987 / 1987 (critical=0) по majors 69
Verb histogram GET 682 · HEAD 682 · POST 301 · PUT 96 · PATCH 91 · DELETE 135

Артефакты (локальная копия с тома lab-reports; каталог в .gitignore): pulumi-tests/reports/pulumi-report.html, pulumi-tests/reports/pulumi-summary.json.

Связанные прогоны того же дня:

Набор Результат
make test (offline unit + contract) 161 passed
make test-vsphere pytest + surface/matrix/dump/nonempty 73 pytest passed; matrix/surface/nonempty 0 failures
Client cookbooks (часть test-vsphere) Python / Ansible URI / Pulumi-style OK; Terraform cookbook упал (Exec format error на .tools/terraform — несовпадение host/arch, не регрессия API)

Критерии pass (Layer A)

Проверка Правило
Declared methods_for_major(M) минус session DELETE, плюс HEAD на каждый GET
Probed Ровно один auth’d probe на каждый declared (probed == declared)
Critical 0 — нет 5xx/501; нет "stub": true / пустого тела на inventory-critical GET (major 9)
Coverage {probed - critical}/{declared} (aggregate + per major)
Verb histogram Включая HEAD

Что запускается

Кейс Слой Заметки
PU-INVPU-TAG B · pulumi-vsphere Lifecycle / inventory smoke
PU-REST A · HTTP matrix IMPLEMENTED × 69 + HEAD (smoke: major 9)
PU-CRUD / PU-SOAP extras Deep CRUD + существующий SOAP

Быстрый старт

make pulumi-tests          # полный гибрид
make pulumi-tests-smoke    # PU-INV + Layer A major-9

После прогона HTML-отчёт:

mkdir -p pulumi-tests/reports
cd pulumi-tests && docker compose --profile test run --rm --no-deps \
  -v "$(pwd)/reports:/out" pulumi-runner \
  cp /reports/pulumi-report.html /reports/pulumi-summary.json /out/
open reports/pulumi-report.html

Шлюз (в compose): https://api-gateway. Хост-алиас: 127.0.0.1:28443 (не занимает https://localhost / :18443 основного lab — после тестов make down). Seed: small. Артефакты: rest.coverage_line, rest.critical, rest.by_verb.