Skip to content

Latest commit

 

History

History
48 lines (30 loc) · 2 KB

cicd.md

File metadata and controls

48 lines (30 loc) · 2 KB

The Glider aggregator CI/CD

CI/CD framework for the Glider aggreagator is based on the GitHub actions features.

Repository Events

  • push
  • pull_request (and also PR synchronize)*
  • pull_request_review
  • scheduler events

(*) note: Workflow configuration should include PULL_REVIEWERS configuration (semicolon-separated list of usernames) that can be the only chosen from the collaborators

GitHub Actions Secrets

These secrets have to be defined in the repository environment:

  • NOW_TOKEN: Zeit Now API token
  • NOW_PROJECT_ID: can be obtained from the ./now/project.json
  • NOW_ORG_ID: can be obtained from the ./now/project.json
  • GH_TOKEN_EXT: GitHub API token with following access rights: notifications, read:packages, repo, user, workflow, write:discussion, write:packages

CI/CD Acitivity Diagramms

push events handling is managed by the unit.yml workflow

push

pull_request events handling is managed by the integration.yml workflow

pull_request

pull_request_review events handling is managed by the reviews.yml workflow

pull_request_review

Environments and branches

Branches

  • develop branch is linked to the staging environment
  • master branch is linked to the production environment

Workflow

  1. A PR from developer's fork to develop create a temporary preview environment (one per PR)
  2. Once the PR is merged, this environment is promoted to staging
  3. A PR from staging to master creates a release candidate environment
  4. A merge or push in master promotes the release candidate to production