功能介绍
创建流水线。
URI
POST /v3/manage/pipelinegroups/{group_name}/pipelines 参数说明请参见表4-19。
表4-19 参数说明
参数 是否必
选
参数类型 描述
group_name 是 String 流水线组名称,账号内唯一。小写字母开 头,后面跟小写字母、数字、下划线或中划 线(其中下划线最多允许连续两个,并且不 能直接与中划线相连),小写字母或数字结 尾,1-64个字符。
请求消息
请求参数
表4-20 Request Header 参数说明
参数 是否必
选
参数类型 描述
Content-Type 是 String 该字段内容填为“application/
json;charset=utf8”或者 “application/
参数 是否必 选
参数类型 描述
Accept 否 String 为“application/json”时返回json类型的 响应,默认返回yaml类型的响应。
X-Auth-Token 是 String 用户Token,需从华为云IAM服务获取。
表4-21 Request Body 参数说明
参数 是否必
选
参数类型 描述
name 是 String 流水线名。
description 否 String 流水线描述。
pre_operati
on 否 Object 流水线执行的前置操作,详情请参见表
4-42。
post_operati
on 否 Object 执行步骤的后置操作,详情请参见表
4-22。
params 否 Array of
objects 流水线全局变量,详情请参见表4-25。
stages 是 Array of
objects 流水线的执行步骤,详情请参见表4-26。
source 否 String 表示创建来源,软开云填devcloud,其他 服务不传或为空。
表4-22 notification 参数说明
参数 是否必
选
参数类型 描述
notifications 否 Array of
objects 执行结果通知信息
表4-23 notifications 参数说明
参数 是否必
选
参数类型 描述
type 是 Integer 通知的类型,默认值为7。
config 是 Object 通知的配置信息,详情请参见表4-24。
表4-24 config 参数说明
参数 是否必
选
参数类型 描述
email 否 String 用户的邮箱
user_id 是 String 用户id
user_name 是 String 用户名 phone_num
ber 否 String 用户的手机号
condition 是 Integer 执行结果通知条件,0:异常时和成功时都 通知;1:成功时通知;2:异常时通知。
pattern 是 Integer 执行结果通知方法,0:邮箱和短信都通
知;1:邮箱通知;2:短信通知。
表4-25 Param 参数说明
参数 是否必
选
参数类型 描述
name 是 String 参数名
description 否 String 参数描述
value 是 String 参数值
id 否 Integer 参数id
is_template 否 Boolean 是否是模板参数
表4-26 Stage 参数说明
参数 是否必选 参数类型 描述
name 是 String Stage名称。
exception_ha
ndler 否 Object 执行步骤的异常处理方式,详情请参见表
4-27。
input_resour
ces 否 Array of
objects 执行步骤的输入资源,详情请参见表4-38.
output_reso
urces 否 Array of
objects 执行步骤的输出资源,详情请参见表 4-38。
pre_operatio
n 否 Object 执行步骤的前置操作,详情请参见表
4-42。
参数 是否必选 参数类型 描述 post_operati
on 否 Object 执行步骤的后置操作,详情请参见表
4-43。
service_nam
e 是 String 步骤类型,可以为code_source、
jenkins_build、dockerfile_build、
test_review、official_deploy、
gray_deploy。
params 是 Object 步骤的配置信息,有service_name相关,
详情请参见表4-29,表4-31,表4-33,表 4-34,表4-36,表4-37。
表4-27 exception_handler 参数说明
参数 是否必选 参数类型 描述
type 是 String 触发类型,可以为return_to_start、
timeout_reset、ignore_error。
params 否 Object 异常处理的配置信息,timeout_reset类型 需填写params,详情请参见表4-28。
表4-28 timeout_reset exception_handler 的 params 参数说明
参数 是否必选 参数类型 描述
timespan 是 Integer 异常等待时间,单位为小时。
表4-29 code_source stage 的 params 参数说明
参数 是否必选 参数类型 描述
git_type 是 String git代码类型,可以为github、gitlab、
gitee 、devcloud。
url 是 String 代码访问地址,devcloud采用[email protected] 的地址,其他采用http(s)://xxx.git的地 址。
branch 否 String branch和tag二选一,branch为分支,tag 为标签。
tag 否 String 同上
code_trigger 否 Object 触发器类型,详情请参见表4-30。
表4-30 code_trigger 参数说明
参数 是否必选 参数类型 描述
trigger_tag_c
reate_event 是 Boolean 是否tag触发。
branchs 否 Array of
strings 分支触发,设置为分支名。
表4-31 jenkins_build stage 的 params 参数说明
参数 是否必选 参数类型 描述
basic_env 是 String 构建环境,可以为go、java、
SelfPkgBuild。
jenkins_shell 是 String 执行脚本。
user_basic_i
mage 否 Object 当basic_env为SelfPkgBuild提供,详情请 参见表4-32。
enable_cach
e 是 Boolean 是否开启缓存。
表4-32 user_basic_image 参数说明
参数 是否必选 参数类型 描述
namespace 是 String 镜像的组织名 repository 是 String 镜像的仓库名
tag 否 String 镜像的版本名
表4-33 dockerfile_build stage 的 params 参数说明
参数 是否必
选 参数类型 描述
dockerfile_c
ontent 否 String dockerfile_content与dockerfile_path二选 一。dockerfile_content为容器镜像的内容,
dockerfile_path为Dockefile在代码库的相对 路径。
dockerfile_p
ath 否 String 同上
参数 是否必 选
参数类型 描述
basic_env 否 String 编译环境,取值为“dockerfile_tomcat”、
“dockerfile_java”、“dockerfile_go”、
“dockerfile_path”,调用接口时无需设 置。
build_way 否 String 构建方式,调用接口时无需设置。
build_path 否 String 构建路径,默认值为当前路径。
表4-34 test_review stage 的 params 参数说明
参数 是否必
选
参数类型 描述
review_mod
e 是 String 审核类型,可以为all(全部通过)、
one(单人通过)。
review_user
s 是 Array of
objects 审核的用户信息,详情请参见表4-35。
表4-35 ReviewUser 参数说明
参数 是否必
选 参数类型 描述
user_name 是 String 用户名
email 否 String 用户邮箱
表4-36 official_deploy stage 的 params 参数说明
参数 是否必
选
参数类型 描述
deploy_mo
de 是 String 发布类型,可以为cceMode、cciMode。
input_info 是 String 发布信息
表4-37 gray_deploy stage 的 params 参数说明
参数 是否必
选
参数类型 描述
deploy_mo
de 是 String 发布类型,可以为cceMode、cciMode。
gray_mode 是 String 灰度发布类型,可以为istio、service。
input_info 是 String 部署信息
表4-38 Resource 参数说明
参数 是否必
选
参数类型 描述
name 是 String 资源名
description 否 String 资源描述
type 是 String 资源类型,可以为image、package、
code_source。
params 是 Object 资源的配置信息,与type字段有关。详情请
参见表4-39,表4-40,表4-41。
表4-39 code_source Resource 的 params 参数说明
参数 是否必
选
参数类型 描述
stage_index 是 String 对应code_source stage在流水线的位置,从 0开始计算。
表4-40 image Resource 的 params 参数说明
参数 是否必
选
参数类型 描述
namespace 是 String 镜像的组织名 repository 是 String 镜像的仓库名
tag 是 String 镜像的版本名
表4-41 package Resource 的 params 参数说明
参数 是否必
选
参数类型 描述
namespace 是 String 软件包的组织名
package 是 String 软件包名
version 是 String 软件包的版本名
file_path 否 String 文件路径 local_file_p
ath 否 String 构建后文件所在的相对路径,作为
jenkins_build stage的output_resources时需 要填写。
表4-42 PreOperation 参数说明
参数 是否必
选 参数类型 描述
operator 是 String 前置操作的触发机制,可以为and、or。
triggers 是 Array of
objects 触发方式,详情请参见表4-44。
说明triggers参数设置为空数组时,也会自动生成一个 Webhook触发器。
表4-43 PostOperation 参数说明
参数 是否必
选
参数类型 描述
triggers 是 Array of
objects 触发方式,详情请参见表4-44。
表4-44 Trigger 参数说明
参数 是否必
选 参数类型 描述
webhook 否 Object Webhook触发类型,详情请参见表4-45。
用于pre_operation的webhook时,
pre_operation返回的webhook中会有生成 的url地址,可调用该url触发流水线和执行 步骤;用于post_operation的webhook时,
须填写url具体内容。
channel 否 Object Channel触发方式,详情请参见表4-46。
参数 是否必 选
参数类型 描述
pipeline_pa ram_conver ts
否 Array of
objects 触发参数,详情请参见表4-47。
表4-45 Webhook 参数说明
参数 是否必
选
参数类型 描述
method 是 String 请求方式,用于post_operation的 webhook,可以为POST、GET。
url 是 String 请求url
表4-46 Channel 参数说明
参数 是否必
选
参数类型 说明
name 是 String 订阅or发布的Channel名
表4-47 PipelineParamConvert 参数说明
参数 是否必
选
参数类型 描述
name 是 String 参数名
pipeline_pa
ram_name 是 String 对应的流水线全局变量
请求示例
{ "name": "test4", "params": [ {
"description": "test", "name": "test", "value": "test"
} ],
"pre_operation": { "operator": "and", "triggers": [
]
"package": "pkg", "version": "ver"
},
"type": "package"
} ],
"name": "镜像构建", "output_resources": [ {
"description": "归档的镜像地址", "name": "image",
"params": {
"namespace": "root", "repository": "sdfasdfa", "tag": "asdfas.5"
},
"type": "image"
} ],
"params": {
"dockerfile_content": "FROM ubuntu\nRUN echo hello"
},
"service_name": "dockerfile_build"
} ] }
响应消息
响应参数
表4-48 响应参数
参数 参数类型 描述
name String 流水线名
id Integer 流水线id
group_id Integer 流水线组id group_name String 流水线组名 description String 流水线描述
pre_operation Object 流水线执行的前置操作,详情请参见表4-42。
params Array of objects 流水线全局变量,详情请参见表4-25。
stages Array of objects 流水线的执行步骤,详情请参见表4-49。
表4-49 Stage 参数说明
参数 参数类型 描述
name String 详情请参见表4-26。
id Integer 步骤id
参数 参数类型 描述 exception_han
dler Object 详情请参见表4-26。
input_resourc
es Array of objects 详情请参见表4-26。
output_resour
ces Array of objects 详情请参见表4-26。
pre_operation Object 详情请参见表4-42。
post_operatio
n Object 详情请参见表4-43。
service_name String 详情请参见表4-26。
params Object 详情请参见表4-26。
响应示例
{ "id": 1608, "group_id": 1531, "group_name": "default", "name": "test4", "description": "", "pre_operation": {
}
} ],
"output_resources": [ {
"name": "image",
"description": "归档的镜像地址", "type": "image",
"params": {
"namespace": "root", "repository": "sdfasdfa", "tag": "asdfas.5"
} } ],
"is_task": false }
] }
状态码
状态码如表4-50所示。
表4-50 状态码
状态码 描述
201 创建成功
400 错误的请求
401 鉴权失败
500 内部错误