设置持续发布(CD)

流水线中支持加入各种各样的任务
这里我们以 2048 项目为例演示如何设置持续发布。示例代码库:  https://github.com/DaoCloud/dao-2048 。你可以 Fork 该代码进行试验。
请参考“ 使用流水线构建镜像” 构建出可部署的镜像。
我们先来部署一个应用,使用胶囊主机部署演示,你如果已经接入也可以选择使用自己的主机。
点击镜像页的“部署最新版本”,
填入应用名称,2048 不需要额外配置,所以根据引导进行部署即可。
部署后在应用界面可以找到映射到主机的端口,根据你主机的外网IP可以进行访问(胶囊主机外网IP可以在主机页面找到)
回到项目页面,点击流程定义。点击右侧加号,添加一个阶段,我们把它命名为发布阶段
在发布阶段点击添加任务
选择“发布到自有主机”任务类型,我们设置为仅当 master 分支更新时执行
选择刚刚部署的应用,完成任务创建

提示

项目流水线设置里的发布和应用下的自动发布区别:

流水线下的发布任务:用户可以设置执行条件,当满足触发条件,应用才会自动发布

应用下的自动发布:应用里面的自动发布开启了,只要有新的镜像就会发布,这个是兼容老的Push镜像到我们Hub从而发布的,不推荐使用。

注意:当两个发布同时设置时,执行记录里发布会报错执行失败,原因是两个发布起了冲突。

我们已经设置了应用更新的任务,当流水线被 master 分支触发执行时,会更新应用的镜像版本,达到持续发布的效果。
现在试一试对 2048 提交 master 分支的代码吧。
流水线被触发后会按照我们的设置进行“测试”、“构建”,然后触发自动发布动作。

参考文档