CICD

最近更新时间:2020-01-14 16:10:51

概述

  1. CICD主要目标是实现代码的自动化构建容器镜像,并进行容器镜像的自动化更新。
  2. 控制台操作包含三个步骤:设置代码源-镜像构建-触发器。
  3. 该功能目前内测阶段,如需开通,请提交工单申请。

设置代码源

目前支持绑定GitHub、GitLab的代码仓库。

操作步骤

1、进入【控制台】-【容器引擎】-【镜像仓库】-【我的镜像】,点击【设置代码源】
CICD
2、 进入设置代码源页面,设置GitHub、GitLab账户,用户在每个地域只能分别设置一个GitHub、GitLab账户。
CICD
3、
设置GitHub账户
CICD
地址:https://api.github.com,不可修改
私有Token: 获取的路径,登录github的地址和账户,点击右上角的账户,进入【Settings】-【Developer settings】-【Personal access tokens】-【Generate new token】,创建至少包含repo、admin:repo_hook权限的token。
设置GitLab账户
CICD
地址:Gitlab的地址,需要有公网访问能力。客户部署的Gitlab版本需要支持api v4版本。
私有Token:获取的路径,登录gitlab的地址和账户,点击右上角的账户,进入【Settings】-【Access Tokens】,可以申请Token,注意Token需要有api权限;有效期不设置则是长期有效,如果设置,请注意有效期并及时更新Token。

镜像构建

根据设置代码源以及相关规则,自动构建容器镜像,并推送到所在的镜像仓库。

新建构建规则

操作步骤

1、进入【控制台】-【容器引擎】-【镜像仓库】-【我的镜像】,点击镜像名称,进入镜像的详情页,选择镜像构建页面。
2、点击新建构建规则:
CICD
编译环境:支持Java 版本:JDK 8u171,Maven 版本:Maven 3.5.4。
代码源:如果未设置代码源,也可以按照上一步的方式,设置代码源。设置代码源后,可以配置构建规则。
命名空间、仓库:选择所在的命名空间及仓库;GitHub直接选择仓库。
触发方式:支持添加Tag时触发或者提交代码到分支时触发;选择提交代码到分支时,需要指定分支。
镜像版本命名规则:支持自定义前缀、分支/标签、更新时间、commit号,支持多选。容器镜像版本只支持大小写英文字母、数字、三种特殊字符.、-、_。版本命名最大支持128个字节,如果超过该字节数会导致构建镜像失败。
Dockerfile路径:默认是Dockerfile。如果 Dockerfile位于其它目录,例如位于仓库的test目录下,文件名为example,那么 Dockerfile 路径为 test/example。
3、点击确定后,信息会保存到构建镜像列表页。

构建镜像

1、构建镜像列表页:显示代码源、触发规则、版本命名规则、Dockerfile路径、操作(立即构建、编辑、删除)。
2、在构建镜像列表里,【操作】-【立即构建】,支持三种类型:分支、tags、commit号。

构建记录

1、构建记录列表页:显示构建ID、镜像版本、开始时间、耗时(秒)、构建状态、操作。
2、构建状态有成功、失败、取消、排队中、构建中。操作包括取消、日志。取消是在排队中、构建中状态支持。日志是可以查看构建日志。

说明:

1、构建镜像失败常见原因:版本命名包含非法字符、字节数超过128个;非java的编译环境。
2、构建规则删除后,基于该规则的构建记录的日志将无法查看。

触发器

根据触发条件,自动更新所在地域集群的容器镜像。

新建触发器

操作步骤

1、进入【控制台】-【容器引擎】-【镜像仓库】-【我的镜像】,点击镜像名称,进入镜像的详情页,选择触发器页面。
2、点击新建触发器:
CICD
名称:输入名称。
触发条件:全部触发、正则表达式触发、指定tag触发。
触发动作:更新容器镜像。
选择容器:支持同地域下集群,选择部署集群、命名空间、工作负载类型、工作负载、容器,容器支持多选。目前工作负载类型支持Deployment。
3、选择确定后,信息保存到触发器列表页。

触发器

1、触发器列表页显示触发器名称、触发器条件、触发动作、选择容器、创建时间、操作。操作支持编辑和删除。

触发记录

1、触发器记录列表页,显示触发器名称、触发器条件、触发动作、触发结果、触发时间。

说明

1、触发记录结果为失败的常见原因有:容器不存在。

金山云,开启您的云计算之旅

免费注册