
# 配置任务编译配置 - ListTaskParameter
#### 功能介绍
更新任务的规则集编译配置，支持设置规则集的编译配置。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-codecheck/codecheck_03_0006.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-codecheck/Permission.html)。
| 授权项                       | 访问级别  | 资源类型（\*为必须） | 条件键                     | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| codeartscheck:task:update | Write | task \*     | -                       | -  | -      |
| codeartscheck:task:update | Write | -           | codeartscheck:ProjectId | -  | -      |
   
#### URI
POST /v2/{project_id}/tasks/{task_id}/config-parameters
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 项目的32位UUID，项目唯一标识，通过[查询项目列表](https://support.huaweicloud.com/api-projectman/ListProjectsV4.html)接口获取。 **约束限制：** 不涉及。 **取值范围：** 长度为\[1\~32\]的字符。 **默认取值：** 不涉及。                                            |
| task_id    | 是    | String | **参数解释：** 任务ID，即新建检查任务接口的返回值，每个代码检查任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。即[查询任务列表](https://support.huaweicloud.com/api-codecheck/ShowTasksList.html)接口响应中的id字段。 **约束限制：** 不涉及。 **取值范围：** 长度为\[1\~32\]个字符。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取（响应消息头中X-Subject-Token的值）。 **约束限制：** 不涉及。 **取值范围：** 长度为\[1\~100000\]的字符。 **默认取值：** 不涉及。 |
| Content-Type | 否    | String | **参数解释：** 设置媒体类型和编码格式。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** application/json;charset=UTF-8                                                                                               |
   
表3请求Body参数 
| 参数                  | 是否必选 | 参数类型                                                                                        | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| check_id            | 是    | Integer                                                                                     | **参数解释：** 参数已废弃，默认填写0即可。 **约束限制:** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                        |
| ruleset_id          | 是    | String                                                                                      | **参数解释:** 兼容历史版本的废弃参数，不校验真实性。规则集ID，通过[查询规则集列表](https://support.huaweicloud.com/api-codecheck/ListRulesets.html)接口可获取到规则集ID。 **约束限制:** 不涉及。 **取值范围:** 长度为\[1\~32\]个字符。 **默认取值：** 不涉及。                                                                                                                                                                         |
| language            | 是    | String                                                                                      | **参数解释:** 兼容历史版本的废弃参数，不校验真实性。规则集对应语言，通过[查询规则集列表](https://support.huaweicloud.com/api-codecheck/ListRulesets.html)接口可获取到规则集ID对应的语言。 **约束限制:** 不涉及。 **取值范围:** 与ruleset_id规则集的语言对应。 **默认取值：** 不涉及。                                                                                                                                                              |
| status              | 是    | String                                                                                      | **参数解释:** 当前规则集对应的编译配置总开关。 **约束限制:** 不涉及。 **取值范围:** - off：关闭。   - on：打开。    **默认取值：** 不涉及。 |
| task_check_settings | 否    | Array of [TaskCheckSettingsItem] objects | **参数解释:** 数组类型，当前规则集对应编译配置具体详情，可基于web页面查看当前规则集所涉及的编译配置，多个参数配置多条即可。 **约束限制:** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表4TaskCheckSettingsItem 
| 参数        | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| cfg_key   | 否    | String | **参数解释:** 规则集对应的编译配置条件键。 **约束限制:** 不涉及。 **取值范围:** - compileTool：编译工具。   - buildToolVersion：编译工具版本。   - compileScriptCmd：编译命令。    **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| status    | 否    | String | **参数解释:** 当前检查参数key对应的开启状态，填写"on"即可。 **约束限制:** 不涉及。 **取值范围:** "on"。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| cfg_value | 否    | String | **参数解释:** 规则集对应的编译配置值。 **约束限制:** cfg_key为compileTool、buildToolVersion时，cfg_value的值必填。 **取值范围:** - ant1.10.1-jdk1.8: ant镜像。   - ant1.10.13-jdk1.8: ant镜像。   - ant1.10.3-jdk1.8: ant镜像。   - ant1.9.4-jdk1.8: ant镜像。   - cmake2.8.12-gcc4.8.5: C++镜像。   - cmake2.8.12-gcc5.5.0: C++镜像。   - cmake2.8.12-gcc6.4.0: C++镜像。   - cmake2.8.12-gcc7.3.0: C++镜像。   - cmake3.10.1-gcc4.8.5: C++镜像。   - cmake3.10.1-gcc5.5.0: C++镜像。   - cmake3.10.1-gcc6.4.0: C++镜像。   - cmake3.10.1-gcc7.3.0: C++镜像。   - cmake3.15.5-gcc7.5.0: C++镜像。   - cmake3.15.5-gcc8.3.0: C++镜像。   - cmake3.16.0-gcc9.2.0: C++镜像。   - dotnetcore2.2: C#镜像。   - dotnetcore3.0: C#镜像。   - dotnetcore3.1: C#镜像。   - dotnetcore5.0: C#镜像。   - dotnetcore6.0: C#镜像。   - dotnetcore7.0: C#镜像。   - dotnetcore8.0: C#镜像。   - dotnetcore9.0: C#镜像。   - go-1.10.3: go镜像。   - go-1.11.6: go镜像。   - go-1.12.1: go镜像。   - go-1.23: go镜像。   - gradle2.13-jdk1.8: gradle镜像。   - gradle2.14.1-jdk1.8: gradle镜像。   - gradle3.3-jdk1.8: gradle镜像。   - gradle4.1-jdk1.8: gradle镜像。   - gradle4.2-jdk1.8: gradle镜像。   - gradle4.3-jdk1.8: gradle镜像。   - gradle4.4-jdk1.8: gradle镜像。   - gradle4.5-jdk1.8: gradle镜像。   - gradle4.6-jdk1.8: gradle镜像。   - gradle4.7-jdk1.8: gradle镜像。   - gradle4.8-jdk1.8: gradle镜像。   - gradle4.8-jdk1.9: gradle镜像。   - gradle4.9-jdk1.8: gradle镜像。   - gradle4.9-jdk1.9: gradle镜像。   - gradlew: gradle镜像。   - maven3.3.1-jdk7: maven镜像。   - maven3.5.3-jdk1.10: maven镜像。   - maven3.5.3-jdk1.11: maven镜像。   - maven3.5.3-jdk1.7: maven镜像。   - maven3.5.3-jdk1.8: maven镜像。   - maven3.5.3-jdk1.9: maven镜像。   - maven3.5.3-jdk7: maven镜像。   - maven3.5.3-jdk8-open: maven镜像。   - maven3.6.1-jdk10: maven镜像。   - maven3.6.1-jdk9: maven镜像。   - maven3.6.3-jdk11: maven镜像。   - maven3.8.5-jdk1.17: maven镜像。   - maven3.8.5-jdk17: maven镜像。   - maven3.9.5-jdk21: maven镜像。   - mono6-msbuild16-dotnetcoresdk2.1: C#镜像。   - mono6-msbuild16-dotnetcoresdk2.2: C#镜像。   - mono6-msbuild16-dotnetcoresdk3.0: C#镜像。   - mono6-msbuild16-dotnetcoresdk3.1: C#镜像。   - mono6-msbuild16-dotnetcoresdk5.0: C#镜像。   - mono6-msbuild16-dotnetcoresdk6.0: C#镜像。   - msbuild15-dotnetframework3.5: C#镜像。   - msbuild15-dotnetframework4.7.2: C#镜像。   - msbuild16-dotnetframework4.8: C#镜像。    **默认取值：** 不涉及。 |
   
#### 响应参数
**状态码：200**
请求成功!
**状态码：400**
表5响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                            |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
**状态码：401**
表6响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                            |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
#### 请求示例
任务配置编译参数：语言类型为java，状态为on。
```
POST https://{endpoint}/v2/{project_id}/tasks/{task_id}/config-parameters
{
  "check_id" : 0,
  "ruleset_id" : "b113bxxxxxxxx5738bee86ecxxxxxxxx",
  "language" : "java",
  "status" : "on",
  "task_check_settings" : [ {
    "cfg_value" : "maven",
    "cfg_key" : "compileTool",
    "status" : "on"
  }, {
    "cfg_value" : "maven3.8.5-jdk17",
    "cfg_key" : "buildToolVersion",
    "status" : "on"
  }, {
    "cfg_value" : "mvn clean package -Dmaven.test.skip=true -U -e -X -B",
    "cfg_key" : "compileScriptCmd",
    "status" : "on"
  } ]
}
```
#### 响应示例
**状态码：200**
请求成功!
```
null
```
**状态码：400**
请求异常。
```
{
  "error_code" : "CC.xxxxxxxx.400",
  "error_msg" : "请求参数校验失败,请检查请求参数是否正确"
}
```
**状态码：401**
权限不足。
```
{
  "error_code" : "CC.00000003",
  "error_msg" : "认证信息过期"
}
```
#### SDK代码示例
SDK代码示例如下。
- [Java]
  任务配置编译参数：语言类型为java，状态为on。
  ```
  package com.huaweicloud.sdk.test;
  import com.huaweicloud.sdk.core.auth.ICredential;
  import com.huaweicloud.sdk.core.auth.BasicCredentials;
  import com.huaweicloud.sdk.core.exception.ConnectionException;
  import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
  import com.huaweicloud.sdk.core.exception.ServiceResponseException;
  import com.huaweicloud.sdk.codecheck.v2.region.CodeCheckRegion;
  import com.huaweicloud.sdk.codecheck.v2.*;
  import com.huaweicloud.sdk.codecheck.v2.model.*;
  import java.util.List;
  import java.util.ArrayList;
  public class ListTaskParameterSolution {
      public static void main(String[] args) {
          // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
          // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
          String ak = System.getenv("CLOUD_SDK_AK");
          String sk = System.getenv("CLOUD_SDK_SK");
          ICredential auth = new BasicCredentials()
                  .withAk(ak)
                  .withSk(sk);
          CodeCheckClient client = CodeCheckClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(CodeCheckRegion.valueOf("<YOUR REGION>"))
                  .build();
          ListTaskParameterRequest request = new ListTaskParameterRequest();
          request.withProjectId("{project_id}");
          request.withTaskId("{task_id}");
          ConfigTaskParameterBody body = new ConfigTaskParameterBody();
          List<TaskCheckSettingsItem> listbodyTaskCheckSettings = new ArrayList<>();
          listbodyTaskCheckSettings.add(
              new TaskCheckSettingsItem()
                  .withCfgKey("compileTool")
                  .withStatus("on")
                  .withCfgValue("maven")
          );
          listbodyTaskCheckSettings.add(
              new TaskCheckSettingsItem()
                  .withCfgKey("buildToolVersion")
                  .withStatus("on")
                  .withCfgValue("maven3.8.5-jdk17")
          );
          listbodyTaskCheckSettings.add(
              new TaskCheckSettingsItem()
                  .withCfgKey("compileScriptCmd")
                  .withStatus("on")
                  .withCfgValue("mvn clean package -Dmaven.test.skip=true -U -e -X -B")
          );
          body.withTaskCheckSettings(listbodyTaskCheckSettings);
          body.withStatus("on");
          body.withLanguage("java");
          body.withRulesetId("b113bxxxxxxxx5738bee86ecxxxxxxxx");
          body.withCheckId(0);
          request.withBody(body);
          try {
              ListTaskParameterResponse response = client.listTaskParameter(request);
              System.out.println(response.toString());
          } catch (ConnectionException e) {
              e.printStackTrace();
          } catch (RequestTimeoutException e) {
              e.printStackTrace();
          } catch (ServiceResponseException e) {
              e.printStackTrace();
              System.out.println(e.getHttpStatusCode());
              System.out.println(e.getRequestId());
              System.out.println(e.getErrorCode());
              System.out.println(e.getErrorMsg());
          }
      }
  }
  ```
- [Python]
  任务配置编译参数：语言类型为java，状态为on。
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import BasicCredentials
  from huaweicloudsdkcodecheck.v2.region.codecheck_region import CodeCheckRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkcodecheck.v2 import *
  if __name__ == "__main__":
      # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak = os.environ["CLOUD_SDK_AK"]
      sk = os.environ["CLOUD_SDK_SK"]
      credentials = BasicCredentials(ak, sk)
      client = CodeCheckClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(CodeCheckRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = ListTaskParameterRequest()
          request.project_id = "{project_id}"
          request.task_id = "{task_id}"
          listTaskCheckSettingsbody = [
              TaskCheckSettingsItem(
                  cfg_key="compileTool",
                  status="on",
                  cfg_value="maven"
              ),
              TaskCheckSettingsItem(
                  cfg_key="buildToolVersion",
                  status="on",
                  cfg_value="maven3.8.5-jdk17"
              ),
              TaskCheckSettingsItem(
                  cfg_key="compileScriptCmd",
                  status="on",
                  cfg_value="mvn clean package -Dmaven.test.skip=true -U -e -X -B"
              )
          ]
          request.body = ConfigTaskParameterBody(
              task_check_settings=listTaskCheckSettingsbody,
              status="on",
              language="java",
              ruleset_id="b113bxxxxxxxx5738bee86ecxxxxxxxx",
              check_id=0
          )
          response = client.list_task_parameter(request)
          print(response)
      except exceptions.ClientRequestException as e:
          print(e.status_code)
          print(e.request_id)
          print(e.error_code)
          print(e.error_msg)
  ```
- [Go]
  任务配置编译参数：语言类型为java，状态为on。
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
      codecheck "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codecheck/v2"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codecheck/v2/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codecheck/v2/region"
  )
  func main() {
      // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak := os.Getenv("CLOUD_SDK_AK")
      sk := os.Getenv("CLOUD_SDK_SK")
      auth, err := basic.NewCredentialsBuilder().
          WithAk(ak).
          WithSk(sk).
          SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      hcClient, err := codecheck.CodeCheckClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := codecheck.NewCodeCheckClient(hcClient)
      request := &model.ListTaskParameterRequest{}
  request.ProjectId = "{project_id}"
  request.TaskId = "{task_id}"
  cfgValueTaskCheckSettings:= "maven"
  cfgValueTaskCheckSettings1:= "maven3.8.5-jdk17"
  cfgValueTaskCheckSettings2:= "mvn clean package -Dmaven.test.skip=true -U -e -X -B"
  var listTaskCheckSettingsbody = []model.TaskCheckSettingsItem{
          {
              CfgKey: "compileTool",
              Status: "on",
              CfgValue: &cfgValueTaskCheckSettings,
          },
          {
              CfgKey: "buildToolVersion",
              Status: "on",
              CfgValue: &cfgValueTaskCheckSettings1,
          },
          {
              CfgKey: "compileScriptCmd",
              Status: "on",
              CfgValue: &cfgValueTaskCheckSettings2,
          },
      }
  request.Body = &model.ConfigTaskParameterBody{
  TaskCheckSettings: listTaskCheckSettingsbody,
  Status: "on",
  Language: "java",
  RulesetId: "b113bxxxxxxxx5738bee86ecxxxxxxxx",
  CheckId: int32(0),
  }
  response, err := client.ListTaskParameter(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CodeCheck/sdk?api=ListTaskParameter)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码 | 描述    |
|:---|:---|
| 200 | 请求成功! |
| 400 | 请求异常。 |
| 401 | 权限不足。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-codecheck/ErrorCode.html)。
