
# 流水线查看构建任务信息 - ShowJobPipelineInfo
#### 功能介绍
流水线查看构建任务信息。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-codeci/cloudbuild_03_0007.html)。
#### 授权信息
当前API调用无需身份策略权限。
#### URI
GET /v1/job/{job_id}/pipeline-info
表1路径参数 
| 参数     | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| job_id | 是    | String | **参数解释**： 填写需要查询构建历史列表的构建任务ID。获取方法：在构建历史列表页面，拷贝浏览器URL中"/detail/history/"之后的32位数字、字母组合的字符串，即为构建任务ID。 **约束限制**： 不涉及。 **取值范围**： 只能是英文字母和数字，长度为32个字符。 **默认取值**： 不涉及。 |
   
表2Query参数 
| 参数               | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| all              | 否    | String | **参数解释**： 输入"true"或者"false"来控制返回参数是不是完整的。 **约束限制**： 不涉及。 **取值范围**： true\|false。 **默认取值**： true |
| check_param_used | 否    | String | **参数解释**： 移除未使用的参数。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                               |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释**： 用户Token。（响应消息头中X-Subject-Token的值）。通过调用IAM服务接口获取，参考[获取IAM用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)。 **约束限制**： 不支持租户全局token，请使用scope为project的region级token。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数     | 参数类型                                                                               | 描述                                                                                                                                                                                                                           |
|:---|:---|:---|
| result | [JobPipelineInfoItems] object | 流水线查看构建任务信息结果                                                                                                                                                                                                                |
| error  | Object                                                                             | **参数解释**： 返回错误信息。 **取值范围**： 不涉及。                                                                        |
| status | String                                                                             | **参数解释**： 返回状态信息。 **取值范围**： ● success：表示接口调用成功。 ● fail：表示接口调用失败。 |
   
 表5JobPipelineInfoItems 
| 参数               | 参数类型                                                                                                               | 描述                                                                                                                                                         |
|:---|:---|:---|
| scms             | Array of [CreateBuildJobScmResponse] objects             | **参数解释**： 构建执行代码仓信息。 **取值范围**： 不涉及。   |
| parameters       | Array of [CreateBuildJobParameterResponse] objects | **参数解释**： 构建任务的执行参数列表。 **取值范围**： 不涉及。 |
| job_name         | String                                                                                                             | **参数解释**： 任务名称。 **取值范围**： 不涉及。        |
| job_name_massage | String                                                                                                             | **参数解释**： 任务名称信息。 **取值范围**： 不涉及。      |
| job_name_regex   | String                                                                                                             | **参数解释**： 任务名称正则。 **取值范围**： 不涉及。      |
| source_code      | String                                                                                                             | **参数解释**： 任务来源。 **取值范围**： 不涉及。        |
   
 表6CreateBuildJobScmResponse 
| 参数                   | 参数类型                                                                     | 描述                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| branch               | String                                                                   | **参数解释**： 代码分支名称。 **取值范围**： 不涉及。                                                                                                         |
| merge_target_url     | String                                                                   | **参数解释**： 合并目标URL。 **取值范围**： 不涉及。                                                                                                        |
| merge_target_web_url | String                                                                   | **参数解释**： 合并目标网站URL。 **取值范围**： 不涉及。                                                                                                      |
| relative_target_dir  | String                                                                   | **参数解释**： 相对目标目录。 **取值范围**： 不涉及。                                                                                                         |
| branch_regex_message | String                                                                   | **参数解释**： 分支正则校验信息。 **取值范围**： 不涉及。                                                                                                       |
| branch_regex         | String                                                                   | **参数解释**： 分支正则表达式。 **取值范围**： 不涉及。                                                                                                        |
| hook_id              | String                                                                   | **参数解释**： hook_id。 **取值范围**： 不涉及。                                                                                                        |
| repo_commit_id       | String                                                                   | **参数解释**： repo代码提交ID。 **取值范围**： 不涉及。                                                                                                     |
| repo_exist           | Boolean                                                                  | **参数解释**： 校验repo代码仓是否已存在。 **取值范围**： true\|false。                                                                                         |
| disable_submodules   | Boolean                                                                  | **参数解释**： 是否禁用子模块。 **取值范围**： true\|false。                                                                                                |
| endpoint_id          | String                                                                   | **参数解释**： 拓展点id。 **取值范围**： 数字、小写字母组成。                                                                                                    |
| build_tag            | String                                                                   | **参数解释**： 代码tag。 **取值范围**： 不涉及。                                                                                                          |
| build_commit_id      | String                                                                   | **参数解释**： 代码提交ID。 **取值范围**： 不涉及。                                                                                                         |
| checkout_name        | String                                                                   | **参数解释**： 代码检出名称。 **取值范围**： 不涉及。                                                                                                         |
| commit_message       | String                                                                   | **参数解释**： 代码提交时输入的信息。 **取值范围**： 不涉及。                                                                                                     |
| create_type          | String                                                                   | **参数解释**： 创建类型。 **取值范围**： 不涉及。                                                                                                           |
| project_id           | String                                                                   | **参数解释**： CodeArts项目ID。 **取值范围**： 不涉及。                                                                                                   |
| auto_build_info      | [auto_build_info] object | **参数解释**： CodeArts项目ID。 **取值范围**： 不涉及。                                                                                                   |
| name_with_namespace  | String                                                                   | **参数解释**： 带命名空间的名称。 **取值范围**： 不涉及。                                                                                                       |
| merge_target         | String                                                                   | **参数解释**： 合并tag。 **取值范围**： 不涉及。                                                                                                          |
| event_type           | String                                                                   | **参数解释**： 事件类型。 **取值范围**： push或push_events。 **默认取值**： 不涉及。 |
| merge_id             | String                                                                   | **参数解释**： 合并请求ID。 **取值范围**： 不涉及。 **默认取值**： 不涉及。            |
| action               | String                                                                   | **参数解释**： 合并请求相关信息。 **取值范围**： 不涉及。 **默认取值**： 不涉及。          |
| gitcode_repo_id      | String                                                                   | **参数解释**： gitcode对应的代码仓id。 **取值范围**： 不涉及。 **默认取值**： 不涉及。   |
| workspace_name       | String                                                                   | **参数解释**： 代码仓工作空间名称。 **取值范围**： 不涉及。 **默认取值**： 不涉及。         |
| workspace_id         | String                                                                   | **参数解释**： 代码仓工作空间id。 **取值范围**： 不涉及。 **默认取值**： 不涉及。         |
| commit_id            | String                                                                   | **参数解释**： 代码提交ID。 **取值范围**： 不涉及。 **默认取值**： 不涉及。            |
| url                  | String                                                                   | **参数解释**： 代码仓地址。 **取值范围**： 不涉及。                                                                                                          |
| repo_id              | String                                                                   | **参数解释**： Repo代码仓的ID。 **取值范围**： 不涉及。                                                                                                     |
| web_url              | String                                                                   | **参数解释**： 代码仓https地址。 **取值范围**： 不涉及。                                                                                                     |
| scm_type             | String                                                                   | **参数解释**： 仓库类别。 **取值范围**： repo、github、gitee、gerrit、gitcode、codehub                                                                       |
| is_auto_build        | Boolean                                                                  | **参数解释**： 提交代码后是否触发构建。 **取值范围**： ● true：自动构建。 ● false：非自动构建。                                      |
| enable_git_lfs       | Boolean                                                                  | **参数解释**： 是否启用gitlfs。 **取值范围**： ● true：启用gitlfs。 ● false：不启用gitlfs。                               |
| build_type           | String                                                                   | **参数解释**： 构建类型，分支构建、Tag构建、Commit构建。 **取值范围**： branch(分支构建),tag(Tag构建),commitId(Commit构建)。                                                |
| depth                | String                                                                   | **参数解释**： 克隆深度。克隆深度是指距离最近一次提交的提交次数，该值越大，检出代码的深度越深。 **取值范围**： 1\~25。                                                                      |
| end_point_id         | String                                                                   | **参数解释**： 通用Git等代码拉取的服务扩展点ID。 **取值范围**： 不涉及。                                                                                             |
| source               | String                                                                   | **参数解释**： 代码仓库来源。 **取值范围**： 不涉及。                                                                                                         |
| group_name           | String                                                                   | **参数解释**： 仓库分组名称。 **取值范围**： 不涉及。                                                                                                         |
| repo_name            | String                                                                   | **参数解释**： 仓库名称。 **取值范围**： 不涉及。                                                                                                           |
   
 表7auto_build_info 
| 参数     | 参数类型   | 描述                                                                                                                                                             |
|:---|:---|:---|
| ref    | String | **参数解释**： 构建引用，如Git分支名或标签。 **取值范围**： 不涉及。 |
| before | String | **参数解释**： 构建前的版本信息。 **取值范围**： 不涉及。        |
| after  | String | **参数解释**： 构建后的版本信息。 **取值范围**： 不涉及。        |
   
 表8CreateBuildJobParameterResponse 
| 参数     | 参数类型                                                                                                                         | 描述                                                                                                                                                                                             |
|:---|:---|:---|
| name   | String                                                                                                                       | **参数解释**： 参数定义名，默认为hudson.model.StringParameterDefinition。 **取值范围**： 不涉及。 |
| params | Array of [CreateBuildJobParameterParamResponse] objects | **参数解释**： 构建执行参数子参数。 **取值范围**： 不涉及。                                       |
   
 表9CreateBuildJobParameterParamResponse 
| 参数     | 参数类型                                                                                       | 描述                                                                                                                                                     |
|:---|:---|:---|
| name   | String                                                                                     | **参数解释**： 参数字段名。 **取值范围**： 不涉及。   |
| value  | String                                                                                     | **参数解释**： 参数字段值。 **取值范围**： 不涉及。   |
| limits | Array of [LimitsParamResponse] objects | **参数解释**： 枚举类参数限制。 **取值范围**： 不涉及。 |
   
 表10LimitsParamResponse 
| 参数           | 参数类型   | 描述                                                                                                                                                               |
|:---|:---|:---|
| disable      | String | **参数解释**： 是否生效，默认为"0"，为生效状态。 **取值范围**： 不涉及。 |
| display_name | String | **参数解释**： 参数展示的名字。 **取值范围**： 不涉及。           |
| name         | String | **参数解释**： 参数名字。 **取值范围**： 不涉及。              |
   
#### 请求示例
```
GET https://{endpoint}/v1/job/901878212b1a49be9c1a1054c272762a/pipeline-info
```
#### 响应示例
**状态码：200**
OK
```
{
  "result" : {
    "scms" : [ {
      "url" : "git@codehub.devcloud.{region}.huawei.com:b4d3971c3988463b865f6f920846149e/aaa/Unit.git",
      "branch" : "master",
      "depth" : "1",
      "is_auto_build" : false,
      "repo_id" : "2111898074",
      "scm_type" : "codehub",
      "build_type" : "branch",
      "group_name" : "b4d3971c3988463b865f6f920846149e/aaa",
      "repo_name" : "Unit",
      "web_url" : "https://devcloud.{region}.huawei.com/codehub/2111898074/home",
      "merge_target_url" : null,
      "merge_target_web_url" : null,
      "relative_target_dir" : null,
      "branch_regex" : null,
      "branch_regex_message" : null,
      "repo_exist" : true,
      "disable_submodules" : false,
      "endpoint_id" : null,
      "project_id" : "a287e712be6c404ca26e5f69040fa12b",
      "merge_id" : null,
      "event_type" : null,
      "enable_git_lfs" : true,
      "hook_id" : null,
      "repo_commit_id" : null,
      "commit_id" : "5cb9180bedf25e8c103d30cb0c924a4107336b06",
      "build_tag" : "tag_test",
      "build_commit_id" : "5cb9180bedf25e8c103d30cb0c924a4107336b06",
      "commit_message" : "initial commit",
      "auto_build_info" : null,
      "name_with_namespace" : null,
      "merge_target" : null,
      "gitcode_repo_id" : null,
      "workspace_name" : null,
      "workspace_id" : null,
      "checkout_name" : null,
      "create_type" : null,
      "action" : null
    } ],
    "parameters" : [ {
      "name" : "hudson.model.StringParameterDefinition",
      "params" : [ {
        "name" : "name",
        "value" : "codeBranch"
      } ]
    } ],
    "job_name" : "testJobName",
    "job_name_massage" : "Enter a maximum of 115 characters. Only letters, digits, underscores (_), and hyphens (-) are allowed.",
    "job_name_regex" : "",
    "source_code" : "codeci"
  },
  "error" : null,
  "status" : "success"
}
```
#### SDK代码示例
SDK代码示例如下。
- [Java]
  ```
  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.codeartsbuild.v3.region.CodeArtsBuildRegion;
  import com.huaweicloud.sdk.codeartsbuild.v3.*;
  import com.huaweicloud.sdk.codeartsbuild.v3.model.*;
  public class ShowJobPipelineInfoSolution {
      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);
          CodeArtsBuildClient client = CodeArtsBuildClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(CodeArtsBuildRegion.valueOf("<YOUR REGION>"))
                  .build();
          ShowJobPipelineInfoRequest request = new ShowJobPipelineInfoRequest();
          request.withJobId("{job_id}");
          try {
              ShowJobPipelineInfoResponse response = client.showJobPipelineInfo(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]
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import BasicCredentials
  from huaweicloudsdkcodeartsbuild.v3.region.codeartsbuild_region import CodeArtsBuildRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkcodeartsbuild.v3 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 = CodeArtsBuildClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(CodeArtsBuildRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = ShowJobPipelineInfoRequest()
          request.job_id = "{job_id}"
          response = client.show_job_pipeline_info(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]
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
      codeartsbuild "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/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 := codeartsbuild.CodeArtsBuildClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := codeartsbuild.NewCodeArtsBuildClient(hcClient)
      request := &model.ShowJobPipelineInfoRequest{}
  request.JobId = "{job_id}"
  response, err := client.ShowJobPipelineInfo(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CodeArtsBuild/sdk?api=ShowJobPipelineInfo)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码 | 描述 |
|:---|:---|
| 200 | OK |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-codeci/ErrorCode.html)。
