执行自定义脚本 - ExecuteScript
功能介绍
执行指定的自定义脚本。
接口约束
约束条件:
- 
    
脚本入参支持20个。
 - 
    
单次下发的机器支持200个。
 - 
    
单次批次内机器数量最大10个。
 - 
    
最大批次数量为20批。
 - 
    
脚本输出的日志总量只支持1MB。
 
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
 - 如果使用身份策略授权,需具备如下身份策略权限。 
    
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
coc:instance:executeDocument
Write
document *
-
-
-
instance *
-
 
URI
POST /v1/job/scripts/{script_uuid}
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        script_uuid  | 
      
        是  | 
      
        String  | 
      
        参数解释: 脚本UUID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
请求参数
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        X-Auth-Token  | 
      
        是  | 
      
        String  | 
      
        参数解释: 租户token。 约束限制: 从IAM获取的租户token。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        X-Language  | 
      
        否  | 
      
        String  | 
      
        参数解释: 国际化标记,zh-cn表示中文,en-us或不传表示英文。 约束限制: zh-cn表示中文,en-us或不传表示英文。 取值范围: zh-cn/en-us。 默认取值: 不涉及。  | 
     
| 
        x-project-id  | 
      
        否  | 
      
        String  | 
      
        参数解释: 项目ID。 约束限制: region对应的项目ID。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        x-user-profile  | 
      
        否  | 
      
        String  | 
      
        参数解释: IAM5.0用户信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        execute_param  | 
      
        是  | 
      
        ScriptExecuteParam object  | 
      
        参数解释: 脚本执行参数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        execute_batches  | 
      
        是  | 
      
        Array of ExecuteInstancesBatchInfo objects  | 
      
        参数解释: 目标实例分批信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        resourceful  | 
      
        否  | 
      
        Boolean  | 
      
        参数解释: 该参数已废弃,传入该参数不会生效。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        timeout  | 
      
        是  | 
      
        Integer  | 
      
        参数解释: 超时时间。 约束限制: 单位:秒,取值范围:5 < timeout < 1800。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        success_rate  | 
      
        是  | 
      
        Double  | 
      
        参数解释: 成功率, 约束限制: 支持小数点后一位。 取值范围: 1-100。 默认取值: 不涉及。  | 
     
| 
        execute_user  | 
      
        是  | 
      
        String  | 
      
        参数解释: 脚本执行用户,如:root。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        script_params  | 
      
        否  | 
      
        Array of ScriptExecuteInputParam objects  | 
      
        参数解释: 脚本入参列表。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        param_name  | 
      
        是  | 
      
        String  | 
      
        参数解释: 脚本入参的名称,同一个脚本,参数名不能重复。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        param_value  | 
      
        是  | 
      
        String  | 
      
        参数解释: 脚本入参的值,默认必填。有引用参数(param_refer不为空)时,允许为空。 约束限制: 
 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        param_order  | 
      
        否  | 
      
        Integer  | 
      
        参数解释: 【已废弃】该参数已废弃,传入该参数不会生效。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        param_refer  | 
      
        否  | 
      
        ScriptExecuteParamReference object  | 
      
        参数解释: 参数引用。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        refer_type  | 
      
        是  | 
      
        String  | 
      
        参数解释: 参数引用类型:PARAM_STORE。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        param_id  | 
      
        是  | 
      
        String  | 
      
        参数解释: 引用参数的唯一主键id。 约束限制: 
 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        param_version  | 
      
        否  | 
      
        String  | 
      
        参数解释: 引用参数的版本号。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        batch_index  | 
      
        是  | 
      
        Integer  | 
      
        参数解释: 批次索引,从1开始。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        target_instances  | 
      
        是  | 
      
        Array of ExecuteResourceInstance objects  | 
      
        参数解释: 目标节点列表。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        rotation_strategy  | 
      
        是  | 
      
        String  | 
      
        参数解释: 暂停继续策略。 约束限制: 
 取值范围: CONTINUE/PAUSE。 默认取值: 不涉及。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        resource_id  | 
      
        是  | 
      
        String  | 
      
        参数解释: ECS云服务器ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        region_id  | 
      
        是  | 
      
        String  | 
      
        参数解释: 服务器所属region。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        provider  | 
      
        否  | 
      
        String  | 
      
        参数解释: 资源提供者:ECS,不传默认为:ECS。请保证一次执行, 每个实例的provider是一致的。后续扩展CCE等。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        type  | 
      
        否  | 
      
        String  | 
      
        参数解释: 资源提供者下资源类型,不传默认为CLOUDSERVER。 CLOUDSERVER:CLOUDSERVER类型。 约束限制: 不允许跨type支持。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        custom_attributes  | 
      
        否  | 
      
        Array of Customttribute objects  | 
      
        参数解释: 支持用户自定义5个key_value形式的属性。 约束限制: 
 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        agent_sn  | 
      
        否  | 
      
        String  | 
      
        参数解释: 【已废弃】该参数已废弃,传入该参数不会生效。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
| 
        project_id  | 
      
        否  | 
      
        String  | 
      
        参数解释: 【已废弃】该参数已废弃,传入该参数不会生效。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。  | 
     
响应参数
状态码:200
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        data  | 
      
        String  | 
      
        参数解释: execute_uuid。 取值范围: 不涉及。  | 
     
状态码:204
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        参数解释: 错误码。 取值范围: 参见错误码章节。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        参数解释: 错误描述。 取值范围: 参见错误码章节。  | 
     
请求示例
执行脚本请求体示例。
POST https://{Endpoint}/v1/job/scripts/{script_uuid}
{
  "execute_param" : {
    "timeout" : 300,
    "execute_user" : "root",
    "success_rate" : "100.0",
    "script_params" : [ {
      "param_name" : "a",
      "param_value" : "key1",
      "param_order" : 1
    } ]
  },
  "execute_batches" : [ {
    "batch_index" : 1,
    "rotation_strategy" : "CONTINUE",
    "target_instances" : [ {
      "resource_id" : "resource_id",
      "agent_sn" : "agent_sn",
      "agent_status" : "ONLINE",
      "region_id" : "cn-north-7",
      "project_id" : "project_id"
    } ]
  } ]
}
 响应示例
状态码:200
请求成功。
更多状态码请参考状态码。
{
  "data" : "SCT2023083109562601axxxxx"
}
  状态码:204
包含错误信息。
更多状态码请参考状态码。
{
  "error_code" : "COC.00040701",
  "error_msg" : "error_msg"
}
 错误码
请参见错误码。