Conflicts: adaptor/PCM-HPC/PCM-AC/rpc/hpcacclient/hpcac.gopull/9/head
| @@ -1,7 +1,7 @@ | |||
| // Code generated by protoc-gen-go-grpc. DO NOT EDIT. | |||
| // versions: | |||
| // - protoc-gen-go-grpc v1.2.0 | |||
| // - protoc v3.19.4 | |||
| // - protoc v3.12.4 | |||
| // source: hpcAC.proto | |||
| package hpcAC | |||
| @@ -28,6 +28,8 @@ type HpcACClient interface { | |||
| ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | |||
| // Submit job | |||
| SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...grpc.CallOption) (*SubmitJobResp, error) | |||
| // ListJobManager list all job managers | |||
| ListJobManager(ctx context.Context, in *JobManagerReq, opts ...grpc.CallOption) (*ListJobManagerResp, error) | |||
| } | |||
| type hpcACClient struct { | |||
| @@ -65,6 +67,15 @@ func (c *hpcACClient) SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...g | |||
| return out, nil | |||
| } | |||
| func (c *hpcACClient) ListJobManager(ctx context.Context, in *JobManagerReq, opts ...grpc.CallOption) (*ListJobManagerResp, error) { | |||
| out := new(ListJobManagerResp) | |||
| err := c.cc.Invoke(ctx, "/hpcAC.hpcAC/ListJobManager", in, out, opts...) | |||
| if err != nil { | |||
| return nil, err | |||
| } | |||
| return out, nil | |||
| } | |||
| // HpcACServer is the server API for HpcAC service. | |||
| // All implementations must embed UnimplementedHpcACServer | |||
| // for forward compatibility | |||
| @@ -75,6 +86,8 @@ type HpcACServer interface { | |||
| ListHistoryJob(context.Context, *ListHistoryJobReq) (*ListHistoryJobResp, error) | |||
| // Submit job | |||
| SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) | |||
| // ListJobManager list all job managers | |||
| ListJobManager(context.Context, *JobManagerReq) (*ListJobManagerResp, error) | |||
| mustEmbedUnimplementedHpcACServer() | |||
| } | |||
| @@ -91,6 +104,9 @@ func (UnimplementedHpcACServer) ListHistoryJob(context.Context, *ListHistoryJobR | |||
| func (UnimplementedHpcACServer) SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) { | |||
| return nil, status.Errorf(codes.Unimplemented, "method SubmitJob not implemented") | |||
| } | |||
| func (UnimplementedHpcACServer) ListJobManager(context.Context, *JobManagerReq) (*ListJobManagerResp, error) { | |||
| return nil, status.Errorf(codes.Unimplemented, "method ListJobManager not implemented") | |||
| } | |||
| func (UnimplementedHpcACServer) mustEmbedUnimplementedHpcACServer() {} | |||
| // UnsafeHpcACServer may be embedded to opt out of forward compatibility for this service. | |||
| @@ -158,6 +174,24 @@ func _HpcAC_SubmitJob_Handler(srv interface{}, ctx context.Context, dec func(int | |||
| return interceptor(ctx, in, info, handler) | |||
| } | |||
| func _HpcAC_ListJobManager_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { | |||
| in := new(JobManagerReq) | |||
| if err := dec(in); err != nil { | |||
| return nil, err | |||
| } | |||
| if interceptor == nil { | |||
| return srv.(HpcACServer).ListJobManager(ctx, in) | |||
| } | |||
| info := &grpc.UnaryServerInfo{ | |||
| Server: srv, | |||
| FullMethod: "/hpcAC.hpcAC/ListJobManager", | |||
| } | |||
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { | |||
| return srv.(HpcACServer).ListJobManager(ctx, req.(*JobManagerReq)) | |||
| } | |||
| return interceptor(ctx, in, info, handler) | |||
| } | |||
| // HpcAC_ServiceDesc is the grpc.ServiceDesc for HpcAC service. | |||
| // It's only intended for direct use with grpc.RegisterService, | |||
| // and not to be introspected or modified (even as a copy) | |||
| @@ -177,6 +211,10 @@ var HpcAC_ServiceDesc = grpc.ServiceDesc{ | |||
| MethodName: "SubmitJob", | |||
| Handler: _HpcAC_SubmitJob_Handler, | |||
| }, | |||
| { | |||
| MethodName: "ListJobManager", | |||
| Handler: _HpcAC_ListJobManager_Handler, | |||
| }, | |||
| }, | |||
| Streams: []grpc.StreamDesc{}, | |||
| Metadata: "hpcAC.proto", | |||
| @@ -16,9 +16,12 @@ type ( | |||
| DataSet = hpcAC.DataSet | |||
| HistoryJob = hpcAC.HistoryJob | |||
| Job = hpcAC.Job | |||
| JobManager = hpcAC.JobManager | |||
| JobManagerReq = hpcAC.JobManagerReq | |||
| ListHistoryJobJson = hpcAC.ListHistoryJobJson | |||
| ListHistoryJobReq = hpcAC.ListHistoryJobReq | |||
| ListHistoryJobResp = hpcAC.ListHistoryJobResp | |||
| ListJobManagerResp = hpcAC.ListJobManagerResp | |||
| ListJobReq = hpcAC.ListJobReq | |||
| ListJobResp = hpcAC.ListJobResp | |||
| MapAppJobInfo = hpcAC.MapAppJobInfo | |||
| @@ -32,6 +35,8 @@ type ( | |||
| ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | |||
| // Submit job | |||
| SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...grpc.CallOption) (*SubmitJobResp, error) | |||
| // ListJobManager list all job managers | |||
| ListJobManager(ctx context.Context, in *JobManagerReq, opts ...grpc.CallOption) (*ListJobManagerResp, error) | |||
| } | |||
| defaultHpcAC struct { | |||
| @@ -62,3 +67,9 @@ func (m *defaultHpcAC) SubmitJob(ctx context.Context, in *SubmitJobReq, opts ... | |||
| client := hpcAC.NewHpcACClient(m.cli.Conn()) | |||
| return client.SubmitJob(ctx, in, opts...) | |||
| } | |||
| // ListJobManager list all job managers | |||
| func (m *defaultHpcAC) ListJobManager(ctx context.Context, in *JobManagerReq, opts ...grpc.CallOption) (*ListJobManagerResp, error) { | |||
| client := hpcAC.NewHpcACClient(m.cli.Conn()) | |||
| return client.ListJobManager(ctx, in, opts...) | |||
| } | |||
| @@ -0,0 +1,74 @@ | |||
| package logic | |||
| import ( | |||
| "context" | |||
| "encoding/json" | |||
| "io" | |||
| "log" | |||
| "net/http" | |||
| "time" | |||
| "PCM/adaptor/PCM-HPC/PCM-AC/rpc/hpcAC" | |||
| "PCM/adaptor/PCM-HPC/PCM-AC/rpc/internal/svc" | |||
| "PCM/adaptor/PCM-HPC/PCM-AC/rpc/internal/util" | |||
| "github.com/zeromicro/go-zero/core/logx" | |||
| ) | |||
| type ListJobManagerLogic struct { | |||
| ctx context.Context | |||
| svcCtx *svc.ServiceContext | |||
| logx.Logger | |||
| } | |||
| func NewListJobManagerLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ListJobManagerLogic { | |||
| return &ListJobManagerLogic{ | |||
| ctx: ctx, | |||
| svcCtx: svcCtx, | |||
| Logger: logx.WithContext(ctx), | |||
| } | |||
| } | |||
| // ListJobManager list all job managers | |||
| func (l *ListJobManagerLogic) ListJobManager(in *hpcAC.JobManagerReq) (*hpcAC.ListJobManagerResp, error) { | |||
| // todo: add your logic here and delete this line | |||
| var resp hpcAC.ListJobManagerResp | |||
| jobHistoryUrl := "hpc/openapi/v2/cluster" | |||
| Gtoken := util.GetToken() | |||
| c := http.Client{Timeout: time.Duration(3) * time.Second} | |||
| reqUrl, err := http.NewRequest("GET", "https://api01.hpccube.com:65106/"+jobHistoryUrl, nil) | |||
| if err != nil { | |||
| log.Fatal(err) | |||
| } | |||
| var token string | |||
| if util.GetTokenState(Gtoken) { | |||
| token = Gtoken | |||
| } else { | |||
| token = util.GetToken() | |||
| Gtoken = token | |||
| } | |||
| reqUrl.Header.Add("token", token) | |||
| respUrl, err := c.Do(reqUrl) | |||
| if err != nil { | |||
| log.Fatal(err) | |||
| } | |||
| body, err := io.ReadAll(respUrl.Body) | |||
| if err != nil { | |||
| log.Fatal(err) | |||
| } | |||
| if err = json.Unmarshal(body, &resp); err != nil { | |||
| log.Fatal(err) | |||
| } | |||
| return &resp, nil | |||
| } | |||
| @@ -39,3 +39,9 @@ func (s *HpcACServer) SubmitJob(ctx context.Context, in *hpcAC.SubmitJobReq) (*h | |||
| l := logic.NewSubmitJobLogic(ctx, s.svcCtx) | |||
| return l.SubmitJob(in) | |||
| } | |||
| // ListJobManager list all job managers | |||
| func (s *HpcACServer) ListJobManager(ctx context.Context, in *hpcAC.JobManagerReq) (*hpcAC.ListJobManagerResp, error) { | |||
| l := logic.NewListJobManagerLogic(ctx, s.svcCtx) | |||
| return l.ListJobManager(in) | |||
| } | |||
| @@ -3,7 +3,24 @@ syntax = "proto3"; | |||
| package hpcAC; | |||
| option go_package = "/hpcAC"; | |||
| /******************cluster Start*************************/ | |||
| message JobManager{ | |||
| string job_manager_type = 1; // @gotags: copier:"JobManagerType", json:"JobManagerType" | |||
| string job_manager_addr = 2; // @gotags: copier:"JobManagerAddr", json:"JobManagerAddr" | |||
| int64 id = 3; // @gotags: copier:"ID", json:"id" | |||
| string text = 4; // @gotags: copier:"Text", json:"text" | |||
| string job_manager_port = 5; // @gotags: copier:"JobManagerPort", json:"JobManagerPort" | |||
| } | |||
| message JobManagerReq{ | |||
| } | |||
| message ListJobManagerResp{ | |||
| string code = 1; // @gotags: copier:"Code", json:"code" | |||
| string msg = 2; // @gotags: copier:"Msg", json:"msg" | |||
| repeated JobManager job_managers = 3; // @gotags: copier:"JobManagers", json:"data" | |||
| } | |||
| /******************cluster End*************************/ | |||
| /******************Job Start*************************/ | |||
| message job{ | |||
| @@ -136,4 +153,6 @@ service hpcAC { | |||
| //Submit job | |||
| rpc SubmitJob(SubmitJobReq) returns (SubmitJobResp); | |||
| // ListJobManager list all job managers | |||
| rpc ListJobManager(JobManagerReq) returns (ListJobManagerResp); | |||
| } | |||