k8s

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: May 23, 2023 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package k8s provides utility functions for working with Kubernetes clusters.

Package k8s provides utility functions for working with Kubernetes pods.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Clientset

func Clientset() *kubernetes.Clientset

Clientset returns the Kubernetes clientset.

func DeletePersistentVolumeClaim

func DeletePersistentVolumeClaim(namespace, name string)

DeletePersistentVolumeClaim deletes the PersistentVolumeClaim with the specified name in the specified namespace.

func DeletePod

func DeletePod(namespace, name string) error

DeletePod deletes a pod with the given name in the specified namespace.

func DeleteService

func DeleteService(namespace, name string) error

DeleteService deletes a service if it exists.

func DeployPersistentVolumeClaim

func DeployPersistentVolumeClaim(namespace, name string, labels map[string]string, size resource.Quantity)

DeployPersistentVolumeClaim creates a new PersistentVolumeClaim in the specified namespace.

func DeployPod

func DeployPod(podConfig PodConfig, init bool) (*v1.Pod, error)

DeployPod creates a new pod in the given namespace if it doesn't already exist.

func DeployService

func DeployService(namespace, name string, labels, selectorMap map[string]string, portsTCP []int, portsUDP []int) (*v1.Service, error)

DeployService deploys a service if it does not exist.

func GetService

func GetService(namespace, name string) (*v1.Service, error)

GetService retrieves a service.

func GetServiceIP

func GetServiceIP(namespace, name string) (string, error)

GetServiceIP retrieves the IP address of a service.

func Initialize

func Initialize() error

Initialize sets up the Kubernetes client with the appropriate configuration.

func Namespace

func Namespace() string

Namespace returns the current namespace in use.

func PatchService

func PatchService(namespace, name string, labels, selectorMap map[string]string, portsTCP, portsUDP []int) error

PatchService patches an existing service.

func ReplacePod

func ReplacePod(podConfig PodConfig) (*v1.Pod, error)

ReplacePod replaces a pod in the given namespace and returns the new Pod object.

func RunCommandInPod

func RunCommandInPod(namespace, podName, containerName string, cmd []string) (string, error)

RunCommandInPod runs a command in a container within a pod.

func WaitPodIsRunning

func WaitPodIsRunning(namespace, name string) error

WaitPodIsRunning waits until a pod in the given namespace is running.

Types

type PodConfig

type PodConfig struct {
	Namespace string            // Kubernetes namespace of the Pod
	Name      string            // Name to assign to the Pod
	Labels    map[string]string // Labels to apply to the Pod
	Image     string            // Name of the Docker image to use for the container
	Command   []string          // Command to run in the container
	Args      []string          // Arguments to pass to the command in the container
	Env       map[string]string // Environment variables to set in the container
	Volumes   map[string]string // Volumes to mount in the Pod
}

PodConfig contains the specifications for creating a new Pod object

Jump to

Keyboard shortcuts

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