install

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2019 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package install provides public functions for easily creating and installing resources necessary for Velero to operate. Some default settings are assumed with these functions.

Index

Constants

This section is empty.

Variables

View Source
var (
	DefaultImage               = "gcr.io/heptio-images/velero:" + imageVersion()
	DefaultVeleroPodCPURequest = "500m"
	DefaultVeleroPodMemRequest = "128Mi"
	DefaultVeleroPodCPULimit   = "1000m"
	DefaultVeleroPodMemLimit   = "256Mi"
	DefaultResticPodCPURequest = "0"
	DefaultResticPodMemRequest = "0"
	DefaultResticPodCPULimit   = "0"
	DefaultResticPodMemLimit   = "0"
)

DefaultImage is the default image to use for the Velero deployment and restic daemonset containers.

Functions

func AllResources added in v1.0.0

func AllResources(o *VeleroOptions) (*unstructured.UnstructuredList, error)

AllResources returns a list of all resources necessary to install Velero, in the appropriate order, into a Kubernetes cluster. Items are unstructured, since there are different data types returned.

func BackupStorageLocation added in v1.0.0

func BackupStorageLocation(namespace, provider, bucket, prefix string, config map[string]string) *v1.BackupStorageLocation

func CRDs

CRDs returns a list of the CRD types for all of the required Velero CRDs

func ClusterRoleBinding

func ClusterRoleBinding(namespace string) *rbacv1beta1.ClusterRoleBinding

func DaemonSet

func DaemonSet(namespace string, opts ...podTemplateOption) *appsv1.DaemonSet

func Deployment

func Deployment(namespace string, opts ...podTemplateOption) *appsv1.Deployment

func DeploymentIsReady added in v1.0.0

func DeploymentIsReady(factory client.DynamicFactory, namespace string) (bool, error)

DeploymentIsReady will poll the kubernetes API server to see if the velero deployment is ready to service user requests.

func Install added in v1.0.0

func Install(factory client.DynamicFactory, resources *unstructured.UnstructuredList, w io.Writer) error

Install creates resources on the Kubernetes cluster. An unstructured list of resources is sent, one at a time, to the server. These are assumed to be in the preferred order already. Resources will be sorted into CustomResourceDefinitions and any other resource type, and the function will wait up to 1 minute for CRDs to be ready before proceeding. An io.Writer can be used to output to a log or the console.

func Namespace

func Namespace(namespace string) *corev1.Namespace

func Secret added in v1.0.0

func Secret(namespace string, data []byte) *corev1.Secret

func ServiceAccount

func ServiceAccount(namespace string) *corev1.ServiceAccount

func VolumeSnapshotLocation added in v1.0.0

func VolumeSnapshotLocation(namespace, provider string, config map[string]string) *v1.VolumeSnapshotLocation

func WithAnnotations added in v1.1.0

func WithAnnotations(annotations map[string]string) podTemplateOption

func WithEnvFromSecretKey

func WithEnvFromSecretKey(varName, secret, key string) podTemplateOption

func WithImage

func WithImage(image string) podTemplateOption

func WithResources added in v1.1.0

func WithResources(resources corev1.ResourceRequirements) podTemplateOption

func WithRestoreOnly

func WithRestoreOnly() podTemplateOption

func WithSecret added in v1.1.0

func WithSecret(secretPresent bool) podTemplateOption

Types

type ResourceGroup added in v1.0.0

type ResourceGroup struct {
	CRDResources   []*unstructured.Unstructured
	OtherResources []*unstructured.Unstructured
}

ResourceGroup represents a collection of kubernetes objects with a common ready conditon

func GroupResources added in v1.0.0

func GroupResources(resources *unstructured.UnstructuredList) *ResourceGroup

GroupResources groups resources based on whether the resources are CustomResourceDefinitions or other types of kubernetes objects This is useful to wait for readiness before creating CRD objects

type VeleroOptions added in v1.0.0

type VeleroOptions struct {
	Namespace          string
	Image              string
	ProviderName       string
	Bucket             string
	Prefix             string
	PodAnnotations     map[string]string
	VeleroPodResources corev1.ResourceRequirements
	ResticPodResources corev1.ResourceRequirements
	SecretData         []byte
	RestoreOnly        bool
	UseRestic          bool
	UseVolumeSnapshots bool
	BSLConfig          map[string]string
	VSLConfig          map[string]string
}

Jump to

Keyboard shortcuts

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