util

package
v1.77.1 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2023 License: Apache-2.0, BSD-2-Clause, MIT, + 1 more Imports: 26 Imported by: 155

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyClientConnectionConfigurationToRESTConfig

func ApplyClientConnectionConfigurationToRESTConfig(clientConnection *componentbaseconfig.ClientConnectionConfiguration, rest *rest.Config)

ApplyClientConnectionConfigurationToRESTConfig applies the given client connection configurations to the given REST config.

func ApplyRESTOptions added in v1.50.0

func ApplyRESTOptions(restConfig *rest.Config, restOptions extensionsconfig.RESTOptions) *rest.Config

ApplyRESTOptions applies RESTOptions to the given rest.Config

func Decode

func Decode(decoder runtime.Decoder, data []byte, into runtime.Object) error

Decode takes a `decoder` and decodes the provided `data` into the provided object. The underlying `into` address is used to assign the decoded object.

func DetermineError added in v1.59.0

func DetermineError(err error, knownCodes map[gardencorev1beta1.ErrorCode]func(string) bool) error

DetermineError determines the Gardener error codes for the given error and returns an ErrorWithCodes with the error and codes.

func DetermineErrorCodes added in v1.59.0

func DetermineErrorCodes(err error, knownCodes map[gardencorev1beta1.ErrorCode]func(string) bool) []gardencorev1beta1.ErrorCode

DetermineErrorCodes determines error codes based on the given error.

func NewChartRendererForShoot

func NewChartRendererForShoot(version string) (chartrenderer.Interface, error)

NewChartRendererForShoot creates a new chartrenderer.Interface for the shoot cluster.

func NewClientForShoot

func NewClientForShoot(ctx context.Context, c client.Client, namespace string, opts client.Options, restOptions extensionsconfig.RESTOptions) (*rest.Config, client.Client, error)

NewClientForShoot returns the rest config and the client for the given shoot namespace. It first looks to use the "internal" kubeconfig (the one with in-cluster address) as in-cluster traffic is free of charge. If it cannot find that, then it fallbacks to the "external" kubeconfig (the one with external DNS name or load balancer address) and this usually translates to egress traffic costs. However, if the environment variable GARDENER_SHOOT_CLIENT=external, then it *only* checks for the external endpoint, i.e. v1beta1constants.SecretNameGardener. This is useful when connecting from outside the seed cluster on which the shoot kube-apiserver is running.

func NewRESTConfigFromKubeconfig

func NewRESTConfigFromKubeconfig(kubeconfig []byte) (*rest.Config, error)

NewRESTConfigFromKubeconfig creates a new REST config from a given Kubeconfig and returns it.

func VersionInfo

func VersionInfo(vs string) (*version.Info, error)

VersionInfo converts the given version string to version.Info (input must be a semantic version).

func VersionMajorMinor

func VersionMajorMinor(version string) (string, error)

VersionMajorMinor extracts and returns the major and the minor part of the given version (input must be a semantic version).

Types

type ShootClients

type ShootClients interface {
	Client() client.Client
	Clientset() kubernetes.Interface
	GardenerClientset() kubernetesclient.Interface
	ChartApplier() kubernetesclient.ChartApplier
	Version() *version.Info
}

ShootClients bundles together several clients for the shoot cluster.

func NewClientsForShoot

func NewClientsForShoot(ctx context.Context, c client.Client, namespace string, opts client.Options, restOptions extensionsconfig.RESTOptions) (ShootClients, error)

NewClientsForShoot is a utility function that creates a new clientset and a chart applier for the shoot cluster. It uses the 'gardener' secret in the given shoot namespace. It also returns the Kubernetes version of the cluster.

func NewShootClients

func NewShootClients(c client.Client, clientset kubernetes.Interface, gardenerClientset kubernetesclient.Interface, chartApplier kubernetesclient.ChartApplier, version *version.Info) ShootClients

NewShootClients creates a new shoot client interface based on the given clients.

Directories

Path Synopsis
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

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