在CI/CD项目的流水线中增加步骤后,需要设置步骤的参数。平台支持的步骤及步骤中所需的参数设置如下:
•Shell脚本
执行Shell脚本。直接在输入框中输入命令行即可。
•SSH代理
SSH授权凭证运行SSH命令。在使用SSH代理之前,需要先准备好SSH私钥,供此处使用。
输入SSH私钥,并在输入框中输入SSH命令即可。
•远程命令
通过SSH登录到远程终端执行命令。在执行远程命令时,需要先准备好SSH私钥。所需设置的参数如表 1所示。
表 1 远程命令参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
SSH私钥 |
远程登录终端所需的授权凭证。 |
- |
节点IP |
所需登录的远程终端的IP地址。 |
- |
SSH端口 |
SSH端口号,默认值为22,如果为其他值,请单击自定义SSH端口并填写端口号。 |
22 |
用户名 |
登录远程终端所使用的用户名。 |
- |
命令 |
执行的命令。 |
- |
•远程拷贝
通过SCP命令拷贝远程文件,可将远程主机上的文件拷贝至当前工作空间,也可将当前工作空间的文件拷贝至远程主机。在远程拷贝时,需要先准备好SSH私钥。所需设置的参数如表 2 所示。
表 2 远程拷贝参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
SSH私钥 |
远程登录终端所需的授权凭证。 |
- |
拷贝方向 |
选择拷贝方向。 可选择为由远端向当前工作空间拷或者由当前工作空间向远端拷。 |
- |
节点IP |
远程终端的IP地址。 |
22 |
SSH端口 |
SSH端口号,默认值为22,如果为其他值,请单击自定义SSH端口并填写端口号。 |
- |
用户名 |
登录远程终端所使用的用户名。 |
- |
远端路径 |
远端文件的路径。 |
- |
本地路径 |
本地文件的路径。 |
- |
•Git
从指定的Git代码仓库拉取代码,从Git仓库拉取代码时需要先创建授权凭证。在CI/CD项目的流水线中设置 Git步骤与在创建CI/CD项目时,设置了代码关联并选择Git类型的代码仓库的效果一致。参数说明如表 3 所示。
表 3 Git参数设置说明
参数 |
设置说明 |
设置示例 |
---|---|---|
仓库地址 |
Git类型的代码仓库地址。 |
- |
仓库分支 |
检出的代码分支。 |
master |
授权类型 |
可以根据用户名密码和SSH私钥两种方式进行认证。 |
- |
检出路径 |
检出代码的存放路径,默认为当前工作空间。 |
- |
•SVN
从指定的SVN代码仓库拉取代码,从SVN仓库拉取代码时需要先创建授权凭证。在CI/CD项目的流水线中设置 SVN步骤与在创建CI/CD项目时,设置了代码关联并选择SVN类型的代码仓库的效果一致。参数说明如表 4 所示。
表 4 SVN参数设置说明
参数 |
设置说明 |
设置示例 |
---|---|---|
仓库地址 |
Git类型的代码仓库地址。 |
- |
仓库分支 |
检出的代码分支。 |
master |
授权类型 |
可以根据用户名密码和SSH私钥两种方式进行认证。 |
- |
检出路径 |
检出代码的存放路径,默认为当前工作空间。 |
- |
•打印信息
打印指定的输出信息。在信息内容输入框中输入需要打印的信息即可。
•归档成品
归档流水线运行的产物。参数说明如表 5所示。
表 5 归档成品参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
成品路径 |
成品的归档路径。 |
- |
忽略空成品 |
空成品是否影响构建结果。 •开启:空成品不影响构建结构。 •关闭:空成品会导致构建失败。默认为关闭。 |
关闭 |
大小写敏感 |
归档文件的文件名大小写是否敏感,默认为大小写不敏 |
- |
默认排除 |
是否排除**.git,**.svn文件。 |
- |
排除成品路径 |
归档时,排除某路径下的内容。可使用通配符,如“target/*”。 |
|
仅构建成功时归档 |
是否只在构建成功时归档成品。 •开启:只有构建结果为成功时归档。 •关闭:无论构建结果为成功或者失败均归档。默认为关闭。 |
|
上传至软件包 |
可新建软件包,也可选择已有软件包,指定版本即可。 |
- |
如果CI/CD任务中包含归档成品的步骤,则流水线构建成功后,可在流水线详情的最新构建产出物页签下载流水线构建结果。
•确认通知
在流水线的某个阶段,可通知用户审核或者确认流水线的执行状态。
表 6 确认通知参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
通知内容 |
流水线执行到该步骤时,邮件通知用户的的内容。 |
- |
通知组 |
通知用户设置,可设置为该项目中已经设置的通知组。 |
- |
参数定义 |
在流水线中增加参数。在此处增加参数后,在通知用户确认通知时,可填写该参数的值,并且参数可供后续步骤使用。 |
- |
•SonarQube代码检查
与SonarQube代码检查工具对接,检查并保证代码质量。添加该步骤时,请先搭建SonarQube服务环境,并保证与管理平台节点之间的网络互通。
表 7 SonarQube代码检查参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
SonarQube服务地址 |
SonarQube服务地址。 |
- |
SonarQube访问令牌 |
SonarQube的访问令牌,用与和管理平台的对接认证。 |
- |
Quality Gate不达标时停止流水线 |
开启该项后,当Quality Gate不达标时流水线停止执行,默认不开启。 |
- |
配置方式 |
Quality Gate的配置方式,可设置为如下值: •简易配置,即采用默认配置。 •配置文件路径:采用自定义配置,需要填写配置文件的路径。 •配置文件内容:采用自定义配置,需要输入配置文件的内容。 |
- |
SonarQube项目名称 |
用于代码检查的SonarQube项目名称。 |
- |
代码路径 |
SonarQube项目中检查代码的路径。 |
- |
自定义步骤需先在在项目设置模块的CI/CD自定义步骤内新建完成。
新建成功后,可在CI/CD的自定义步骤显示。
•Maven构建
通过Maven命令构建一个Maven项目。在命令输入框中输入Meven构建相关相关令即可。
•Maven测试
运行Maven测试。在命令输入框中输入Maven测试相关命令即可。
•Go构建
通过Go命令构建一个Go项目。在命令输入框中输入Go构建相关令即可。
•Go测试
运行Go测试。在命令输入框中输入Go测试相关命令即可。
•Python测试
运行Python测试。在命令输入框中输入Python测试相关命令即可。
•Node.js测试
运行Node.js测试。在命令输入框中输入Node.js测试相关命令即可。
•Docker Build
根据Dockerfile构建Docker镜像。参数说明如表 8所示。
表 8 Docker Build 参数
参数 |
设置说明 |
设置示例 |
---|---|---|
镜像仓库 |
构建docker镜像所使用的基础镜像所在的镜像仓库。 如果为管理平台中的镜像或者Docker Hub镜像仓库中的镜像,直接填写镜像名称即可。如果为公有镜像仓库或者其他第三方镜像仓库中的镜像,请填写完整镜像路径。 |
wordpress |
镜像标签 |
构建docker镜像所使用的基础镜像的镜像标签。可使用全局环境变量中定义的参数值。 |
latest |
构建上下文路径 |
如果代码仓库较大,并且构建docker镜像所使用的部分代码通过文件夹组织,可填写构建上下文路径,以避免加载不必要的文件,提高构建效率。默认值为全路径。如果为代码仓库的全路径,则填写为“.”。如果为其他值,请填写为构建docker镜像所需代码的路径。 |
- |
Dockerfile来源 |
构建镜像所示用的Dockerfile,可设置为Dockerfile内容或者Dockerfile路径: •Dockerfile内容: o基础镜像(FROM):设置基础镜像信息。 o环境变量(ENV):单击“添加环境变量”,配置环境变量信息。 o安装前执行命令(RUN):输入安装前需执行的命令。 o导入文件(COPY&ADD):单击“添加文件”,上传源文件,并设置容器内目标路径。 o安装执行命令(RUN):输入安装执行命令。 o入口点(ENTRYPOINT):设置入口点信息。 o其他配置:根据实际情况选择配置其他信息,默认不开启。开启后,可配置的信息包括当前用户、匿名卷、健康检查、服务端口和启动命令。 •Dockerfile路径: 如果Dockerfile文件已编写完成并放至代码仓库中,则只需要填写路径即可。如果构建docker镜像无关代码仓库,请保持默认值即可。 |
Dockerfile内容 |
•Docker Push
将docker镜像上传至指定的镜像仓库。默认上传至系统镜像仓库中,也可上传至其他镜像仓库中。参数说明如表 9所示。
表 9 Docker Push 参数
参数 |
设置说明 |
设置示例 |
---|---|---|
镜像仓库 |
需要Push的镜像。 Docker Push一般与Docker Build结合使用,请选择该流水线中此阶段之前所构建的镜像。 |
wordpress |
镜像标签 |
需要Push的镜像的镜像标签。 请选择该流水线中此阶段之前所构建的镜像的镜像标签。 |
latest |
镜像仓库类型 |
默认的Push地址为上传到当前项目下的同名镜像仓库,可选指定镜像仓库和外部镜像仓库。外部镜像仓库需要指定仓库定制以及认证使用的用户名和密码。 |
- |
•镜像扫描
扫描该流水线中,系统镜像仓库中的镜像的安全漏洞。
表 10 镜像扫描参数说明
参数 |
设置说明 |
---|---|
镜像名称 |
选择需要扫描的并且已经在流水线中构建的镜像名称。 |
镜像标签 |
需要扫描的镜像的标签。 |
条件 |
设置什么条件下扫描成功。 |
扫描结果处理 |
可设置为如下值: •扫描失败则流水线失败。 •将成功/失败的次数记录在环境变量中。 |
•Kube Apply
创建或者更新Kubernetes部署。参数说明如表 11所示。
表 11 Kube Apply 参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
集群 |
Kubernetes部署所在的集群,通过下拉框选择,可选 择分配给该项目的Kubernetes集群。 |
wordpress |
设置工作负载 |
选择创建工作负载的方式,可通过YAML文件方式或者指定部署镜像: •填写YAML文件内容:在输入框中填写YAML文件内容即可。为避免YAML文件格式导致CI/CD项目构建错误,建议先通过YAML语法检查工具检查YAML文件的语法。当YAML文件相对比较简单和固定时,可选用该方式。 •指定YAML文件路径:可编写YAML文件并放至代码仓库,选用该方式并填写YAML文件路径。 •指定部署镜像:可通过界面指定工作负载名称及使用的镜像来部署工作负载。选用该方式时,需要设置部署名称、镜像仓库名称和镜像标签。 |
latest |
部署名称 |
部署或者更新的工作负载名称。设置工作负载方式为指定部署镜像时需要设置。 |
- |
镜像仓库名称 |
设置工作负载方式为指定部署镜像时需要设置部署工作负载所使用的镜像仓库名称和标签。通过下拉框选择。 |
- |
镜像标签 |
镜像tag版本号 |
•Kube Update
更新Kubernetes部署所使用的镜像。参数说明如表 12所示。
表 12 Kube Update参数说明
参数 |
设置说明 |
设置示例 |
---|---|---|
集群 |
Kubernetes部署所在的集群,通过下拉框选择。 |
- |
部署名称 |
需要更新镜像的的工作负载名称,通过下拉框选择。 |
my-deployment |
容器名称 |
选择容器名称,通过下拉框选择。 |
- |
镜像仓库名称 |
更新工作负载所使用的镜像仓库名称和标签。通过下拉框选择。 |
- |
镜像标签 |
镜像tag版本号 |
•更新应用
更新流水线中的Kubernetes应用。
表 13 更新应用参数说明
参数 |
设置说明 |
---|---|
集群 |
应用所在的集群。 |
更新应用 |
设置更新应用。 |
应用名称 |
如果选择创建应用,请填写应用名称。 如果选择更新应用,请选择更新的应用名称。 |
镜像名称 |
更新镜像所使用的镜像名称。 |
镜像标签 |
更新应用所使用的镜像标签。 |
端口 |
设置应用的容器端口和服务端口。 |
•模板创建/更新应用
表 14 创建/更新应用参数说明
参数 |
设置说明 |
---|---|
集群 |
应用所在的集群。 |
应用名称 |
如果选择创建应用,请填写应用名称。 如果选择更新应用,请选择更新的应用名称。 |
应用模板 |
内建模板和自定义模板。 |
模板版本 |
所选模板的具体版本。 |