mirror of
https://github.com/hanzo-ml/katib.git
synced 2026-09-24 00:31:27 +00:00
* chore(ci): add k8s version 1.31. Signed-off-by: Electronic-Waste <[email protected]> * chore(Makefile): upgrade envtest version to 1.31 & setup-envtest to release-0.19. Signed-off-by: Electronic-Waste <[email protected]> * chore: update k8s related package in go.mod Signed-off-by: Electronic-Waste <[email protected]> * chore: make generate. Signed-off-by: Electronic-Waste <[email protected]> * fix(test): add SkipNameValidation option to test frame. Signed-off-by: Electronic-Waste <[email protected]> * refactor(grpc): remove deprecated grpc.Dial implementation. Signed-off-by: Electronic-Waste <[email protected]> * fix(dependency): remove dependency on k8s v1.28 Signed-off-by: Electronic-Waste <[email protected]> * fix: add type assertion to ptr.To Signed-off-by: Electronic-Waste <[email protected]> --------- Signed-off-by: Electronic-Waste <[email protected]>
96 lines
2.8 KiB
Go
96 lines
2.8 KiB
Go
/*
|
|
Copyright 2022 The Kubeflow Authors.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
package v1beta1
|
|
|
|
import (
|
|
"context"
|
|
|
|
"google.golang.org/grpc"
|
|
"google.golang.org/grpc/credentials/insecure"
|
|
|
|
api_pb "github.com/kubeflow/katib/pkg/apis/manager/v1beta1"
|
|
"github.com/kubeflow/katib/pkg/controller.v1beta1/consts"
|
|
)
|
|
|
|
type katibDBManagerClientAndConn struct {
|
|
Conn *grpc.ClientConn
|
|
KatibDBManagerClient api_pb.DBManagerClient
|
|
}
|
|
|
|
// GetDBManagerAddr returns address of Katib DB Manager
|
|
func GetDBManagerAddr() string {
|
|
dbManagerNS := consts.DefaultKatibDBManagerServiceNamespace
|
|
dbManagerIP := consts.DefaultKatibDBManagerServiceIP
|
|
dbManagerPort := consts.DefaultKatibDBManagerServicePort
|
|
|
|
if len(dbManagerNS) != 0 {
|
|
return dbManagerIP + "." + dbManagerNS + ":" + dbManagerPort
|
|
}
|
|
|
|
return dbManagerIP + ":" + dbManagerPort
|
|
}
|
|
|
|
func getKatibDBManagerClientAndConn() (*katibDBManagerClientAndConn, error) {
|
|
addr := GetDBManagerAddr()
|
|
conn, err := grpc.NewClient(addr, grpc.WithTransportCredentials(insecure.NewCredentials()))
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
kcc := &katibDBManagerClientAndConn{
|
|
Conn: conn,
|
|
KatibDBManagerClient: api_pb.NewDBManagerClient(conn),
|
|
}
|
|
return kcc, nil
|
|
}
|
|
|
|
func closeKatibDBManagerConnection(kcc *katibDBManagerClientAndConn) {
|
|
kcc.Conn.Close()
|
|
}
|
|
|
|
func GetObservationLog(request *api_pb.GetObservationLogRequest) (*api_pb.GetObservationLogReply, error) {
|
|
ctx := context.Background()
|
|
kcc, err := getKatibDBManagerClientAndConn()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer closeKatibDBManagerConnection(kcc)
|
|
kc := kcc.KatibDBManagerClient
|
|
return kc.GetObservationLog(ctx, request)
|
|
}
|
|
|
|
func ReportObservationLog(request *api_pb.ReportObservationLogRequest) (*api_pb.ReportObservationLogReply, error) {
|
|
ctx := context.Background()
|
|
kcc, err := getKatibDBManagerClientAndConn()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer closeKatibDBManagerConnection(kcc)
|
|
kc := kcc.KatibDBManagerClient
|
|
return kc.ReportObservationLog(ctx, request)
|
|
}
|
|
|
|
func DeleteObservationLog(request *api_pb.DeleteObservationLogRequest) (*api_pb.DeleteObservationLogReply, error) {
|
|
ctx := context.Background()
|
|
kcc, err := getKatibDBManagerClientAndConn()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer closeKatibDBManagerConnection(kcc)
|
|
kc := kcc.KatibDBManagerClient
|
|
return kc.DeleteObservationLog(ctx, request)
|
|
}
|