Jenkins 是一个是基于 Java 开发的、非常经典的开源持续集成项目,被企业和团队广泛应用,但 Jenkins 本身并非云原生设计,随着微服务数量增长、业务架构上云 (Kubernetes) 趋势,工程师还是需要花额外时间对接基础设施、准备环境等等,平均一个工程师要切换若干个平台才能把一段代码写上线。通过现有 Jenkins 接入 Zadig 让团队不需要理解 CI/CD 概念,可以快速获得高并发的工作流和面向服务的集成环境,方便开发日常调试,不再为缺少测试环境,抢占测试环境而困扰。
本文主要介绍如何在 Zadig 上快速接入 Jenkins 工作流,实现端到端的微服务架构体系的持续交付。下面使用 Voting-app 作为演示项目,该项目包括 result、vote、worker、db 和 redis 这 5 个服务,实现了一个简单的投票系统。
准备工作
-
服务的 Jenkins Pipeline
-
服务的 Kubernetes Yaml 文件(案例源码在 GitHub Zadig 项目中,可直接使用):https://github.com/koderover/zadig/tree/main/examples/voting-app/freestyle-k8s-specifications
步骤 0:集成 Jenkins
-
-
登录 Jenkins,在用户配置中,生成一个 API Token,如下图所示。
-