I’m trying to move my org into a more gitops workflow. I was thinking a good way to do promotions between environments would be to auto sync based on PR label.

Thinking about it though, because you can apply the same label multiple times to different PRs, I can see situations where there would be conflicts. Like a PR is labeled “qa” so that its promoted to the qa env, automated testing is started, a different change is ready, the PR is labeled “qa”, and it would sync overwriting the currently deployed version in qa. I obviously don’t want this.

Is there a way to enforce only single instances of a label on a PR across a repository? Or maybe there is some kind a queue system out there that I’m not aware of?

I’m using github, argocd, and circleci.

  • hascat
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    … it would sync overwriting the currently deployed version in qa. I obviously don’t want this.

    Then don’t allow the deployed software to be overwritten while tests are running? Your test environment should be treated as a singleton. Your CI system shouldn’t be able to affect the deployment while it’s being used.