使用GitLab CI持续交付
我一直试图围绕如何使用GitLab CI实现持续交付?
我为CD读取的每个解决方案都依赖于多步骤流水线(如Jenkins),或者是一个自定义应用程序,它监听webhook并提供自己的部署接口(例如,GitHub的HuBot + Heaven + Janky)。
如果我们只关心在Master分支上执行CD,并且我们的测试套件/部署步骤非常快,那么您可以简单地将它包含为由GitLab CI运行的shell脚本的一部分....但是,如果您的测试套件不是很快? 或者您的部署可能需要几分钟才能下载软件包等? 然后你的CI亚军忙于处理东西。
我能想出的最佳解决方案是:
有什么想法吗? 有没有人用GitLab CI实现过CD?
我会开发一个来自gitlab CI的webhooks的监听器,并且只处理跟踪分支的成功构建,然后需要结算并交付。 特别是,我没有看到需要从gitlab和corrdination处理webhooks,gitlab CI的信息似乎足够了(它包含构建状态,引用分支和提交id)。
根据您的存储布局,您可以通过下载存档
gitlab.example.net/namespace/repository/archive.zip?ref=githash
或检出相关提交并调用您的CD脚本。
如果您想整合CD脚本的反馈(无论部署是否有效),您可以调用跑步者的所有内容。 请记住,如果您的设置时间过长,您可以拥有多个参赛者。
链接地址: http://www.djcxy.com/p/22363.html