client

package
v1.6.2 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2022 License: Apache-2.0 Imports: 40 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FastMapperAllowedAPIGroups = map[string]bool{
	"":                          true,
	"apiextensions.k8s.io":      true,
	"apps":                      true,
	"batch":                     true,
	"camel.apache.org":          true,
	"rbac.authorization.k8s.io": true,
	"console.openshift.io":      true,
	"operators.coreos.com":      true,
	"monitoring.coreos.com":     true,
}

FastMapperAllowedAPIGroups contains a set of API groups that are allowed when using the fastmapper. Those must correspond to all groups used by the "kamel" binary tool when running out-of-cluster.

Functions

func GetCurrentNamespace

func GetCurrentNamespace(kubeconfig string) (string, error)

GetCurrentNamespace --.

Types

type Client

type Client interface {
	ctrl.Client
	kubernetes.Interface
	CamelV1() camelv1.CamelV1Interface
	CamelV1alpha1() camelv1alpha1.CamelV1alpha1Interface
	GetScheme() *runtime.Scheme
	GetConfig() *rest.Config
	GetCurrentNamespace(kubeConfig string) (string, error)
	ServerOrClientSideApplier() ServerOrClientSideApplier
	ScalesClient() (scale.ScalesGetter, error)
}

Client is an abstraction for a k8s client.

func FromManager

func FromManager(manager manager.Manager) (Client, error)

FromManager creates a new k8s client from a manager object.

func NewClient

func NewClient(fastDiscovery bool) (Client, error)

NewClient creates a new k8s client that can be used from outside or in the cluster.

func NewClientWithConfig

func NewClientWithConfig(fastDiscovery bool, cfg *rest.Config) (Client, error)

NewClientWithConfig creates a new k8s client that can be used from outside or in the cluster.

func NewOutOfClusterClient

func NewOutOfClusterClient(kubeconfig string) (Client, error)

NewOutOfClusterClient creates a new k8s client that can be used from outside the cluster.

type Injectable

type Injectable interface {
	InjectClient(Client)
}

Injectable identifies objects that can receive a Client.

type Provider

type Provider struct {
	Get func() (Client, error)
}

Provider is used to provide a new instance of the Client each time it's required.

type ServerOrClientSideApplier

type ServerOrClientSideApplier struct {
	Client ctrl.Client
	// contains filtered or unexported fields
}

func (*ServerOrClientSideApplier) Apply

func (a *ServerOrClientSideApplier) Apply(ctx context.Context, object ctrl.Object) error

Jump to

Keyboard shortcuts

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