gke

package
v0.24.1 Latest Latest
Warning

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

Go to latest
Published: Dec 9, 2022 License: Apache-2.0 Imports: 19 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// GKECreateLabel is the name of the label which be added to any cluster created with KTF and
	// indicates which Google Cloud IAM Service Account created the cluster.
	GKECreateLabel = "ktf_created_by"

	// GKEClusterType indicates that the Kubernetes cluster was provisioned by Google Kubernetes Engine (GKE)
	GKEClusterType clusters.Type = "gke"

	// GKECredsVar indicates the environment variable used to provide auth credentials for GKE
	GKECredsVar = "GOOGLE_APPLICATION_CREDENTIALS" //nolint:gosec

	// GKEProjectVar indicates the environment variable used to provide a default gcloud project
	GKEProjectVar = "GOOGLE_PROJECT"

	// GKELocationVar indicates the environment variable used to provide a default gcloud region
	GKELocationVar = "GOOGLE_LOCATION"
)

Variables

View Source
var (
	// EnvKeepCluster indicates whether the caller wants the cluster to remain after tests for manual inspection.
	EnvKeepCluster = os.Getenv("GKE_KEEP_CLUSTER")
)

Functions

This section is empty.

Types

type Builder

type Builder struct {
	Name string
	// contains filtered or unexported fields
}

Builder generates clusters.Cluster objects backed by GKE given provided configuration options.

func NewBuilder

func NewBuilder(gkeJSONCredentials []byte, project, location string) *Builder

NewBuilder provides a new *Builder object.

func (*Builder) Build

func (b *Builder) Build(ctx context.Context) (clusters.Cluster, error)

Build creates and configures clients for a GKE-based Kubernetes clusters.Cluster.

func (*Builder) WithClusterMinorVersion

func (b *Builder) WithClusterMinorVersion(major, minor uint64) *Builder

WithClusterMinorVersion configures the Kubernetes cluster version according to a provided Major and Minor version, but will automatically select the latest patch version of that minor release (for convenience over the caller having to know the entire version tag).

func (*Builder) WithClusterVersion

func (b *Builder) WithClusterVersion(version semver.Version) *Builder

WithClusterVersion configures the Kubernetes cluster version for the Builder to use when building the GKE cluster.

func (*Builder) WithName

func (b *Builder) WithName(name string) *Builder

WithName indicates a custom name to use for the cluster.

type Cluster added in v0.11.0

type Cluster struct {
	// contains filtered or unexported fields
}

Cluster is a clusters.Cluster implementation backed by Google Kubernetes Engine (GKE)

func NewFromExisting added in v0.3.2

func NewFromExisting(ctx context.Context, name, project, location string, jsonCreds []byte) (*Cluster, error)

NewFromExisting provides a new clusters.Cluster backed by an existing GKE cluster.

func NewFromExistingWithEnv added in v0.3.2

func NewFromExistingWithEnv(ctx context.Context, name string) (*Cluster, error)

NewFromExistingWithEnv provides a new clusters.Cluster backed by an existing GKE cluster, but allows some of the configuration to be filled in from the ENV instead of arguments.

func (*Cluster) Cleanup added in v0.11.0

func (c *Cluster) Cleanup(ctx context.Context) error

func (*Cluster) Client added in v0.11.0

func (c *Cluster) Client() *kubernetes.Clientset

func (*Cluster) Config added in v0.11.0

func (c *Cluster) Config() *rest.Config

func (*Cluster) DeleteAddon added in v0.11.0

func (c *Cluster) DeleteAddon(ctx context.Context, addon clusters.Addon) error

func (*Cluster) DeployAddon added in v0.11.0

func (c *Cluster) DeployAddon(ctx context.Context, addon clusters.Addon) error

func (*Cluster) DumpDiagnostics added in v0.24.0

func (c *Cluster) DumpDiagnostics(ctx context.Context, meta string) (string, error)

DumpDiagnostics produces diagnostics data for the cluster at a given time. It uses the provided meta string to write to meta.txt file which will allow for diagnostics identification. It returns the path to directory containing all the diagnostic files and an error.

func (*Cluster) GetAddon added in v0.11.0

func (c *Cluster) GetAddon(name clusters.AddonName) (clusters.Addon, error)

func (*Cluster) ListAddons added in v0.11.0

func (c *Cluster) ListAddons() []clusters.Addon

func (*Cluster) Name added in v0.11.0

func (c *Cluster) Name() string

func (*Cluster) Type added in v0.11.0

func (c *Cluster) Type() clusters.Type

func (*Cluster) Version added in v0.11.0

func (c *Cluster) Version() (semver.Version, error)

Jump to

Keyboard shortcuts

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