add leader election to controller manager

This commit is contained in:
Jeff
2019-10-19 16:15:48 +08:00
committed by zryfish
parent d8dc4c543e
commit 02269bb9d7
87 changed files with 15751 additions and 824 deletions

View File

@@ -1,35 +0,0 @@
// Copyright 2018 The OpenPitrix Authors. All rights reserved.
// Use of this source code is governed by a Apache license
// that can be found in the LICENSE file.
package client
import (
"context"
accessclient "openpitrix.io/openpitrix/pkg/client/access"
"openpitrix.io/openpitrix/pkg/pb"
"openpitrix.io/openpitrix/pkg/sender"
"openpitrix.io/openpitrix/pkg/util/ctxutil"
)
func SetSystemUserToContext(ctx context.Context) context.Context {
return ctxutil.ContextWithSender(ctx, sender.GetSystemSender())
}
func SetUserToContext(ctx context.Context, userId, apiMethod string) (context.Context, error) {
accessClient, err := accessclient.NewClient()
if err != nil {
return nil, err
}
response, err := accessClient.CanDo(ctx, &pb.CanDoRequest{
UserId: userId,
ApiMethod: apiMethod,
})
if err != nil {
return nil, err
}
userSender := sender.New(response.UserId, sender.OwnerPath(response.OwnerPath), sender.OwnerPath(response.AccessPath))
return ctxutil.ContextWithSender(ctx, userSender), nil
}