检查API
更新时间:2024-08-16
用途
该动作用来检查云产品资源是否符合预期状态,如是预期状态,则任务执行成功。否则,任务执行失败。通常用来做前置检查。例如:要停止某BCC实例,则可以先检查该BCC实例的状态是运行中状态(Running),如果不是Running,则不执行停止操作。当前支持BCC/EIP/ENI/CDS的实例检查操作。
参数
名称 | 类型 | 描述 |
---|---|---|
name | String | 模板任务名称,必填 |
operator | String | 模板任务类型,必填 |
properties | Map<String, Object> | 任务执行所需参数,必填,详细内容见下表 |
properties参数
名称 | 类型 | 描述 |
---|---|---|
serviceName | String | 必填,需要检查云产品名称当前仅支持BCC/EIP/ENI/CDS |
apiName | String | 必填,执行检查API的名称,默认为CheckFor |
parameters | Object | 选填,执行检查API的请求参数,具体格式见【API帮助】 |
desiredValues | List |
必填,期望值,需要等待的具体的API返回值要匹配到以下值之一,匹配则表示成功,否则会任务失败 |
propertySelector | String | 必填,需要等待的具体的API返回值,jsonPath形式,具体返回体格式见【API帮助】 |
示例
检查云服务器BCC的返回值是否符合预期值,调用检查云服务器BCC状态的API入参和出参如下所示:
请求结构
POST /v{version}/instance/listByInstanceId HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
"instanceIds": ["i-y5nWLU4r"]
}
返回参数
{
"instances": [
{
"id": "i-y5nWLU4r",
"status": "Running"
}
]
}
检查API输入示例
{
"name": "checkForBcc",
"operator": "BCE::CheckFor",
"properties": {
"parameters": {
"instanceIds": [
"i-y5nWLU4r"
]
},
"desiredValues": [
"Running"
],
"propertySelector": "$.instances[*].status"
}
}
API帮助
检查API调用的接口:
BCC:https://cloud.baidu.com/doc/BCC/s/0kstrzyz9
EIP:https://cloud.baidu.com/doc/EIP/s/Pjwvz30qy
ENI:https://cloud.baidu.com/doc/VPC/s/Okknfjt6o
CDS:https://cloud.baidu.com/doc/BCC/s/Sjwvyo5be
Console使用说明
期望值及检查值输入说明
输入界面:
举例
需要检查BCC状态是否为Runing状态.
填写方式:
通过BCC的API文档可以看到返回的数据结构如下所示
{
"instances": [
{
"id": "i-y5nWLU4r",
"status": "Running"
}
]
}
需要检查的字段为status,期望的返回值为Runing。
则填写方式为:
期望值:["Running"]
检查值:$.instances[*].status