为了方便您快速应用,可以参考 apimock-example 项目是如何使用
CIManager
的
首先,和单项目下的CI管理方式一样,在您的各个项目下添加一个.gitlab-ci.yml或.github/workflows/.github-ci.yml配置文件。在/template目录下有定义好的配置文件,您可以直接使用。
添加完之后,如往常一样,正常编写并提交您的项目即可
当您每次提交项目的时候,在runner机器上都会运行CIManager,它的底层运行原理如下图所示,详细运行过程可以查看这里
下面是所支持的系统级别的变量
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
GOPATH | 否 | Go环境配置 | 无 |
下面是所支持的项目级别的变量
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
PROJECT_NAME | 否 | 项目名称 | 无 |
下面是在不同Job中所支持的变量
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_PRE_CHECK_CMD | 否 | 预检查的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_PRE_INSTALL_CMD | 否 | 预安装的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_CHECK_CODE_CMD | 否 | 代码检查的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_UNIT_TEST_CMD | 否 | 单元测试的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_APIDOC_GEN_CMD | 否 | 生成接口文档时的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CI_STAGE_BUILD_JOB_LOCAL_BUILD_CMD | 是 | 项目构建时的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CD_STAGE_MONITOR_JOB_SSH_CMD | 否 | 执行SSH部署时的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CD_STAGE_MONITOR_JOB_PULL_ARTIFACT_CMD | 否 | 使用拉取镜像部署时的命令 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CD_STAGE_MONITOR_JOB_API_TEST_CMD | 否 | 执行接口测试的命令 | 无 |
CD_STAGE_MONITOR_JOB_API_TEST_CMD_RES | 否 | 接口请求成功时的返回内容 | 无 |
变量名 | 必须 | 含义 | 备注 |
---|---|---|---|
CD_STAGE_MONITOR_JOB_HEALTH_CHECK_CMD | 否 | 执行健康检查的命令 | 无 |
CD_STAGE_MONITOR_JOB_HEALTH_CHECK_CMD_RES | 否 | 健康检查成功时的返回内容 | 无 |
无需任务复杂安装过程,直接通过Git方式clone到本地即可。
git clone https://github.com/WGrape/CIManager.git
如果您不需要对CIManager框架进行扩展开发,那么直接把它提交至您的私有仓库,并在您各个项目中的 .gitlab-ci.yml 或 .github/workflows/.github-ci.yml 配置文件中的 https://github.com/WGrape/CIManager.git 替换为CIManager在您私有仓库中的地址即可。
本框架源码轻量简单,如果不满足您的需求,您可以在CIManager框架基础上进行自定义开发,比如新增配置检查、依赖检查等丰富和加强CI/CD的流水线功能。具体请参考设计文档文档