Files
git.stella-ops.org/devops/compose/docker-compose.integration-fixtures.yml
master 2141fea4b6 Add integration e2e coverage: GitHubApp, advisory pipeline, Rekor, eBPF hardening
- GitHubApp: 11 new tests (health, CRUD lifecycle, update, delete, UI SCM tab)
- Advisory pipeline: 16 tests (fixture data verification, source management smoke,
  initial/incremental sync, cross-source merge, canonical query API, UI catalog)
  with KEV/GHSA/EPSS fixture data files for deterministic testing
- Rekor transparency: 7 tests (container health, submit/get/verify round-trip,
  log consistency, attestation API) gated behind E2E_REKOR=1
- eBPF agent: 3 edge case tests (unreachable endpoint, coexistence, degraded health)
  plus mock limitation documentation in test header
- Fix UI search race: wait for table rows before counting rowsBefore
- Advisory fixture now serves real data (KEV JSON, GHSA list, EPSS CSV)
- Runtime host fixture adds degraded health endpoint

Suite: 143 passed, 0 failed, 32 skipped in 13.5min (up from 123 tests)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 10:34:04 +03:00

105 lines
3.2 KiB
YAML

# =============================================================================
# STELLA OPS - QA INTEGRATION FIXTURES
# =============================================================================
# Deterministic external-service fixtures used to prove successful UI onboarding
# for the providers currently exposed in the local Integrations Hub.
#
# Usage:
# docker compose -f devops/compose/docker-compose.integration-fixtures.yml up -d
# =============================================================================
networks:
stellaops:
external: true
name: stellaops
services:
harbor-fixture:
image: nginx:1.27-alpine
container_name: stellaops-harbor-fixture
restart: unless-stopped
ports:
- "127.1.1.6:80:80"
volumes:
- ./fixtures/integration-fixtures/harbor/default.conf:/etc/nginx/conf.d/default.conf:ro
networks:
stellaops:
aliases:
- harbor-fixture.stella-ops.local
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1/api/v2.0/health | grep -q 'healthy'"]
interval: 15s
timeout: 5s
retries: 5
start_period: 5s
labels:
com.stellaops.profile: "qa-fixtures"
com.stellaops.environment: "local-qa"
github-app-fixture:
image: nginx:1.27-alpine
container_name: stellaops-github-app-fixture
restart: unless-stopped
ports:
- "127.1.1.7:80:80"
volumes:
- ./fixtures/integration-fixtures/github-app/default.conf:/etc/nginx/conf.d/default.conf:ro
networks:
stellaops:
aliases:
- github-app-fixture.stella-ops.local
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1/api/v3/app | grep -q 'Stella QA GitHub App'"]
interval: 15s
timeout: 5s
retries: 5
start_period: 5s
labels:
com.stellaops.profile: "qa-fixtures"
com.stellaops.environment: "local-qa"
advisory-fixture:
image: nginx:1.27-alpine
container_name: stellaops-advisory-fixture
restart: unless-stopped
ports:
- "127.1.1.8:80:80"
volumes:
- ./fixtures/integration-fixtures/advisory/default.conf:/etc/nginx/conf.d/default.conf:ro
- ./fixtures/integration-fixtures/advisory/data:/etc/nginx/data:ro
networks:
stellaops:
aliases:
- advisory-fixture.stella-ops.local
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1/health | grep -q 'healthy'"]
interval: 15s
timeout: 5s
retries: 5
start_period: 5s
labels:
com.stellaops.profile: "qa-fixtures"
com.stellaops.environment: "local-qa"
runtime-host-fixture:
image: nginx:1.27-alpine
container_name: stellaops-runtime-host-fixture
restart: unless-stopped
ports:
- "127.1.1.9:80:80"
volumes:
- ./fixtures/integration-fixtures/runtime-host/default.conf:/etc/nginx/conf.d/default.conf:ro
networks:
stellaops:
aliases:
- runtime-host-fixture.stella-ops.local
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1/api/v1/health | grep -q 'healthy'"]
interval: 15s
timeout: 5s
retries: 5
start_period: 5s
labels:
com.stellaops.profile: "qa-fixtures"
com.stellaops.environment: "local-qa"