基于 Spring Boot 的微服务持续交付案例

    • 项目案例源码: (opens new window) 也可配置自己的私有仓库使用
    • 服务 Yaml 文件:基于 Spring Boot 的微服务持续交付案例 - 图2 (opens new window)
    • 配置 GitHub 的 Webhook,本案例以项目级的 WebHook 为例,全局 Webhook 请参考

    步骤 1:产品交付-项目配置

    • 创建项目,具体内容如下图所示:

    • 接下来会看到创建成功的提示:

    创建项目

    • 创建服务,如下图所示:

    提示

    创建服务有两种方式,第一种是选择平台编辑直接把 Yaml 内容粘到系统中,第二种是选择从仓库导入 Yaml 文件,示例中采用第二种。

    • 点击仓库托管,在弹出的窗口中选择代码仓库和 worker 服务 Yaml 所在文件目录,点击加载。
    • 系统会自动检测 Yaml 格式是否合法,右侧会自动解析出来系统变量、自定义变量和服务组件,这里也可以继续添加自定义变量。具体过程如下图所示:
    • 创建构建,这里可以选择 worker-e2e 这个服务组件添加构建,然后选择代码库和添加构建脚本,具体如下图所示:

    创建构建

    构建脚本如下:

    添加完成后,点击。

    • 点击仓库托管,继续添加 DB (postgres) 和 Redis 服务,如下图所示。

    提示

    1. 若同一中间件服务针对不同环境需要使用不同的服务地址,可以通过设置环境变量的方式配置
    • 添加成功后,点击下一步,完成服务配置。

    步骤 3:产品交付-加入运行环境

    • 进入「加入运行环境」,系统会自动创建两套环境和三条工作流,两套集成环境分别给开发和测试使用,三条工作流也会自动绑定对应的开发环境以达到持续交付的目的。具体如下图所示:
    • 点击运行第一条工作流,来完成 dev 环境的持续交付,点击执行任务

    运行工作流

    • qa 环境的持续交付类似的操作,不赘述。

    到此,您已熟悉 Zadig 的基本功能了,下面将展示如何配置自动触发工作流和版本交付。

    步骤 5:配置自动触发工作流

    • 创建触发器,修改 dev 工作流添加触发器,系统目前支持 push 和 pull_request 两种事件,具体如下图所示:

    创建系统 Webhook

    • 在 GitHub 中提交 PR,本文以更新 dev 测试环境为例,在 check run 中会展示具体的系统工作流的状态,具体如下图所示:

    • 点击任务链接可以链接到系统里面查看具体信息,具体如下图所示:

    创建 PR