功能介紹
該API用于獲取任務信息。通過某一任務請求下發(fā)后返回的jobID來查詢指定任務的進度。

-
集群管理的URL格式為:https://Endpoint/uri。其中uri為資源路徑,也即API訪問的路徑
-
該接口通常使用場景為:
-
創(chuàng)建、刪除集群時,查詢相應任務的進度。
-
創(chuàng)建、刪除節(jié)點時,查詢相應任務的進度。
-
調用方法
請參見如何調用API。
URI
GET /api/v3/projects/{project_id}/jobs/{job_id}
參數 |
是否必選 |
參數類型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
項目ID,獲取方式請參見如何獲取接口URI中參數。 |
job_id |
是 |
String |
任務ID,獲取方式請參見如何獲取接口URI中參數。 |
請求參數
參數 |
是否必選 |
參數類型 |
描述 |
---|---|---|---|
Content-Type |
是 |
String |
消息體的類型(格式) |
X-Auth-Token |
是 |
String |
調用接口的認證方式分為Token和AK/SK兩種,如果您使用的Token方式,此參數為必填,請?zhí)顚慣oken的值,獲取方式請參見獲取token。 |
響應參數
狀態(tài)碼: 200
參數 |
參數類型 |
描述 |
---|---|---|
kind |
String |
API類型,固定值“Job”,該值不可修改。 |
apiVersion |
String |
API版本,固定值“v3”,該值不可修改。 |
metadata |
任務元數據。 |
|
spec |
任務詳細參數。 |
|
status |
任務狀態(tài)信息。 |
參數 |
參數類型 |
描述 |
---|---|---|
type |
String |
任務的類型,例:“CreateCluster”- 創(chuàng)建集群。 |
clusterUID |
String |
任務所在的集群的ID。 |
resourceID |
String |
任務操作的資源ID。 |
resourceName |
String |
任務操作的資源名稱。 |
extendParam |
Map<String,String> |
擴展參數。 |
subJobs |
子任務的列表。
|
參數 |
參數類型 |
描述 |
---|---|---|
kind |
String |
API類型,固定值“Job”,該值不可修改。 |
apiVersion |
String |
API版本,固定值“v3”,該值不可修改。 |
metadata |
任務元數據。 |
|
spec |
任務詳細參數。 |
|
status |
任務狀態(tài)信息。 |
請求示例
無
響應示例
狀態(tài)碼: 200
表示獲取任務信息成功。
{ "kind" : "Job", "apiVersion" : "v3", "metadata" : { "uid" : "354331b2c-229a-11e8-9c75-0255ac100ceb", "creationTimestamp" : "2018-08-02 08:12:40.672772389 +0000 UTC", "updateTimestamp" : "2018-08-02 08:21:50.478108569 +0000 UTC" }, "spec" : { "type" : "CreateCluster", "clusterUID" : "4d1ecb2c-229a-11e8-9c75-0255ac100ceb", "resourceID" : "6f4dcb2c-229a-11e8-9c75-0255ac100ceb", "resourceName" : "cluster-name", "extendParam" : { "serverID" : "bc467e3a-2338-11e8-825b-0255ac100c13" }, "subJobs" : [ { "kind" : "Job", "apiVersion" : "v3", "metadata" : { "uid" : "fd474fab-9606-11e8-baa9-0255ac10215d", "creationTimestamp" : "2018-08-02 03:52:34.615819618 +0000 UTC", "updateTimestamp" : "2018-08-02 04:05:29.196243031 +0000 UTC" }, "spec" : { "type" : "InstallMaster", "clusterUID" : "fcc72de0-9606-11e8-baa8-0255ac10215d", "resourceID" : "fd3b4ac0-9606-11e8-baa8-0255ac10215d", "extendParam" : { "serverID" : "fd3b4ac0-9606-11e8-baa8-0255ac10215d" } }, "status" : { "phase" : "Success" } }, { "kind" : "Job", "apiVersion" : "v3", "metadata" : { "uid" : "fd474f82-9606-11e8-baa8-0255ac10215d", "creationTimestamp" : "2018-08-02 03:52:33.859150791 +0000 UTC", "updateTimestamp" : "2018-08-02 03:52:34.615655429 +0000 UTC" }, "spec" : { "type" : "CreatePSMCert", "clusterUID" : "fcc72de0-9606-11e8-baa8-0255ac10215d" }, "status" : { "phase" : "Success" } } ] }, "status" : { "phase" : "Running", "reason" : "" } }
SDK代碼示例
SDK代碼示例如下。
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.cce.v3.region.CceRegion; import com.huaweicloud.sdk.cce.v3.*; import com.huaweicloud.sdk.cce.v3.model.*; public class ShowJobSolution { public static void main(String[] args) { String ak = "<YOUR AK>"; String sk = "<YOUR SK>"; String projectId = "<project_id>"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); CceClient client = CceClient.newBuilder() .withCredential(auth) .withRegion(CceRegion.valueOf("cn-north-4")) .build(); ShowJobRequest request = new ShowJobRequest(); request.withJobId("<job_id>"); try { ShowJobResponse response = client.showJob(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()); } } }
# coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcce.v3.region.cce_region import CceRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcce.v3 import * if __name__ == "__main__": ak = "<YOUR AK>" sk = "<YOUR SK>" projectId = "<project_id>" credentials = BasicCredentials(ak, sk, projectId) \ client = CceClient.new_builder() \ .with_credentials(credentials) \ .with_region(CceRegion.value_of("cn-north-4")) \ .build() try: request = ShowJobRequest() request.job_id = "<job_id>" response = client.show_job(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" cce "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/region" ) func main() { ak := "<YOUR AK>" sk := "<YOUR SK>" projectId := "<project_id>" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := cce.NewCceClient( cce.CceClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.ShowJobRequest{} request.JobId = "<job_id>" response, err := client.ShowJob(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
更多編程語言的SDK代碼示例,請參見API Explorer的代碼示例頁簽,可生成自動對應的SDK代碼示例。
狀態(tài)碼
狀態(tài)碼 |
描述 |
---|---|
200 |
表示獲取任務信息成功。 |
錯誤碼
請參見錯誤碼。