Obtaining Build Record Information (Version 4)
Function
This API is used to obtain build record information.
Calling Method
For details, see Calling APIs.
URI
GET /v4/jobs/{job_id}/{build_no}/record-info
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
job_id |
Yes |
String |
Definition Enter the ID of the build task whose history you want to query. To obtain this ID, open the build task details page in your browser, and copy the 32-character string, which includes both digits and letters, at the end of the URL. Constraints N/A. Range The value is 32 characters long. Only letters and digits are allowed. Default Value N/A. |
build_no |
Yes |
Integer |
Definition The build number tracks each run of the build task. This parameter starts at 1, indicating the first build. It increments by 1 for every subsequent run. Constraints The value is a positive integer. Range Use only numbers that are 1 or greater. Default Value 1 |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
Definition User token. (The value of the X-Subject-Token response header is the user token.) It is obtained by calling the IAM API. For details, see Obtaining an IAM User Token. Constraints Global tenant tokens are not supported. Use a region-level token whose scope is project. Range N/A. Default Value N/A. |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
status |
String |
Definition API response status. Range ● success: The API call is successful. ● fail: The API call failed. |
error |
Object |
Definition Error message. Range N/A. |
result |
result object |
Definition Data returned after the API is successfully called. Range N/A. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Definition ID. Range N/A. |
build_project_id |
String |
Definition Build project ID. It uniquely corresponds to codeci_job_id. Range N/A. |
build_record_id |
String |
Definition Build record ID. Range N/A. |
parent_record_id |
String |
Definition Parent build record ID. Range N/A. |
devcloud_project_id |
String |
Definition Project ID. Range N/A. |
codeci_job_id |
String |
Definition codeci task ID. It uniquely corresponds to build_project_id. Range N/A. |
user_id |
String |
Definition User ID. Range N/A. |
build_no |
Integer |
Definition Build number. Range N/A. |
daily_build_num |
String |
Definition Daily build number. It starts from 1 every day. Range N/A. |
execution_id |
String |
Definition CloudOctopus task ID. Range N/A. |
repo_name |
String |
Definition Code repository name. Range N/A. |
repo_id |
String |
Definition Code repository ID. Range N/A. |
branch |
String |
Definition Name of the code repository branch. Range N/A. |
tag |
String |
Definition Code repository tag. Range N/A. |
commit |
String |
Definition Commit ID of a code repository. Range N/A. |
commit_message |
String |
Definition Commit message for a repository. Range N/A. |
commit_create_time |
String |
Definition Commit creation time. Range N/A. |
trigger_type |
String |
Definition Triggering mode. Options include MANUAL (manual execution), TIMED_EXECUTION (schedule), CODEHUB_TRIGGER (code change), or PIPELINE_TRIGGER (pipeline). Range ● MANUAL: Manual trigger ● TIMED_EXECUTION: Scheduled trigger ● CODEHUB_TRIGGER: Code change trigger ● PIPELINE_TRIGGER: Pipeline trigger |
build_type |
String |
Definition Build type. Range N/A. |
status |
String |
Definition Build status. Range N/A. |
domain_id |
String |
Definition Tenant ID. Range N/A. |
create_time |
String |
Definition Task creation time. Range N/A. |
schedule_time |
String |
Definition Build assignment time. Range N/A. |
queued_time |
String |
Definition Build queuing duration. Range N/A. |
start_time |
String |
Definition Build start time. Range N/A. |
runnable_time |
String |
Definition Time when CloudOctopus starts the build process. Range N/A. |
finish_time |
String |
Definition Build end time. Range N/A. |
duration |
Integer |
Definition Build duration. Range N/A. |
record_status |
String |
Definition Record status. Range N/A. |
use_private_slave |
Integer |
Definition Whether a custom executor is used. Range N/A. |
region |
String |
Definition The region where the tenant is located. Range N/A. |
err_msg |
String |
Definition Error message. Range N/A. |
build_config_type |
String |
Definition Build configuration type. It can be YAML or ACTION. Range YAML or ACTION. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Example Requests
GET https://{endpoint}/v4/jobs/cb5fa20de5fd4cf8be681d4bd6fdd2f6/61/record-info
Example Responses
Status code: 200
OK
{ "status" : "success", "result" : { "id" : "eb9d73c7-61b3-4823-b476-a7c00c493b8a", "build_project_id" : "31581e9f-5772-4053-a50c-d5690578c8fd", "build_record_id" : "9d6169b9-022d-458c-9dc8-48cc94cc4083", "parent_record_id" : null, "devcloud_project_id" : "b4d3971c3988463b865f6f920846149e", "codeci_job_id" : "68491d9bc97b4774adb93e29b46d2dc6", "user_id" : "ae22fd035f354cfa8d82a3f1c8940446", "build_no" : 532, "daily_build_num" : "20221011.29", "execution_id" : "j_YE1bu9Z7", "repo_name" : "maven", "repo_id" : "2111616838", "branch" : "buildflow_env", "tag" : null, "commit" : null, "commit_message" : null, "commit_create_time" : "2022-10-11T08:28:42.000+00:00", "trigger_type" : "MANUAL", "build_type" : "branch", "status" : "SUCCESS", "domain_id" : "60021bab32fd450aa2cb89226f425e06", "create_time" : "2022-10-11T08:28:42.000+00:00", "schedule_time" : "2022-10-11T08:28:45.000+00:00", "queued_time" : "2022-10-11T08:28:45.000+00:00", "start_time" : "2022-10-11T08:28:47.000+00:00", "runnable_time" : "2022-10-11T08:16:04.000+00:00", "finish_time" : "2022-10-11T08:30:27.000+00:00", "duration" : 100068, "record_status" : null, "use_private_slave" : 0, "region" : "xx-xxxx-xx", "err_msg" : null, "build_config_type" : "YAML" } }
SDK Sample Code
The SDK sample code is as follows.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
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 ShowRecordDetailSolution { 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(); ShowRecordDetailRequest request = new ShowRecordDetailRequest(); request.withJobId("{job_id}"); request.withBuildNo({build_no}); try { ShowRecordDetailResponse response = client.showRecordDetail(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()); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# 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 = ShowRecordDetailRequest() request.job_id = "{job_id}" request.build_no = {build_no} response = client.show_record_detail(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
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 := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := codeartsbuild.NewCodeArtsBuildClient( codeartsbuild.CodeArtsBuildClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ShowRecordDetailRequest{} request.JobId = "{job_id}" request.BuildNo = int32({build_no}) response, err := client.ShowRecordDetail(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.
Status Codes
Status Code |
Description |
---|---|
200 |
OK |
400 |
Bad Request |
401 |
Unauthorized |
403 |
Forbidden |
404 |
Not Found |
500 |
Internal Server Error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot