Skip to content
KaDeep Docsv4.0
Open StudioDownload

Release Gate in CI

For QA leads2 min readUpdated for v4.0

Your view

The Release Gate makes your CI pipeline ask KaDeep before it ships. It runs your smoke suite against the new build, and stops the release if the evidence says no.

Before you start: you need to be a lead or owner on the project, and have a suite to run, such as smoke. See Suites.

In the sidebar, open Work Area › Setup & Control, then choose the Release Gate tab. Press Ctrl K (Windows) or ⌘ K (Mac), type Release Gate, and press Enter.
The Release Gate page: its status, Create pipeline token, the token list and how it works (Manage view)
The Release Gate page: its status, Create pipeline token, the token list and how it works (Manage view)

Manage view

The Release Gate page: its status, Create pipeline token, the token list and how it works (Hands-on view)
The Release Gate page: its status, Create pipeline token, the token list and how it works (Hands-on view)

Hands-on view

  • 1 The status. Not set up means your pipeline ships without asking KaDeep.
  • 2 Create pipeline token.
  • 3 Pipeline tokens: who made each one, when it was last used, and when it expires.
  • 4 How it works, with the step to copy into your pipeline.
The Create a pipeline token form: name, what it may do, and when it expires (Manage view)
The Create a pipeline token form: name, what it may do, and when it expires (Manage view)

Manage view

The Create a pipeline token form: name, what it may do, and when it expires (Hands-on view)
The Create a pipeline token form: name, what it may do, and when it expires (Hands-on view)

Hands-on view

  1. Type a 1 Name that says which pipeline uses it, like “GitHub Actions, main branch”.
  2. Choose 2 What it may do. For a gate, keep Run tests and read the verdict.
  3. Choose when it 3 Expires after: 30 days, 90 days, 1 year, or no expiry.
  4. Choose 4 Create token.
  5. Copy the token and save it in your CI as the secret KADEEP_CI_TOKEN.

Add releasegate.yml at the root of your repository, then add the step. Copy step on the page fills in your project and your KaDeep address (KADEEP_API) for you.

releasegate.yml
version: 1
project: <your project id>
checks:
- suite: smoke
# GitHub Actions: block the release until KaDeep says Release Ready
- name: KaDeep Release Gate
run: npx -y releasegate@^0.3
env:
KADEEP_CI_TOKEN: ${{ secrets.KADEEP_CI_TOKEN }}
The gate When
Passes The suite ran and passed, and Release Ready does not say hold.
Fails A test failed.
Fails Nothing ran, so there is no evidence.
Fails Someone put the release on hold on Release Ready.

The reason shows in the CI log and on Release Ready. In a localization project, the gate checks that each language is approved and fully covered instead.