在Kubernetes中自动逐出未使用的部署

时间:2019-05-30 17:54:17

标签: kubernetes continuous-integration gitlab

在暂存环境中,我们通过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

解决这个问题的最佳方法是什么?

0 个答案:

没有答案