Skip to main content
cops release check evaluates release gates configured in cops.project.json. Each gate defines a type (e.g. bamboo-latest-build-success), severity, and optional waiver. The command exits with a non-zero code when any blocking gate fails.

Usage

cops release check [flags]

Flags

--all
boolean
default:"false"
Run all enabled gates defined in release.gates. When omitted and --gate is not specified, only the first enabled gate is evaluated.
--gate
string
Run a single gate by its id. Mutually exclusive with --all.
--project
string
Project key from the projects map in cops.project.json. Defaults to defaultProject when set, otherwise uses the top-level release block.
--output
string
default:"table"
Output format: table, json, or markdown.
--insecure
boolean
default:"false"
Disable TLS certificate validation. Use only with self-signed certificates in trusted networks.
--profile
string
Override the active config profile.

Output columns

project, gateId, type, severity, owner, team, ticket, slaHours, rawStatus, status, blocking, waived, waiverExpires, details
ColumnDescription
gateIdGate identifier from cops.project.json
typeGate type (e.g. bamboo-latest-build-success)
severitySeverity level: low, medium, high, or critical
rawStatusRaw evaluation result: pass, warn, or fail
statusEffective status after applying waivers: pass, warn, fail, or waived
blockingtrue when the gate failure blocks the release
waivedtrue when an active waiver has been applied
detailsHuman-readable evaluation detail

Exit codes

CodeMeaning
0All evaluated gates passed
20One or more gates are blocking (fail with high/critical severity or raw fail)
10One or more gates produced a non-blocking warn or waived result
30Configuration error (missing or invalid cops.project.json)
A gate with severity high or critical that evaluates to warn is treated as blocking. Gates with severity low or medium that evaluate to warn are non-blocking. An active waiver changes the effective status to waived and clears the blocking flag regardless of severity.

Supported gate types

TypeChecks
jira-stories-existJira issues exist for the configured fixVersion
confluence-page-existsRequired Confluence page exists in the space
confluence-page-sectionsRequired sections are present in the Confluence page body
confluence-page-freshnessConfluence page was updated within maxAgeDays
bitbucket-release-branch-existsRelease branch exists in the Bitbucket repository
bitbucket-pr-checksOpen PRs targeting the release branch are within threshold
bamboo-plan-activeBamboo plan is enabled and active
bamboo-latest-build-successLatest Bamboo build for the plan has a SUCCESS state
checkmarx-scan-thresholdCheckmarx scan results are within configured H/M/L thresholds
deployment-freeze-windowCurrent time is not inside a configured freeze window
bamboo-multi-env-promotionBamboo deployment environments were promoted in order

Examples

cops release check --all
gateId               type                        severity  status  blocking  details
───────────────────  ──────────────────────────  ────────  ──────  ────────  ─────────────────────────────────────
bamboo-build-check   bamboo-latest-build-success  high     pass    false     PROJ-PLAN-42 is successful
confluence-docs      confluence-page-exists       medium   pass    false     Found page 98765
branch-check         bitbucket-release-branch-exists  high  pass  false     Release branch exists

cops release summary

Cross-product release readiness summary.

cops release evidence generate

Generate evidence artifacts from gate evaluations.

Build docs developers (and LLMs) love