Gates 12–14 run exclusively in the GitLab CI pipeline. They handle deployment, security scanning, and package publishing — operations that require CI infrastructure and credentials.

Gate 12: Docs Deploy

Deploys documentation to GitLab Pages.

What it does:

Requirements:

Why it matters:

Automated documentation deployment ensures users always have access to the latest docs.

Token management:

CI_BOT_TOKEN is configured at the group level (not per-project). Group tokens expire on a schedule tracked in the governance repository:

Group Token expires
plesty/hub 2027-07-22
plesty/core 2027-07-06
plesty-management (uni) 2027-07-01

Never create a per-project CI_BOT_TOKEN — it would shadow the group token and expire separately.

Gate 13: SAST Secret Detection

Runs GitLab's Static Application Security Testing (SAST) secret detection.

What it does:

Why it matters:

Prevents credential leaks that could compromise the project or infrastructure.

Gate 14: Build & Release

Builds the package and publishes to PyPI when a version tag is pushed.

What it does:

Trigger:

# Push a version tag to trigger a release
git tag v0.3.0
git push origin v0.3.0

Why it matters:

Automated publishing ensures consistent releases and reduces manual effort.

CI pipeline stages

The CI pipeline is organized into four stages:

stages:
  - check
  - security
  - deploy
  - release
Stage Color Gates
check #67e8f9 (cyan) 1–11 (except 11, skipped in CI)
security #f59e0b (amber) 13
deploy #3b82f6 (blue) 12
release #8b5cf6 (violet) 14

CI template

The CI pipeline is defined using the plesty-standard-ci component:

include:
  - component: $CI_SERVER_FQDN/plesty/plesty-ci/plesty-standard-ci@exp
    inputs:
      standard: quantum
      extra_branch: exp
      access_token: $CI_BOT_TOKEN

Next steps