cluster

package
v1.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2020 License: Apache-2.0, BSD-2-Clause, BSD-3-Clause, + 8 more Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReasonWaiting      = "Waiting"
	ReasonSkip         = "Skip"
	ReasonFailedInit   = "FailedInit"
	ReasonFailedUpdate = "FailedUpdate"
	ReasonFailedDelete = "FailedDelete"

	ConditionTypeDone = "EnsureDone"
)

Variables

This section is empty.

Functions

func Providers

func Providers() []string

Providers returns a sorted list of the names of the registered providers.

func Register

func Register(name string, provider Provider)

Register makes a provider available by the provided name. If Register is called twice with the same name or if provider is nil, it panics.

func RegisterHandler added in v1.3.1

func RegisterHandler(mux *mux.PathRecorderMux)

RegisterHandler register all provider's hanlder.

func Setup added in v1.3.1

func Setup() error

Setup call all provider's setup method.

func Teardown added in v1.3.1

func Teardown() error

Teardown call all provider's teardown method.

Types

type APIProvider added in v1.3.1

type APIProvider interface {
	RegisterHandler(mux *mux.PathRecorderMux)
	Validate(cluster *types.Cluster) field.ErrorList
	PreCreate(cluster *types.Cluster) error
	AfterCreate(cluster *types.Cluster) error
}

type ControllerProvider added in v1.3.1

type ControllerProvider interface {
	// Setup called by controller to give an chance for plugin do some init work.
	Setup() error
	// Teardown called by controller for plugin do some clean job.
	Teardown() error

	OnCreate(ctx context.Context, cluster *v1.Cluster) error
	OnUpdate(ctx context.Context, cluster *v1.Cluster) error
	OnDelete(ctx context.Context, cluster *v1.Cluster) error

	// OnRunning call on first running.
	OnRunning(ctx context.Context, cluster *v1.Cluster) error
}

type DelegateProvider added in v1.3.1

type DelegateProvider struct {
	ProviderName string

	ValidateFunc    func(cluster *types.Cluster) field.ErrorList
	PreCreateFunc   func(cluster *types.Cluster) error
	AfterCreateFunc func(cluster *types.Cluster) error

	CreateHandlers []Handler
	DeleteHandlers []Handler
	UpdateHandlers []Handler
}

func (*DelegateProvider) AfterCreate added in v1.3.1

func (p *DelegateProvider) AfterCreate(cluster *types.Cluster) error

func (*DelegateProvider) Name added in v1.3.1

func (p *DelegateProvider) Name() string

func (*DelegateProvider) OnCreate added in v1.3.1

func (p *DelegateProvider) OnCreate(ctx context.Context, cluster *v1.Cluster) error

func (*DelegateProvider) OnDelete added in v1.3.1

func (p *DelegateProvider) OnDelete(ctx context.Context, cluster *v1.Cluster) error

func (*DelegateProvider) OnRunning added in v1.3.1

func (p *DelegateProvider) OnRunning(ctx context.Context, cluster *v1.Cluster) error

func (*DelegateProvider) OnUpdate added in v1.3.1

func (p *DelegateProvider) OnUpdate(ctx context.Context, cluster *v1.Cluster) error

func (*DelegateProvider) PreCreate added in v1.3.1

func (p *DelegateProvider) PreCreate(cluster *types.Cluster) error

func (*DelegateProvider) RegisterHandler added in v1.3.1

func (p *DelegateProvider) RegisterHandler(mux *mux.PathRecorderMux)

func (*DelegateProvider) Setup added in v1.3.1

func (p *DelegateProvider) Setup() error

func (*DelegateProvider) Teardown added in v1.3.1

func (p *DelegateProvider) Teardown() error

func (*DelegateProvider) Validate added in v1.3.1

func (p *DelegateProvider) Validate(cluster *types.Cluster) field.ErrorList

type Handler added in v1.3.1

type Handler func(context.Context, *v1.Cluster) error

func (Handler) Name added in v1.3.1

func (h Handler) Name() string

type Provider

type Provider interface {
	Name() string

	APIProvider
	ControllerProvider
}

Provider defines a set of response interfaces for specific cluster types in cluster management.

func GetProvider

func GetProvider(name string) (Provider, error)

GetProvider returns provider by name

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL