layer1: checkpoint namespace manager runtime series
This commit is contained in:
@@ -71,6 +71,7 @@ import (
|
||||
"github.com/fission/fission/pkg/utils"
|
||||
"github.com/fission/fission/pkg/utils/manager"
|
||||
)
|
||||
|
||||
// StartNSWatcher registers a Kubernetes Namespace Informer that reacts immediately
|
||||
// when a Namespace with label fission.io/managed=true is created or relabeled.
|
||||
//
|
||||
|
||||
@@ -21,21 +21,25 @@ type fakeExecutorType struct {
|
||||
}
|
||||
|
||||
func (f *fakeExecutorType) Run(context.Context, manager.Interface) {}
|
||||
func (f *fakeExecutorType) GetTypeName(context.Context) fv1.ExecutorType { return fv1.ExecutorTypePoolmgr }
|
||||
func (f *fakeExecutorType) GetTypeName(context.Context) fv1.ExecutorType {
|
||||
return fv1.ExecutorTypePoolmgr
|
||||
}
|
||||
func (f *fakeExecutorType) GetFuncSvc(context.Context, *fv1.Function) (*fscache.FuncSvc, error) {
|
||||
return nil, nil
|
||||
}
|
||||
func (f *fakeExecutorType) GetFuncSvcFromCache(context.Context, *fv1.Function) (*fscache.FuncSvc, error) {
|
||||
return nil, nil
|
||||
}
|
||||
func (f *fakeExecutorType) DumpDebugInfo(context.Context) error { return nil }
|
||||
func (f *fakeExecutorType) DeleteFuncSvcFromCache(context.Context, *fscache.FuncSvc) {}
|
||||
func (f *fakeExecutorType) TapService(context.Context, string) error { return nil }
|
||||
func (f *fakeExecutorType) UnTapService(context.Context, *metav1.ObjectMeta, string) {}
|
||||
func (f *fakeExecutorType) DumpDebugInfo(context.Context) error { return nil }
|
||||
func (f *fakeExecutorType) DeleteFuncSvcFromCache(context.Context, *fscache.FuncSvc) {}
|
||||
func (f *fakeExecutorType) TapService(context.Context, string) error { return nil }
|
||||
func (f *fakeExecutorType) UnTapService(context.Context, *metav1.ObjectMeta, string) {}
|
||||
func (f *fakeExecutorType) MarkSpecializationFailure(context.Context, *metav1.ObjectMeta) {}
|
||||
func (f *fakeExecutorType) IsValid(context.Context, *fscache.FuncSvc) bool { return true }
|
||||
func (f *fakeExecutorType) RefreshFuncPods(context.Context, *zap.Logger, fv1.Function) error { return nil }
|
||||
func (f *fakeExecutorType) AdoptExistingResources(context.Context) {}
|
||||
func (f *fakeExecutorType) IsValid(context.Context, *fscache.FuncSvc) bool { return true }
|
||||
func (f *fakeExecutorType) RefreshFuncPods(context.Context, *zap.Logger, fv1.Function) error {
|
||||
return nil
|
||||
}
|
||||
func (f *fakeExecutorType) AdoptExistingResources(context.Context) {}
|
||||
func (f *fakeExecutorType) CleanupOldExecutorObjects(context.Context) {}
|
||||
func (f *fakeExecutorType) AddNamespace(ctx context.Context, ns string, mgr manager.Interface) error {
|
||||
f.addCalls++
|
||||
@@ -62,7 +66,7 @@ func TestRegisterExecutorTypes(t *testing.T) {
|
||||
|
||||
func TestRegisterExecutorTypesAggregatesErrors(t *testing.T) {
|
||||
err := registerExecutorTypes(context.Background(), zap.NewNop(), "tenant-executor-a", map[fv1.ExecutorType]executortype.ExecutorType{
|
||||
fv1.ExecutorTypePoolmgr: &fakeExecutorType{addErr: errors.New("poolmgr failed")},
|
||||
fv1.ExecutorTypePoolmgr: &fakeExecutorType{addErr: errors.New("poolmgr failed")},
|
||||
fv1.ExecutorTypeContainer: &fakeExecutorType{},
|
||||
}, nil)
|
||||
if err == nil {
|
||||
|
||||
@@ -14,6 +14,7 @@ import (
|
||||
"github.com/fission/fission/pkg/utils"
|
||||
"github.com/fission/fission/pkg/utils/manager"
|
||||
)
|
||||
|
||||
// StartNSWatcher registers a Kubernetes Namespace Informer for the router.
|
||||
// Whenever a Namespace with label fission.io/managed=true appears (or is relabeled),
|
||||
// the router immediately subscribes to HTTPTriggers and Functions in that namespace.
|
||||
|
||||
@@ -25,10 +25,10 @@ type NamespaceSubscriber interface {
|
||||
}
|
||||
|
||||
type NamespaceSubscriberFuncs struct {
|
||||
SubscriberName string
|
||||
AddFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
RemoveFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
ResyncFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
SubscriberName string
|
||||
AddFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
RemoveFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
ResyncFunc func(ctx context.Context, record NamespaceRecord) error
|
||||
}
|
||||
|
||||
func (s NamespaceSubscriberFuncs) Name() string {
|
||||
|
||||
@@ -44,7 +44,7 @@ const (
|
||||
type NamespaceRemovalStrategy string
|
||||
|
||||
const (
|
||||
NamespaceRemovalStrategyTrackOnly NamespaceRemovalStrategy = "track-only"
|
||||
NamespaceRemovalStrategyTrackOnly NamespaceRemovalStrategy = "track-only"
|
||||
NamespaceRemovalStrategyDispatchRemove NamespaceRemovalStrategy = "dispatch-remove"
|
||||
)
|
||||
|
||||
|
||||
@@ -16,11 +16,11 @@ import (
|
||||
)
|
||||
|
||||
type testNamespaceSubscriber struct {
|
||||
name string
|
||||
addErr error
|
||||
removeErr error
|
||||
resyncErr error
|
||||
addCalls int
|
||||
name string
|
||||
addErr error
|
||||
removeErr error
|
||||
resyncErr error
|
||||
addCalls int
|
||||
removeCalls int
|
||||
resyncCalls int
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user