更新私有hook元数据
功能介绍
更新私有hook元数据(UpdatePrivateHookMetadata)
更新当前私有hook的元数据信息
目前支持更新私有hook的描述、默认版本、配置。
如果需要创建新的版本,请调用CreatePrivateHookVersion。
更新为增量更新,即如果某个参数不提供,则保持原始值。
如果请求中没有需要被更新的参数(如请求中没有任何内容,或仅有hook_id),则返回400。注意:即使更新原始值和目标值一致也被认为是有效更新
更新后私有hook的更新时间(update_time)也会被更新
若hook_name和hook_id同时存在,则资源编排服务会检查是否两个匹配,如果不匹配则会返回400。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
PATCH /v1/private-hooks/{hook_name}/metadata
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
hook_name |
是 |
String |
私有hook的名字。此名字在domain_id+region下应唯一,可以使用中文、大小写英文、数字、下划线、中划线。首字符需为中文或者英文,区分大小写。 推荐用户使用三段命名空间:{自定义hook名称}-{hook应用场景}-hook。 最小长度:1 最大长度:128 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Client-Request-Id |
是 |
String |
用户指定的,对于此请求的唯一Id,用于定位某个请求,推荐使用UUID 最小长度:36 最大长度:128 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
hook_description |
否 |
String |
私有hook的描述。可用于客户识别创建的私有hook。可通过UpdatePrivateHook API更新私有hook的描述。 最小长度:0 最大长度:1024 |
hook_id |
否 |
String |
私有hook(private-hook)的唯一Id。 此Id由资源编排服务在生成私有hook的时候生成,为UUID。 由于私有hook名称仅仅在同一时间下唯一,即用户允许先生成一个叫HelloWorld的私有hook,删除,再重新创建一个同名私有hook。 对于团队并行开发,用户可能希望确保,当前我操作的私有hook就是我认为的那个,而不是其他队友删除后创建的同名私有hook。因此,使用Id就可以做到强匹配。 资源编排服务保证每次创建的私有hook所对应的Id都不相同,更新不会影响Id。如果给与的hook_id和当前hook的Id不一致,则返回400。 最小长度:36 最大长度:36 |
default_version |
否 |
String |
私有hook的默认版本号。版本号必须遵循语义化版本号(Semantic Version),为用户自定义。 最小长度:5 最大长度:128 |
configuration |
否 |
configuration object |
私有hook配置项,可以指定私有hook生效的目标资源栈以及私有hook校验失败后资源栈的行为。可通过UpdatePrivateHook API更新私有hook配置项。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
target_stacks |
否 |
String |
指定私有hook生效的目标资源栈,有效值为NONE或ALL。 NONE:指定此私有hook不会作用于任何资源栈 ALL:指定此私有hook将会应用于账号下的所有资源栈 缺省值:NONE 枚举值:
|
failure_mode |
否 |
String |
指定私有hook校验失败后的行为,有效值为FAIL或WARN。 FAIL:指定此私有hook校验失败后资源栈将停止部署,资源栈状态将更新为DEPLOYMENT_FAILED。 WARN:指定此私有hook校验失败后仅通过资源栈事件展示警告消息,但不影响资源栈部署。 缺省值:WARN 枚举值:
|
响应参数
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 404
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 409
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 429
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
状态码: 500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
响应码 最小长度:11 最大长度:11 |
error_msg |
String |
响应消息 |
encoded_authorization_message |
String |
包含有关未经授权请求的信息。 |
details |
Array of Detail objects |
权限拒绝时服务返回的详细错误信息。 |
请求示例
更新私有hook描述信息
PATCH https://{endpoint}/v1/private-hooks/my-hello-world-hook-name/metadata { "hook_description" : "my first private hook" }
更新私有hook默认版本
PATCH https://{endpoint}/v1/private-hooks/my-hello-world-hook-name/metadata { "default_version" : "0.0.2" }
更新私有hook配置
PATCH https://{endpoint}/v1/private-hooks/my-hello-world-hook-name/metadata { "configuration" : { "target_stacks" : "ALL", "failure_mode" : "FAIL" } }
更新私有hook描述信息、默认版本、配置。
PATCH https://{endpoint}/v1/private-hooks/my-hello-world-hook-name/metadata { "hook_description" : "my first private hook", "default_version" : "0.0.2", "configuration" : { "target_stacks" : "ALL", "failure_mode" : "FAIL" } }
更新私有hook描述信息,并带有hook_id。
PATCH https://{endpoint}/v1/private-hooks/my-hello-world-hook-name/metadata { "hook_id" : "77dad9a0-6b11-4bf5-ba62-c7e0029dcb6f", "hook_description" : "my first private hook" }
响应示例
无
状态码
状态码 |
描述 |
---|---|
204 |
更新私有hook元数据成功,无数据返回。 |
400 |
用户请求非法 |
401 |
用户身份认证失败 |
403 |
用户无权限调用此API |
404 |
1.私有hook不存在 2.默认版本不存在 |
409 |
|
429 |
请求数量过多 |
500 |
服务器内部错误 |