新建应用 (推荐)
功能介绍
新建应用。
调用方法
请参见如何调用API。
URI
POST /v1/applications
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
Content-Type |
是 |
String |
参数解释: 消息体的类型(格式)。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
X-Auth-Token |
是 |
String |
参数解释: 用户Token。 通过调用IAM服务接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 不涉及。 取值范围: 字符串,长度不超过20000个字符。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
参数解释: 项目id,获取方式请参见获取项目id。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
|
name |
是 |
String |
参数解释: 应用名称。 约束限制: 不涉及。 取值范围: 由中文字符、英文字母、数字及“_”、“-”组成,且长度为[3-128]个字符。 默认取值: 不涉及。 |
|
description |
否 |
String |
参数解释: 应用描述信息。 约束限制: 不涉及。 取值范围: 最大长度为1024个字符。 默认取值: 不涉及。 |
|
group_id |
否 |
String |
参数解释: 应用的分组id,传入no_grouped为未分组的应用。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符 或者 no_grouped。 默认取值: 不涉及。 |
|
is_draft |
是 |
Boolean |
参数解释: 是否为草稿。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
create_type |
是 |
String |
参数解释: 创建类型。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
slave_cluster_id |
否 |
String |
参数解释: slave集群id,默认为空,为空时使用默认资源池。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
|
trigger |
否 |
TaskTriggerVO object |
参数解释: 部署应用执行触发设置。 |
|
arrange_infos |
否 |
Array of TaskV2RequestBody objects |
参数解释: 部署任务列表信息。 约束限制: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
trigger_source |
否 |
String |
参数解释: 部署任务允许执行的场景。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
artifact_source_system |
否 |
String |
参数解释: 当任务只允许流水线触发执行时,流水线传递的来源信息。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
artifact_type |
否 |
String |
参数解释: 当任务只允许流水线触发执行时,对应流水线源的制品仓库类型。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
template_id |
否 |
String |
参数解释: 部署模板id。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
|
operation_list |
否 |
Array of DeployV2OperationsDO objects |
参数解释: 部署编排列表信息。 约束限制: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
id |
否 |
String |
参数解释: 步骤id。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
|
name |
否 |
String |
参数解释: 步骤名称。 约束限制: 不涉及。 取值范围: 汉字、英文字母、数字、空格、或-_,;:./()()符号,其中空格不可在名称开头或结尾使用,长度为1~128个字符。 默认取值: 不涉及。 |
|
description |
否 |
String |
参数解释: 步骤描述。 约束限制: 不涉及。 取值范围: 长度最长为1024个字符。 默认取值: 不涉及。 |
|
code |
否 |
String |
参数解释: 步骤下载地址。 约束限制: 不涉及。 取值范围: 长度最长为102400个字符。 默认取值: 不涉及。 |
|
params |
否 |
String |
参数解释: 步骤详细定义。 约束限制: 不涉及。 取值范围: 长度最长为204800个字符。 默认取值: 不涉及。 |
|
entrance |
否 |
String |
参数解释: 步骤入口函数。 约束限制: 不涉及。 取值范围: 长度最长为1024个字符。 默认取值: 不涉及。 |
|
version |
否 |
String |
参数解释: 步骤版本。 约束限制: 不涉及。 取值范围: 长度最长为1024个字符。 默认取值: 不涉及。 |
|
module_id |
否 |
String |
参数解释: 步骤模块id。 约束限制: 不涉及。 取值范围: 长度最长为1024个字符。 默认取值: 不涉及。 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
status |
String |
参数解释: 请求成功失败状态。 取值范围:
|
|
result |
AppBaseResponse object |
参数解释: 应用基本信息响应体。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 应用id。 取值范围: 由英文字母、数字组成,且长度为32个字符。 |
|
name |
String |
参数解释: 应用名称。 取值范围: 由中文字符、英文字母、数字及“_”、“-”组成,且长度为[3-128]个字符。 |
|
region |
String |
参数解释: 应用所属区域。 取值范围: 不涉及。 |
|
arrange_infos |
Array of TaskBaseBody objects |
参数解释: 部署任务列表。 |
请求示例
创建一个应用
https://{endpoint}/v1/applications
{
"name" : "testApp",
"project_id" : "55837d272adf4eee90319800e2da6961",
"description" : "使用模板创建应用",
"trigger" : {
"trigger_source" : 0,
"artifact_source_system" : "",
"artifact_type" : ""
},
"slave_cluster_id" : "",
"create_type" : "template",
"is_draft" : true,
"arrange_infos" : [ {
"template_id" : "43b36b4678f743568e1ffebfd7f4ce76",
"operation_list" : [ {
"name" : "Kubernetes Manifest部署(CCE集群)",
"description" : "通过manifest文件定义Kubernetes对象,实现对CCE集群的部署。",
"code" : "https://example.com",
"params" : "[{\"name\":\"datasource\",\"label\":\"Manifest文件来源\",\"displaySettings\":{\"DevCloud.ControlType\":\"Radio\",\"DevCloud.ControlType.Style\":\"ButtonGroup\",\"DevCloud.ControlType.Radio\":[{\"displayName\":\"制品仓库\",\"value\":\"1\"},{\"displayName\":\"代码仓库\",\"value\":\"2\"},{\"displayName\":\"obs\",\"value\":\"4\"}],\"DevCloud.ControlType.Default\":{\"displayName\":\"制品仓库\",\"value\":\"1\",\"icon\":\"img/release.png\"}},\"defaultDisplay\":[{\"displayName\":\"制品仓库\",\"value\":\"1\"}],\"validation\":{\"pattern\":null,\"patternDescription\":null,\"maxLength\":null,\"dataType\":null,\"isRequired\":true,\"isNotParameter\":true}},{\"name\":\"deployTenant\",\"label\":\"部署租户\",\"displaySettings\":{\"DevCloud.ControlType\":\"Select\",\"DevCloud.ControlType.Style\":null,\"DevCloud.ControlType.Select\":[{\"displayName\":\"当前租户\",\"value\":\"local\"},{\"displayName\":\"其他租户\",\"value\":\"other\"}],\"DevCloud.ControlType.Default\":{\"displayName\":\"当前租户\",\"value\":\"local\"}},\"defaultDisplay\":[{\"displayName\":\"当前租户\",\"value\":\"local\"}],\"validation\":{\"pattern\":null,\"patternDescription\":null,\"maxLength\":null,\"dataType\":null,\"isRequired\":true,\"isNotParameter\":true}},{\"name\":\"use_iam_checkbox\",\"displaySettings\":{\"DevCloud.ControlType\":\"Checkbox\",\"DevCloud.ControlType.Style\":null,\"DevCloud.ControlType.Checkbox\":[{\"displayName\":\"IAM授权\",\"value\":\"0\"}]},\"defaultDisplay\":[{\"displayName\":\"IAM授权\",\"value\":\"0\"}],\"visibleRule\":\"deployTenant=local\",\"validation\":{\"pattern\":null,\"patternDescription\":null,\"maxLength\":null,\"dataType\":null,\"isRequired\":false,\"isNotParameter\":true}},{\"name\":\"javaProbeCheckBox\",\"displaySettings\":{\"DevCloud.ControlType\":\"Checkbox\",\"DevCloud.ControlType.Style\":null,\"DevCloud.ControlType.Checkbox\":[{\"displayName\":\"配置JAVA探针\",\"value\":\"0\"}]},\"defaultDisplay\":[{\"displayName\":\"配置JAVA探针\",\"value\":\"0\"}],\"visibleRule\":\"not 1=1\",\"validation\":{\"pattern\":null,\"patternDescription\":null,\"maxLength\":null,\"dataType\":null,\"isRequired\":false,\"isNotParameter\":false}},{\"name\":\"controller_enabled_ignore_errors\",\"displaySettings\":{\"DevCloud.ControlType\":\"Checkbox\",\"DevCloud.ControlType.Style\":null,\"DevCloud.ControlType.Checkbox\":[{\"displayName\":\"失败后继续运行\",\"value\":\"0\"}]},\"defaultDisplay\":[{\"displayName\":\"失败后继续运行\",\"value\":\"0\"}],\"validation\":{\"pattern\":null,\"patternDescription\":null,\"maxLength\":null,\"dataType\":null,\"isRequired\":true,\"isNotParameter\":false}},{\"name\":\"controller_enabled_overtime\",\"label\":\"超时时间\",\"displaySettings\":{\"DevCloud.ControlType\":\"SingleLineText\",\"DevCloud.ControlType.Style\":null},\"defaultValue\":\"10\",\"validation\":{\"pattern\":\"^([1-9]|[1-2][0-9]|30)$\",\"patternDescription\":\"时间单位为分钟,请输入1-30(包含)的整数\",\"maxLength\":null,\"dataType\":null,\"isRequired\":true,\"isNotParameter\":false}},{\"name\":\"controller_enabled\",\"displaySettings\":{\"DevCloud.ControlType\":\"Hidden\",\"DevCloud.ControlType.Style\":null},\"defaultDisplay\":[{\"displayName\":\"启用\",\"value\":\"1\"}]},{\"name\":\"visibleRule\",\"displaySettings\":{\"DevCloud.ControlType\":\"Hidden\",\"DevCloud.ControlType.Style\":null},\"defaultValue\":\"{\\\"use_iam_checkbox\\\":{\\\"value\\\":true,\\\"condition\\\":\\\"deployTenant=local\\\"},\\\"controller_enabled_overtime\\\":{\\\"value\\\":true},\\\"javaProbeCheckBox\\\":{\\\"value\\\":true,\\\"condition\\\":\\\"not 1=1\\\"},\\\"datasource\\\":{\\\"value\\\":true},\\\"deployTenant\\\":{\\\"value\\\":true},\\\"controller_enabled_ignore_errors\\\":{\\\"value\\\":true}}\"}]",
"entrance" : "main.yml",
"version" : "2.3.69",
"module_id" : "devcloud2018.k8s-cce-manifest-deployment.k8sdeploy-manifest"
} ]
} ]
}
响应示例
状态码:200
OK 请求响应成功
{
"result" : {
"id" : "e700f15965694253940502911220d76b",
"name" : "testApp",
"region" : "region-a",
"is_disable" : false,
"arrange_infos" : [ {
"id" : "3ea35372b6db4d58b187e9a7ee9dc349"
} ]
},
"status" : "success"
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
OK 请求响应成功 |
错误码
请参见错误码。