From 5855fe11170f3fb6ce29d414317aff5942244f39 Mon Sep 17 00:00:00 2001 From: Sydonian <794346190@qq.com> Date: Fri, 8 Sep 2023 16:19:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=AE=97=E5=8A=9B=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E5=AF=B9=E5=BA=94=E7=9A=84=E5=AD=98=E5=82=A8=E7=B3=BB?= =?UTF-8?q?=E7=BB=9FNodeID=E5=92=8CStorageID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/unifyops/unifyops.go | 24 ++++++++++++------------ api/unifyops/unifyops_test.go | 30 +++++++++++++++--------------- models/scheduler.go | 31 ------------------------------- models/unifyops.go | 8 +++++--- 4 files changed, 32 insertions(+), 61 deletions(-) diff --git a/api/unifyops/unifyops.go b/api/unifyops/unifyops.go index c67fed0..17d62be 100644 --- a/api/unifyops/unifyops.go +++ b/api/unifyops/unifyops.go @@ -12,11 +12,11 @@ import ( const CORRECT_CODE int = 200 -type SlwNodeInfo struct { +type GetAllSlwNodeInfoResp struct { Nodes []models.SlwNode `json:"nodes"` } -func (c *Client) GetSlwNodeInfo() (*SlwNodeInfo, error) { +func (c *Client) GetAllSlwNodeInfo() (*GetAllSlwNodeInfoResp, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getSlwNodeInfo") if err != nil { return nil, err @@ -28,7 +28,7 @@ func (c *Client) GetSlwNodeInfo() (*SlwNodeInfo, error) { contType := resp.Header.Get("Content-Type") if strings.Contains(contType, myhttp.ContentTypeJSON) { - var codeResp response[SlwNodeInfo] + var codeResp response[GetAllSlwNodeInfoResp] if err := serder.JSONToObjectStream(resp.Body, &codeResp); err != nil { return nil, fmt.Errorf("parsing response: %w", err) } @@ -43,11 +43,11 @@ func (c *Client) GetSlwNodeInfo() (*SlwNodeInfo, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -type Node struct { - NodeId int64 `json:"nodeId"` +type GetOneResourceDataReq struct { + SlwNodeID int64 `json:"nodeId"` } -func (c *Client) GetCPUData(node Node) (*models.CPUResourceData, error) { +func (c *Client) GetCPUData(node GetOneResourceDataReq) (*models.CPUResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getCPUData") if err != nil { return nil, err @@ -77,7 +77,7 @@ func (c *Client) GetCPUData(node Node) (*models.CPUResourceData, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetNPUData(node Node) (*models.NPUResourceData, error) { +func (c *Client) GetNPUData(node GetOneResourceDataReq) (*models.NPUResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getNPUData") if err != nil { return nil, err @@ -107,7 +107,7 @@ func (c *Client) GetNPUData(node Node) (*models.NPUResourceData, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetGPUData(node Node) (*models.GPUResourceData, error) { +func (c *Client) GetGPUData(node GetOneResourceDataReq) (*models.GPUResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getGPUData") if err != nil { return nil, err @@ -137,7 +137,7 @@ func (c *Client) GetGPUData(node Node) (*models.GPUResourceData, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetMLUData(node Node) (*models.MLUResourceData, error) { +func (c *Client) GetMLUData(node GetOneResourceDataReq) (*models.MLUResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getMLUData") if err != nil { return nil, err @@ -167,7 +167,7 @@ func (c *Client) GetMLUData(node Node) (*models.MLUResourceData, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetStorageData(node Node) (*models.StorageResourceData, error) { +func (c *Client) GetStorageData(node GetOneResourceDataReq) (*models.StorageResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getStorageData") if err != nil { return nil, err @@ -197,7 +197,7 @@ func (c *Client) GetStorageData(node Node) (*models.StorageResourceData, error) return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetMemoryData(node Node) (*models.MemoryResourceData, error) { +func (c *Client) GetMemoryData(node GetOneResourceDataReq) (*models.MemoryResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getMemoryData") if err != nil { return nil, err @@ -227,7 +227,7 @@ func (c *Client) GetMemoryData(node Node) (*models.MemoryResourceData, error) { return nil, fmt.Errorf("unknow response content type: %s", contType) } -func (c *Client) GetIndicatorData(node Node) (*[]models.ResourceData, error) { +func (c *Client) GetIndicatorData(node GetOneResourceDataReq) (*[]models.ResourceData, error) { url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getIndicatorData") if err != nil { return nil, err diff --git a/api/unifyops/unifyops_test.go b/api/unifyops/unifyops_test.go index a1cd42d..921e6d4 100644 --- a/api/unifyops/unifyops_test.go +++ b/api/unifyops/unifyops_test.go @@ -13,47 +13,47 @@ func Test_UnifyOps(t *testing.T) { URL: "http://101.201.215.165:6000", }) - slwNodeInfos, err := cli.GetSlwNodeInfo() + slwNodeInfos, err := cli.GetAllSlwNodeInfo() So(err, ShouldBeNil) - cpuData, err := cli.GetCPUData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + cpuData, err := cli.GetCPUData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("cpuData: %v\n", cpuData) - gpuData, err := cli.GetGPUData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + gpuData, err := cli.GetGPUData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("gpuData: %v\n", gpuData) - npuData, err := cli.GetNPUData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + npuData, err := cli.GetNPUData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("npuData: %v\n", npuData) - mluData, err := cli.GetMLUData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + mluData, err := cli.GetMLUData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("mluData: %v\n", mluData) - storageData, err := cli.GetStorageData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + storageData, err := cli.GetStorageData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("storageData: %v\n", storageData) - memoryData, err := cli.GetMemoryData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + memoryData, err := cli.GetMemoryData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("memoryData: %v\n", memoryData) - indicatorData, err := cli.GetIndicatorData(Node{ - NodeId: slwNodeInfos.Nodes[0].ID, + indicatorData, err := cli.GetIndicatorData(GetOneResourceDataReq{ + SlwNodeID: slwNodeInfos.Nodes[0].ID, }) So(err, ShouldBeNil) fmt.Printf("indicatorData: %v\n", indicatorData) diff --git a/models/scheduler.go b/models/scheduler.go index e9ae1da..5524744 100644 --- a/models/scheduler.go +++ b/models/scheduler.go @@ -117,37 +117,6 @@ func JobSetInfoFromJSON(data []byte) (*JobSetInfo, error) { return &ret, nil } -const ( - FileScheduleActionNo = "No" - FileScheduleActionMove = "Move" - FileScheduleActionLoad = "Load" -) - -type FileScheduleScheme struct { - Action string `json:"action"` - TargetStorageID int64 `json:"targetStorageID"` -} - -const ( - ImageScheduleActionNo = "No" - ImageScheduleActionImport = "Import" -) - -type ImageScheduleScheme struct { - Action string `json:"action"` -} - -type JobScheduleScheme struct { - TargetSlwNodeID int64 `json:"targetSlwNodeID"` - Dataset FileScheduleScheme `json:"dataset"` - Code FileScheduleScheme `json:"code"` - Image ImageScheduleScheme `json:"image"` -} - -type JobSetPreScheduleScheme struct { - JobSchemes map[string]JobScheduleScheme `json:"jobSchemes"` // 任务的预调度方案。Key为LocalJobIDs -} - type JobSetFilesUploadScheme struct { LocalFileSchemes []LocalFileUploadScheme `json:"localFileUploadSchemes"` } diff --git a/models/unifyops.go b/models/unifyops.go index f5a83ab..720f599 100644 --- a/models/unifyops.go +++ b/models/unifyops.go @@ -16,9 +16,11 @@ const ( ) type SlwNode struct { - ID int64 `json:"ID"` - Name string `json:"name"` - SlwRegionID int64 `json:"slwRegionID"` + ID int64 `json:"ID"` + Name string `json:"name"` + SlwRegionID int64 `json:"slwRegionID"` + StgNodeID int64 `json:"stgNodeID"` + StorageID int64 `json:"StorageID"` } type ResourceData interface{}