Skip to content

test: verify UBI collector build in CI (PR #229 E2E)#3

Closed
sonupreetam wants to merge 2 commits into
mainfrom
test/pr229-ubi-verify
Closed

test: verify UBI collector build in CI (PR #229 E2E)#3
sonupreetam wants to merge 2 commits into
mainfrom
test/pr229-ubi-verify

Conversation

@sonupreetam

@sonupreetam sonupreetam commented May 25, 2026

Copy link
Copy Markdown
Owner

Temporary PR to verify the UBI10 Containerfile build in GitHub Actions CI environment.

This pushes the exact commit from 229 to trigger the integration-test job, which builds the collector using Containerfile.collector with UBI10 base images.

Purpose: Verify that microdnf install -y ca-certificates succeeds in CI's nested podman environment (it fails locally due to subscription-gated RHEL repo access).

This PR will be closed after verification.

BREAKING CHANGE: Container base images switch from Alpine/distroless to
UBI10 (ubi-minimal for certs, ubi-micro for runtime). CA cert path changes
to /etc/pki/tls/certs/ca-bundle.crt. CI jobs run inside UBI10 containers.
hack/ directory contents moved to configs/ and deploy/.

- Add Ginkgo v2 E2E tests at tests/integration/ with per-layer
  sub-packages (base, storage, storage-tls, enrichment), mock Compass
  TLS server, and shared Go helpers
- Containerize all ci_local.yml jobs on UBI10 with new integration-test
  job using vfs storage driver for nested podman
- Add compose profiles (storage, enrichment, debug) with COLLECTOR_CONFIG
  env var for layer-specific collector config selection
- Move hack/ contents to configs/ (collector configs, loki, openssl.cnf)
  and deploy/ (terraform)
- Centralize tool management in .taskfiles/tools.yml with SHA256
  verification via .tool_checksums
- Bump go-gemara to v0.4.0; add Ginkgo CLI as tool directive in go.mod
- Drop unused ctx variable in proofwatch/cmd/validate-logs/main.go

Details:

Integration tests:
- Mock Compass at tests/integration/mock-compass/ serves fixture-driven
  /v1/enrich and /healthz responses over TLS
- Typed Go helpers (postEvidence, queryLoki, listS3Objects,
  execInContainer) replace Venom HTTP and exec executors
- RustFS test bucket uses anonymous public access for plain HTTP S3
  ListObjectsV2 queries
- Ginkgo runs via `go tool ginkgo` (tool directive, no global install)
- CI passes --succinct; local runs use -vv for full hierarchy output

CI (ci_local.yml):
- All jobs run in registry.access.redhat.com/ubi10/ubi:latest with
  safe.directory workaround for actions/checkout container job issue
- golangci-lint sets GOWORK=off and GOFLAGS=-buildvcs=false to lint
  modules independently in the workspace repo
- integration-test job pins podman-compose with --require-hashes

Compose:
- RustFS healthcheck uses /health (not /minio/health/live)
- Collector volumes use :U flag for podman rootless UID remapping
- Loki queries use indexed resource attributes directly, replacing
  the removed {exporter="OTLP"} label
- Fix S3_DISABLE_SSL env var to drop unsupported ${VAR:-default}
  syntax in collector config

Refs: complytime/complytime-collector-components#181

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@sonupreetam sonupreetam force-pushed the test/pr229-ubi-verify branch from 6eed494 to 295a207 Compare May 25, 2026 10:39
@github-actions

Copy link
Copy Markdown

✅ CRAP Load Analysis: PASS (no baseline)

No baseline file found. Showing current scores without comparison.
Commit a baseline to .gaze/baseline.json to enable regression detection.

Summary

Metric Value
Functions analysed 23
Avg complexity 4.4
Avg line coverage 0%
Avg CRAP score 38
CRAPload (>= 15) 12
Avg contract coverage 0%
Avg GazeCRAP score 0
GazeCRAPload (>= 15) 0

View full analysis logs

@sonupreetam

Copy link
Copy Markdown
Owner Author

Verification complete. All CI checks passed — UBI Containerfile builds successfully in GitHub Actions CI environment. Closing.

@sonupreetam sonupreetam deleted the test/pr229-ubi-verify branch May 25, 2026 10:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants