forked from JointCloud/pcm-coordinator
32 lines
1.1 KiB
Go
32 lines
1.1 KiB
Go
package slurmer
|
|
|
|
import "C"
|
|
import (
|
|
pbslurm "code.gitlink.org.cn/JCCE/PCM.git/adaptor/pcm_slurm/gen/idl"
|
|
"code.gitlink.org.cn/JCCE/PCM.git/adaptor/pcm_slurm/service/tianhe"
|
|
"context"
|
|
"strings"
|
|
)
|
|
|
|
func (slurmStruct SlurmStruct) ListPartitions(ctx context.Context, req *pbslurm.ListPartitionsReq) (*pbslurm.ListPartitionsResp, error) {
|
|
partitionList := tianhe.Get_partitions()
|
|
var resp = pbslurm.ListPartitionsResp{}
|
|
for _, partition := range partitionList.PartitionInfoList {
|
|
partitionInfoResult := partition
|
|
resp.PartitionList = append(resp.PartitionList, &partitionInfoResult)
|
|
}
|
|
return &resp, nil
|
|
}
|
|
|
|
func (slurmStruct SlurmStruct) GetPartition(ctx context.Context, req *pbslurm.GetPartitionReq) (*pbslurm.GetPartitionResp, error) {
|
|
PartitionList := tianhe.GetPartitionsInfo()
|
|
resp := pbslurm.GetPartitionResp{}
|
|
for _, partition := range PartitionList.PartitionInfoList {
|
|
partitionInfoResult := partition
|
|
if strings.Contains(partition.Name, req.PartitionName) {
|
|
resp.PartitionInfos = append(resp.PartitionInfos, &partitionInfoResult)
|
|
}
|
|
}
|
|
return &resp, nil
|
|
}
|