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. | // Code generated by protoc-gen-go-grpc. DO NOT EDIT. | ||||
| // versions: | // versions: | ||||
| // - protoc-gen-go-grpc v1.2.0 | // - protoc-gen-go-grpc v1.2.0 | ||||
| // - protoc v3.19.4 | |||||
| // - protoc v3.12.4 | |||||
| // source: hpcAC.proto | // source: hpcAC.proto | ||||
| package hpcAC | package hpcAC | ||||
| @@ -28,6 +28,8 @@ type HpcACClient interface { | |||||
| ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | ||||
| // Submit job | // Submit job | ||||
| SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...grpc.CallOption) (*SubmitJobResp, error) | 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 { | type hpcACClient struct { | ||||
| @@ -65,6 +67,15 @@ func (c *hpcACClient) SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...g | |||||
| return out, nil | 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. | // HpcACServer is the server API for HpcAC service. | ||||
| // All implementations must embed UnimplementedHpcACServer | // All implementations must embed UnimplementedHpcACServer | ||||
| // for forward compatibility | // for forward compatibility | ||||
| @@ -75,6 +86,8 @@ type HpcACServer interface { | |||||
| ListHistoryJob(context.Context, *ListHistoryJobReq) (*ListHistoryJobResp, error) | ListHistoryJob(context.Context, *ListHistoryJobReq) (*ListHistoryJobResp, error) | ||||
| // Submit job | // Submit job | ||||
| SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) | SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) | ||||
| // ListJobManager list all job managers | |||||
| ListJobManager(context.Context, *JobManagerReq) (*ListJobManagerResp, error) | |||||
| mustEmbedUnimplementedHpcACServer() | mustEmbedUnimplementedHpcACServer() | ||||
| } | } | ||||
| @@ -91,6 +104,9 @@ func (UnimplementedHpcACServer) ListHistoryJob(context.Context, *ListHistoryJobR | |||||
| func (UnimplementedHpcACServer) SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) { | func (UnimplementedHpcACServer) SubmitJob(context.Context, *SubmitJobReq) (*SubmitJobResp, error) { | ||||
| return nil, status.Errorf(codes.Unimplemented, "method SubmitJob not implemented") | 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() {} | func (UnimplementedHpcACServer) mustEmbedUnimplementedHpcACServer() {} | ||||
| // UnsafeHpcACServer may be embedded to opt out of forward compatibility for this service. | // 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) | 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. | // HpcAC_ServiceDesc is the grpc.ServiceDesc for HpcAC service. | ||||
| // It's only intended for direct use with grpc.RegisterService, | // It's only intended for direct use with grpc.RegisterService, | ||||
| // and not to be introspected or modified (even as a copy) | // and not to be introspected or modified (even as a copy) | ||||
| @@ -177,6 +211,10 @@ var HpcAC_ServiceDesc = grpc.ServiceDesc{ | |||||
| MethodName: "SubmitJob", | MethodName: "SubmitJob", | ||||
| Handler: _HpcAC_SubmitJob_Handler, | Handler: _HpcAC_SubmitJob_Handler, | ||||
| }, | }, | ||||
| { | |||||
| MethodName: "ListJobManager", | |||||
| Handler: _HpcAC_ListJobManager_Handler, | |||||
| }, | |||||
| }, | }, | ||||
| Streams: []grpc.StreamDesc{}, | Streams: []grpc.StreamDesc{}, | ||||
| Metadata: "hpcAC.proto", | Metadata: "hpcAC.proto", | ||||
| @@ -16,9 +16,12 @@ type ( | |||||
| DataSet = hpcAC.DataSet | DataSet = hpcAC.DataSet | ||||
| HistoryJob = hpcAC.HistoryJob | HistoryJob = hpcAC.HistoryJob | ||||
| Job = hpcAC.Job | Job = hpcAC.Job | ||||
| JobManager = hpcAC.JobManager | |||||
| JobManagerReq = hpcAC.JobManagerReq | |||||
| ListHistoryJobJson = hpcAC.ListHistoryJobJson | ListHistoryJobJson = hpcAC.ListHistoryJobJson | ||||
| ListHistoryJobReq = hpcAC.ListHistoryJobReq | ListHistoryJobReq = hpcAC.ListHistoryJobReq | ||||
| ListHistoryJobResp = hpcAC.ListHistoryJobResp | ListHistoryJobResp = hpcAC.ListHistoryJobResp | ||||
| ListJobManagerResp = hpcAC.ListJobManagerResp | |||||
| ListJobReq = hpcAC.ListJobReq | ListJobReq = hpcAC.ListJobReq | ||||
| ListJobResp = hpcAC.ListJobResp | ListJobResp = hpcAC.ListJobResp | ||||
| MapAppJobInfo = hpcAC.MapAppJobInfo | MapAppJobInfo = hpcAC.MapAppJobInfo | ||||
| @@ -32,6 +35,8 @@ type ( | |||||
| ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | ListHistoryJob(ctx context.Context, in *ListHistoryJobReq, opts ...grpc.CallOption) (*ListHistoryJobResp, error) | ||||
| // Submit job | // Submit job | ||||
| SubmitJob(ctx context.Context, in *SubmitJobReq, opts ...grpc.CallOption) (*SubmitJobResp, error) | 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 { | defaultHpcAC struct { | ||||
| @@ -62,3 +67,9 @@ func (m *defaultHpcAC) SubmitJob(ctx context.Context, in *SubmitJobReq, opts ... | |||||
| client := hpcAC.NewHpcACClient(m.cli.Conn()) | client := hpcAC.NewHpcACClient(m.cli.Conn()) | ||||
| return client.SubmitJob(ctx, in, opts...) | 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) | l := logic.NewSubmitJobLogic(ctx, s.svcCtx) | ||||
| return l.SubmitJob(in) | 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; | package hpcAC; | ||||
| option go_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*************************/ | /******************Job Start*************************/ | ||||
| message job{ | message job{ | ||||
| @@ -136,4 +153,6 @@ service hpcAC { | |||||
| //Submit job | //Submit job | ||||
| rpc SubmitJob(SubmitJobReq) returns (SubmitJobResp); | rpc SubmitJob(SubmitJobReq) returns (SubmitJobResp); | ||||
| // ListJobManager list all job managers | |||||
| rpc ListJobManager(JobManagerReq) returns (ListJobManagerResp); | |||||
| } | } | ||||