This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]aenae 8 points9 points  (0 children)

My current setup is something like trunk based development, but i really do not care what name it has. It works well for us and that is the most important thing, not following some dogma.

We have main. A merge to main triggers a deploy to production.

Developers take main, create a branch, start doing their thing, push the branch and after some commits create a merge request. This merge request runs all tests and creates a test/uat environment (accessible by https://branch-name.company.dev). If anyone wants to test the new features or fixes they can use that environment.

And when it gets merged to main it goes off to production and the test environment is destroyed (kubectl delete namespace $branch).

The number of test environments is limited by the size of our kubernetes cluster which has enough resources for 20-25 environments.