Skills

Ginkgo CI Setup

Sets the Ginkgo CI flag set and explains why each flag is used.

Install

npx skills add onsi/ginkgo --skill ci -g -a claude-code -y
Repository
onsi/ginkgo9.1k
Category
DevOps
Updated
26d ago
License
MIT
Context cost
Lightabout 1,486 tokens
Runs scripts
No, instructions only

What it does

Configure Ginkgo for continuous integration, the recommended CLI flag set and the rationale for each flag (-r -p --randomize-all --randomize-suites --fail-on-pending --fail-on-empty --keep-going --cover --race --trace --json-report --timeout --poll-progress-after/-interval), invoking via go run to pin the CLI to go.mod, the exit-code safeguards that catch committed Focus/Pending and empty filters, collecting report and coverage artifacts with --output-dir, CI-friendly output (--github-output/--force-newlines/--no-color), and the fixed per-suite cost --race adds (GORACE=atexit_sleep_ms=0). Use when setting up or hardening a CI pipeline for a Ginkgo suite.

Ginkgo in CI

A CI invocation should maximize signal, surface flakes and spec pollution, catch mistakes that pass locally, and emit machine-readable artifacts, while collecting every failure in one run. This builds on the CLI (ginkgo:running) and report formats (ginkgo:reporting). Full rationale: https://onsi.github.io/ginkgo/#recommended-continuous-integration-configuration.

The recommended flag set

Invoke via go run so the CLI version always tracks the github.com/onsi/ginkgo/v2 in your go.mod, no separately-installed binary to drift (→ ginkgo:setup).

go run github.com/onsi/ginkgo/v2/ginkgo \
  -r -p --randomize-all --randomize-suites \
  --fail-on-pending --fail-on-empty --keep-going \
  --cover --coverprofile=cover.profile --race --trace \
  --json-report=report.json --output-dir=.ginkgo-report \
  --timeout=TIMEOUT --poll-progress-after=Xs --poll-progress-interval=Ys
Read the whole SKILL.md on GitHub

More in DevOps