Browse Source

Merge pull request '增加算力中心对应的存储系统NodeID和StorageID' (#18) from feature_gxh into master

pull/20/head
baohan 2 years ago
parent
commit
68e086de4e
4 changed files with 32 additions and 61 deletions
  1. +12
    -12
      api/unifyops/unifyops.go
  2. +15
    -15
      api/unifyops/unifyops_test.go
  3. +0
    -31
      models/scheduler.go
  4. +5
    -3
      models/unifyops.go

+ 12
- 12
api/unifyops/unifyops.go View File

@@ -12,11 +12,11 @@ import (


const CORRECT_CODE int = 200 const CORRECT_CODE int = 200


type SlwNodeInfo struct {
type GetAllSlwNodeInfoResp struct {
Nodes []models.SlwNode `json:"nodes"` 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getSlwNodeInfo")
if err != nil { if err != nil {
return nil, err return nil, err
@@ -28,7 +28,7 @@ func (c *Client) GetSlwNodeInfo() (*SlwNodeInfo, error) {
contType := resp.Header.Get("Content-Type") contType := resp.Header.Get("Content-Type")
if strings.Contains(contType, myhttp.ContentTypeJSON) { if strings.Contains(contType, myhttp.ContentTypeJSON) {


var codeResp response[SlwNodeInfo]
var codeResp response[GetAllSlwNodeInfoResp]
if err := serder.JSONToObjectStream(resp.Body, &codeResp); err != nil { if err := serder.JSONToObjectStream(resp.Body, &codeResp); err != nil {
return nil, fmt.Errorf("parsing response: %w", err) 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getCPUData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getNPUData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getGPUData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getMLUData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getStorageData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getMemoryData")
if err != nil { if err != nil {
return nil, err 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) 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") url, err := url.JoinPath(c.baseURL, "/cmdb/resApi/getIndicatorData")
if err != nil { if err != nil {
return nil, err return nil, err


+ 15
- 15
api/unifyops/unifyops_test.go View File

@@ -13,47 +13,47 @@ func Test_UnifyOps(t *testing.T) {
URL: "http://101.201.215.165:6000", URL: "http://101.201.215.165:6000",
}) })


slwNodeInfos, err := cli.GetSlwNodeInfo()
slwNodeInfos, err := cli.GetAllSlwNodeInfo()
So(err, ShouldBeNil) 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) So(err, ShouldBeNil)
fmt.Printf("cpuData: %v\n", cpuData) 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) So(err, ShouldBeNil)
fmt.Printf("gpuData: %v\n", gpuData) 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) So(err, ShouldBeNil)
fmt.Printf("npuData: %v\n", npuData) 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) So(err, ShouldBeNil)
fmt.Printf("mluData: %v\n", mluData) 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) So(err, ShouldBeNil)
fmt.Printf("storageData: %v\n", storageData) 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) So(err, ShouldBeNil)
fmt.Printf("memoryData: %v\n", memoryData) 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) So(err, ShouldBeNil)
fmt.Printf("indicatorData: %v\n", indicatorData) fmt.Printf("indicatorData: %v\n", indicatorData)


+ 0
- 31
models/scheduler.go View File

@@ -117,37 +117,6 @@ func JobSetInfoFromJSON(data []byte) (*JobSetInfo, error) {
return &ret, nil 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 { type JobSetFilesUploadScheme struct {
LocalFileSchemes []LocalFileUploadScheme `json:"localFileUploadSchemes"` LocalFileSchemes []LocalFileUploadScheme `json:"localFileUploadSchemes"`
} }


+ 5
- 3
models/unifyops.go View File

@@ -16,9 +16,11 @@ const (
) )


type SlwNode struct { 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{} type ResourceData interface{}


Loading…
Cancel
Save