在暂存环境中,我们通过Gitlab从不同分支到测试Kubernetes集群中进行了大量部署。
因此,一个项目具有3个不同的功能分支,而一个错误修复分支则具有各自独立的部署。
一旦它们合并回发布分支,我正在寻找一种明智的方法来删除所有过时的4个分支(k8s部署),因为我们不再需要它们。
作为第一种方法,一旦合并发生,我将触发合并分支的删除部署命令。
feature112 -> git merge -> release -> k8s delete deployment feature112
但并非所有分支都将合并。功能可以取消,或者错误修正不是真正的错误。
对于这些情况,我正在考虑进行一项后台工作,以检查除发行版以外的其他项目是否有超过2天的部署,然后将其删除。然后,开发人员需要在需要时重新部署它。
例如,部署为:
myapp-release (stays forever)
myapp-feature-123 (deployed 23 hours ago - stay)
myapp-bugfix-124 (deployed 64 hours ago - delete)
因此,我试图不托管历史分支和错误修正。
AFAIK gitlab不支持删除分支触发器。
https://gitlab.com/gitlab-org/gitlab-ce/issues/54216
解决这个问题的最佳方法是什么?