5.4 组件
5.4.3 根据组件 ID 修改组件信息
功能介绍
此API通过组件ID修改组件信息。
调试
您可以在API Explorer中调试该接口。
URI
PUT /v2/{project_id}/cas/applications/{application_id}/components/
{component_id}
表5-105 路径参数
参数 参数类型 必选 描述
project_id String 是 租户项目ID application_id String 是 应用ID component_id String 是 组件ID
请求消息
表5-106 请求参数
参数 参数类型 必选 描述
name String 否 应用组件名称。
由大小写英文字母、数字、中划线(-)、下 划线(_)组成,并以大小写英文字母开 头,大小写英文字母或者数字结尾,长度为 2~64个字符。
description String 否 描述。
最大长度为128个字符。
source Object 否 代码/软件包来源,请参考表5-107。
build Object 否 构建工程,请参考表5-111。
表5-107 source 参数
参数 参数类型 必
选
描述
kind String 是 类型,支持源码code和artifact软件包。
spec Object 是 对应code请参考表5-108;对应artifact请参考
表5-109。
表5-108 code spec 参数
参数 参数类型 必
选
描述
repo_type String 是 代码仓类型,支持GitHub、GitLab、Gitee、
Bitbucket。
repo_url String 是 代码仓url,如:https://github.com/
example/demo.git。
repo_ref String 否 代码分支或者Tag,默认是master。
repo_auth String 是 授权名称,在授权列表获取。
表5-109 artifact spec 参数
参数 参数类型 必
选
描述
storage String 是 存储方式,支持软件仓库swr和对象存储obs。
type String 是 类别,支持package。
url String 是 软件包/源码地址。
auth String 否 认证方式:支持iam、none。默认是iam。
properties Object 否 软件包的其他属性,只有在选择对象存储obs 的时候才需要添加。表5-110。
表5-110 artifact spec properties 参数
参数 参数类型 必
选
描述
endpoint String 否 obs的终端地址,比如:https://
obs.region_id.external_domain_name.com。
bucket String 否 软件包在obs的桶名。
参数 参数类型 必 选
描述
key String 否 obs桶中的对象,一般是软件包名,有文件夹 的话要加上文件夹的路径。比如test.jar或者
Object> 否 请参考表5-112。只在没有ID,新创建构建时 提供。
表5-112 parameters 参数
参数 参数类型 必
选
描述
build_cmd String 否 编译命令。默认:
1. 根目录存在build.sh:./build.sh 2. 根据运行系统,示例如下:
● Java和Tomcat:mvn clean package
● Nodejs: npm build dockerfile_p
ath String 否 dockerfile地址。默认是根目录./。
artifact_nam
espace String 否 构建归档组织。默认cas_{project_id}。
cluster_id String 否 指定构建集群的id。
node_label_s
elector Map<String,
String> 否 key是标签的键,value是标签的值。
响应消息
表5-113 响应参数
参数 参数类型 描述
id String 应用组件ID。
name String 应用组件名称。
参数 参数类型 描述 status integer 取值0或1。
0:表示正常状态。
1:表示正在删除。
runtime String 运行时。
category String 应用组件类型如:Webapp、MicroService、
Common。
sub_category String 应用组件子类型。
Webapp的子类型有Web。
MicroService的子类型有Java Chassis、Go Chassis、Mesher、Spring Cloud、Dubbo。
Common的子类型可以为空。
description String 描述。
pipeline_ids Array<String> 流水线Id列表,最多10个。
project_id String 项目ID。
application_id String 应用ID。
source Object 代码/软件包来源,请参考表5-114。
build Object 构建工程,请参考表5-117。
create_time Integer 创建时间。
update_time Integer 修改时间。
creator String 创建者。
表5-114 source 参数
参数 参数类型 描述
kind String 类型。
spec Object 请参考表5-115。
表5-115 spec 参数
参数 参数类型 描述
storage String 存储方式
type String 类别
url String 软件包/源码地址
参数 参数类型 描述
auth String 认证方式
properties Object 软件包的其他属性,只有在选择对象存储obs的时 候才需要添加,请参考表5-116
表5-116 artifact spec properties 参数
参数 参数类型 描述
endpoint String obs的终端地址,比如:https://
obs.region_id.external_domain_name.com。
bucket String 软件包在obs的桶名。
key String obs桶中的对象,一般是软件包名,有文件夹的话 要加上文件夹的路径。比如test.jar或者demo/
test.jar。
表5-117 build 参数
参数 参数类型 描述
ID String 类型
parameters Map<String,
Object> 请参考表5-118
表5-118 parameters 参数
参数 参数类型 描述
build_cmd String 编译命令。
dockerfile_pat
h String dockerfile地址。
artifact_name
space String 构建归档组织。
cluster_id String 指定构建集群的id。
node_label_se
lector Map<String,
String> key是标签的键,value是标签的值。
示例
请求示例
{ "name": "test-micro", "description": "", "source": {
"cluster_id": "523498f1-36c4-11eb-ae36-0255ac1000c2", "cluster_name": "cce-test",
"cluster_type": "VirtualMachine"
} },
"pipeline_ids": null }
响应示例
{ "id": "1cfdda6f-84cd-4ead-8e09-628fabf662e2", "name": "test-micro",
"runtime": "Java8", "category": "MicroService", "sub_category": "Java Chassis", "description": "",
"project_id": "e7d2e9c589e5445e808a8ff0d1235aca", "application_id": "4d92833a-fa05-4fc0-a761-e67620022310", "source": {
"id": "zpdkj42b3rnko8bmyojzt1ng828ubychw13j8flv", "parameters": {
"artifact_namespace": "ns", "use_public_cluster": false,
"cluster_id": "523498f1-36c4-11eb-ae36-0255ac1000c2", "cluster_name": "cce-test",
"cluster_type": "VirtualMachine"
} },
"pipeline_ids": null, "status": 0, "creator": "ss-test",
"create_time": 1610331760105,
"update_time": 1610519881943 }
状态码
表5-119 状态码说明
HTTP状态码 描述
200 操作成功。
400 错误的请求。
404 请求对象不存在。
500 内部错误。
错误码
错误码格式为:SVCSTG.00100.[Error_ID],例如:SVCSTG.00100400。错误码说明请 参考错误码。