Skip to content

seanl-circle/gitops-promoter

 
 

Repository files navigation

codecov

GitOps Promoter

GitOps Promoter facilitates environment promotion for config managed via GitOps.

Video of the GitOps Promoter UI as a change is promoted through three environments

Key Features

  • Drift-free promotion process
  • Robust promotion gating system
  • Complete integration with git and SCM tooling
  • No fragile automated changes to user-facing files

The main ideas behind the project are explained in "Space Age GitOps: The Rise of the Humble Pull Request".

A live demo is presented in "Space Age GitOps: Lifting off with Argo Promotions".

The promotion gating system is detailed in "No More Pipelines: Reconciling Environment Promotion Via Commit Statuses".

Example

apiVersion: promoter.argoproj.io/v1alpha1
kind: PromotionStrategy
metadata:
  name: example-promotion-strategy
spec:
  gitRepositoryRef:
    name: example-git-repo
  activeCommitStatuses:
    - key: argocd-app-health
  proposedCommitStatuses:
    - key: security-scan
  environments:
    - branch: environment/dev
    - branch: environment/test
    - branch: environment/prod
      autoMerge: false
      activeCommitStatuses:
      - key: performance-test
      proposedCommitStatuses:
      - key: deployment-freeze

Getting Started

The project is currently experimental, please use with caution. See the docs site for setup instructions.

About

GitOps Environment Promotion tool that lets you focus on the "what," not the "how"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 86.5%
  • TypeScript 7.4%
  • SCSS 3.0%
  • Makefile 1.5%
  • Shell 1.0%
  • Dockerfile 0.3%
  • Other 0.3%