v1alpha1

package
v1.0.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Dec 22, 2020 License: BSD-3-Clause Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "backup.appuio.ch", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Archive

type Archive struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ArchiveSpec `json:"spec,omitempty"`
	Status Status      `json:"status,omitempty"`
}

Archive is the Schema for the archives API

func (*Archive) DeepCopy

func (in *Archive) DeepCopy() *Archive

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Archive.

func (*Archive) DeepCopyInto

func (in *Archive) DeepCopyInto(out *Archive)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Archive) DeepCopyObject

func (in *Archive) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Archive) GetMetaObject

func (a *Archive) GetMetaObject() metav1.Object

func (*Archive) GetResources

func (a *Archive) GetResources() corev1.ResourceRequirements

func (*Archive) GetRuntimeObject

func (a *Archive) GetRuntimeObject() runtime.Object

func (*Archive) GetStatus

func (a *Archive) GetStatus() *Status

func (*Archive) GetType

func (*Archive) GetType() JobType

type ArchiveList

type ArchiveList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Archive `json:"items"`
}

ArchiveList contains a list of Archive

func (*ArchiveList) DeepCopy

func (in *ArchiveList) DeepCopy() *ArchiveList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArchiveList.

func (*ArchiveList) DeepCopyInto

func (in *ArchiveList) DeepCopyInto(out *ArchiveList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArchiveList) DeepCopyObject

func (in *ArchiveList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ArchiveSchedule

type ArchiveSchedule struct {
	ArchiveSpec     `json:",inline"`
	*ScheduleCommon `json:",inline"`
}

ArchiveSchedule manages schedules for the archival service

func (*ArchiveSchedule) DeepCopy

func (in *ArchiveSchedule) DeepCopy() *ArchiveSchedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArchiveSchedule.

func (*ArchiveSchedule) DeepCopyInto

func (in *ArchiveSchedule) DeepCopyInto(out *ArchiveSchedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArchiveSpec

type ArchiveSpec struct {
	*RestoreSpec `json:",inline"`
}

ArchiveSpec defines the desired state of Archive.

func (ArchiveSpec) CreateObject

func (a ArchiveSpec) CreateObject(name, namespace string) runtime.Object

func (*ArchiveSpec) DeepCopy

func (in *ArchiveSpec) DeepCopy() *ArchiveSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArchiveSpec.

func (*ArchiveSpec) DeepCopyInto

func (in *ArchiveSpec) DeepCopyInto(out *ArchiveSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AzureSpec

type AzureSpec struct {
	Container            string                    `json:"container,omitempty"`
	AccountNameSecretRef *corev1.SecretKeySelector `json:"accountNameSecretRef,omitempty"`
	AccountKeySecretRef  *corev1.SecretKeySelector `json:"accountKeySecretRef,omitempty"`
}

func (*AzureSpec) DeepCopy

func (in *AzureSpec) DeepCopy() *AzureSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureSpec.

func (*AzureSpec) DeepCopyInto

func (in *AzureSpec) DeepCopyInto(out *AzureSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AzureSpec) EnvVars

func (a *AzureSpec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

type B2Spec

type B2Spec struct {
	Bucket              string                    `json:"bucket,omitempty"`
	Path                string                    `json:"path,omitempty"`
	AccountIDSecretRef  *corev1.SecretKeySelector `json:"accountIDSecretRef,omitempty"`
	AccountKeySecretRef *corev1.SecretKeySelector `json:"accountKeySecretRef,omitempty"`
}

func (*B2Spec) DeepCopy

func (in *B2Spec) DeepCopy() *B2Spec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new B2Spec.

func (*B2Spec) DeepCopyInto

func (in *B2Spec) DeepCopyInto(out *B2Spec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*B2Spec) EnvVars

func (b *B2Spec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

type Backend

type Backend struct {
	// RepoPasswordSecretRef references a secret key to look up the restic repository password
	RepoPasswordSecretRef *corev1.SecretKeySelector `json:"repoPasswordSecretRef,omitempty"`
	Local                 *LocalSpec                `json:"local,omitempty"`
	S3                    *S3Spec                   `json:"s3,omitempty"`
	GCS                   *GCSSpec                  `json:"gcs,omitempty"`
	Azure                 *AzureSpec                `json:"azure,omitempty"`
	Swift                 *SwiftSpec                `json:"swift,omitempty"`
	B2                    *B2Spec                   `json:"b2,omitempty"`
	Rest                  *RestServerSpec           `json:"rest,omitempty"`
}

func (*Backend) DeepCopy

func (in *Backend) DeepCopy() *Backend

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend.

func (*Backend) DeepCopyInto

func (in *Backend) DeepCopyInto(out *Backend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Backend) GetCredentialEnv

func (b *Backend) GetCredentialEnv() map[string]*corev1.EnvVarSource

GetCredentialEnv will return a map containing the correct

func (*Backend) String

func (b *Backend) String() string

String returns the string representation of the repository. If no repo is defined it'll return empty string.

type Backup

type Backup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BackupSpec `json:"spec,omitempty"`
	Status Status     `json:"status,omitempty"`
}

Backup is the Schema for the backups API

func (*Backup) DeepCopy

func (in *Backup) DeepCopy() *Backup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.

func (*Backup) DeepCopyInto

func (in *Backup) DeepCopyInto(out *Backup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Backup) DeepCopyObject

func (in *Backup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Backup) GetMetaObject

func (b *Backup) GetMetaObject() metav1.Object

func (*Backup) GetResources

func (b *Backup) GetResources() corev1.ResourceRequirements

func (*Backup) GetRuntimeObject

func (b *Backup) GetRuntimeObject() runtime.Object

func (*Backup) GetStatus

func (b *Backup) GetStatus() *Status

func (*Backup) GetType

func (*Backup) GetType() JobType

type BackupList

type BackupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Backup `json:"items"`
}

BackupList contains a list of Backup

func (*BackupList) DeepCopy

func (in *BackupList) DeepCopy() *BackupList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupList.

func (*BackupList) DeepCopyInto

func (in *BackupList) DeepCopyInto(out *BackupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BackupList) DeepCopyObject

func (in *BackupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BackupSchedule

type BackupSchedule struct {
	BackupSpec      `json:",inline"`
	*ScheduleCommon `json:",inline"`
}

BackupSchedule manages schedules for the backup service

func (*BackupSchedule) DeepCopy

func (in *BackupSchedule) DeepCopy() *BackupSchedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSchedule.

func (*BackupSchedule) DeepCopyInto

func (in *BackupSchedule) DeepCopyInto(out *BackupSchedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BackupSpec

type BackupSpec struct {
	// Backend contains the restic repo where the job should backup to.
	Backend *Backend `json:"backend,omitempty"`
	// KeepJobs amount of jobs to keep for later analysis
	KeepJobs *int `json:"keepJobs,omitempty"`

	// PromURL sets a prometheus push URL where the backup container send metrics to
	// +optional
	PromURL string `json:"promURL,omitempty"`
	// StatsURL sets an arbitrary URL where the wrestic container posts metrics and
	// information about the snapshots to. This is in addition to the prometheus
	// pushgateway.
	StatsURL string `json:"statsURL,omitempty"`
	// Tags is a list of arbitrary tags that get added to the backup via Restic's tagging system
	Tags []string `json:"tags,omitempty"`

	// Resources describes the compute resource requirements (cpu, memory, etc.)
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

BackupSpec defines a single backup. It must contain all inforomation to connect to the backup repository when applied. If used with defaults or schedules the operator will ensure that the defaults are applied before creating the object on the API.

func (BackupSpec) CreateObject

func (b BackupSpec) CreateObject(name, namespace string) runtime.Object

func (*BackupSpec) DeepCopy

func (in *BackupSpec) DeepCopy() *BackupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSpec.

func (*BackupSpec) DeepCopyInto

func (in *BackupSpec) DeepCopyInto(out *BackupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BackupTemplate

type BackupTemplate struct {
	Tags    *[]string `json:"tags,omitempty"`
	Backend Backend   `json:"backend,omitempty"`
	Env     Env       `json:"env,omitempty"`
}

func (*BackupTemplate) DeepCopy

func (in *BackupTemplate) DeepCopy() *BackupTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupTemplate.

func (*BackupTemplate) DeepCopyInto

func (in *BackupTemplate) DeepCopyInto(out *BackupTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Check

type Check struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   CheckSpec `json:"spec,omitempty"`
	Status Status    `json:"status,omitempty"`
}

Check is the Schema for the checks API

func (*Check) DeepCopy

func (in *Check) DeepCopy() *Check

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Check.

func (*Check) DeepCopyInto

func (in *Check) DeepCopyInto(out *Check)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Check) DeepCopyObject

func (in *Check) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Check) GetMetaObject

func (c *Check) GetMetaObject() metav1.Object

func (*Check) GetResources

func (c *Check) GetResources() corev1.ResourceRequirements

func (*Check) GetRuntimeObject

func (c *Check) GetRuntimeObject() runtime.Object

func (*Check) GetStatus

func (c *Check) GetStatus() *Status

func (*Check) GetType

func (c *Check) GetType() JobType

type CheckList

type CheckList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Check `json:"items"`
}

CheckList contains a list of Check

func (*CheckList) DeepCopy

func (in *CheckList) DeepCopy() *CheckList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckList.

func (*CheckList) DeepCopyInto

func (in *CheckList) DeepCopyInto(out *CheckList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CheckList) DeepCopyObject

func (in *CheckList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CheckSchedule

type CheckSchedule struct {
	CheckSpec       `json:",inline"`
	*ScheduleCommon `json:",inline"`
}

CheckSchedule manages the schedules for the checks

func (*CheckSchedule) DeepCopy

func (in *CheckSchedule) DeepCopy() *CheckSchedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckSchedule.

func (*CheckSchedule) DeepCopyInto

func (in *CheckSchedule) DeepCopyInto(out *CheckSchedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CheckSpec

type CheckSpec struct {
	PromURL  string   `json:"promURL,omitempty"`
	Backend  *Backend `json:"backend,omitempty"`
	KeepJobs *int     `json:"keepJobs,omitempty"`
	// Resources describes the compute resource requirements (cpu, memory, etc.)
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

CheckSpec defines the desired state of Check. It needs to contain the repository information.

func (CheckSpec) CreateObject

func (c CheckSpec) CreateObject(name, namespace string) runtime.Object

func (*CheckSpec) DeepCopy

func (in *CheckSpec) DeepCopy() *CheckSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckSpec.

func (*CheckSpec) DeepCopyInto

func (in *CheckSpec) DeepCopyInto(out *CheckSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Env

type Env struct {
	Key   string `json:"key,omitempty"`
	Value string `json:"value,omitempty"`
}

func (*Env) DeepCopy

func (in *Env) DeepCopy() *Env

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Env.

func (*Env) DeepCopyInto

func (in *Env) DeepCopyInto(out *Env)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FolderRestore

type FolderRestore struct {
	*corev1.PersistentVolumeClaimVolumeSource `json:",inline"`
}

func (*FolderRestore) DeepCopy

func (in *FolderRestore) DeepCopy() *FolderRestore

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FolderRestore.

func (*FolderRestore) DeepCopyInto

func (in *FolderRestore) DeepCopyInto(out *FolderRestore)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GCSSpec

type GCSSpec struct {
	Bucket               string                    `json:"bucket,omitempty"`
	ProjectIDSecretRef   *corev1.SecretKeySelector `json:"projectIDSecretRef,omitempty"`
	AccessTokenSecretRef *corev1.SecretKeySelector `json:"accessTokenSecretRef,omitempty"`
}

func (*GCSSpec) DeepCopy

func (in *GCSSpec) DeepCopy() *GCSSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCSSpec.

func (*GCSSpec) DeepCopyInto

func (in *GCSSpec) DeepCopyInto(out *GCSSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GCSSpec) EnvVars

func (g *GCSSpec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

type JobType

type JobType string

JobType defines what job type this is.

const (
	BackupType   JobType = "backup"
	CheckType    JobType = "check"
	ArchiveType  JobType = "archive"
	RestoreType  JobType = "restore"
	PruneType    JobType = "prune"
	ScheduleType JobType = "schedule"
)

type LocalSpec

type LocalSpec struct {
	MountPath string `json:"mountPath,omitempty"`
}

func (*LocalSpec) DeepCopy

func (in *LocalSpec) DeepCopy() *LocalSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSpec.

func (*LocalSpec) DeepCopyInto

func (in *LocalSpec) DeepCopyInto(out *LocalSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LocalSpec) EnvVars

func (l *LocalSpec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

type Pod

type Pod struct {
	corev1.PodTemplateSpec `json:",inline"`
}

Pod is a dummy struct to fix some code generation issues.

func (*Pod) DeepCopy

func (in *Pod) DeepCopy() *Pod

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pod.

func (*Pod) DeepCopyInto

func (in *Pod) DeepCopyInto(out *Pod)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PreBackupPod

type PreBackupPod struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec PreBackupPodSpec `json:"spec,omitempty"`
}

PreBackupPod is the Schema for the prebackuppods API

func (*PreBackupPod) DeepCopy

func (in *PreBackupPod) DeepCopy() *PreBackupPod

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreBackupPod.

func (*PreBackupPod) DeepCopyInto

func (in *PreBackupPod) DeepCopyInto(out *PreBackupPod)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PreBackupPod) DeepCopyObject

func (in *PreBackupPod) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PreBackupPodList

type PreBackupPodList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PreBackupPod `json:"items"`
}

PreBackupPodList contains a list of PreBackupPod

func (*PreBackupPodList) DeepCopy

func (in *PreBackupPodList) DeepCopy() *PreBackupPodList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreBackupPodList.

func (*PreBackupPodList) DeepCopyInto

func (in *PreBackupPodList) DeepCopyInto(out *PreBackupPodList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PreBackupPodList) DeepCopyObject

func (in *PreBackupPodList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PreBackupPodSpec

type PreBackupPodSpec struct {
	// BackupCommand will be added to the backupcommand annotation on the pod.
	BackupCommand string `json:"backupCommand,omitempty"`
	FileExtension string `json:"fileExtension,omitempty"`
	// +kubebuilder:validation:Required
	Pod *Pod `json:"pod,omitempty"`
}

PreBackupPodSpec define pods that will be launched during the backup. After the backup has finished (successfully or not), they should be removed again automatically by the operator.

func (*PreBackupPodSpec) DeepCopy

func (in *PreBackupPodSpec) DeepCopy() *PreBackupPodSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreBackupPodSpec.

func (*PreBackupPodSpec) DeepCopyInto

func (in *PreBackupPodSpec) DeepCopyInto(out *PreBackupPodSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Prune

type Prune struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PruneSpec `json:"spec,omitempty"`
	Status Status    `json:"status,omitempty"`
}

Prune is the Schema for the prunes API

func (*Prune) DeepCopy

func (in *Prune) DeepCopy() *Prune

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Prune.

func (*Prune) DeepCopyInto

func (in *Prune) DeepCopyInto(out *Prune)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Prune) DeepCopyObject

func (in *Prune) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Prune) GetMetaObject

func (p *Prune) GetMetaObject() metav1.Object

func (*Prune) GetResources

func (p *Prune) GetResources() corev1.ResourceRequirements

func (*Prune) GetRuntimeObject

func (p *Prune) GetRuntimeObject() runtime.Object

func (*Prune) GetStatus

func (p *Prune) GetStatus() *Status

func (*Prune) GetType

func (p *Prune) GetType() JobType

type PruneList

type PruneList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Prune `json:"items"`
}

PruneList contains a list of Prune

func (*PruneList) DeepCopy

func (in *PruneList) DeepCopy() *PruneList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PruneList.

func (*PruneList) DeepCopyInto

func (in *PruneList) DeepCopyInto(out *PruneList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PruneList) DeepCopyObject

func (in *PruneList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PruneSchedule

type PruneSchedule struct {
	PruneSpec       `json:",inline"`
	*ScheduleCommon `json:",inline"`
}

func (*PruneSchedule) DeepCopy

func (in *PruneSchedule) DeepCopy() *PruneSchedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PruneSchedule.

func (*PruneSchedule) DeepCopyInto

func (in *PruneSchedule) DeepCopyInto(out *PruneSchedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PruneSpec

type PruneSpec struct {
	// Retention sets how many backups should be kept after a forget and prune
	Retention RetentionPolicy `json:"retention,omitempty"`
	Backend   *Backend        `json:"backend,omitempty"`
	KeepJobs  *int            `json:"keepJobs,omitempty"`
	// Resources describes the compute resource requirements (cpu, memory, etc.)
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

PruneSpec needs to contain the repository information as well as the desired retention policies.

func (PruneSpec) CreateObject

func (p PruneSpec) CreateObject(name, namespace string) runtime.Object

func (*PruneSpec) DeepCopy

func (in *PruneSpec) DeepCopy() *PruneSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PruneSpec.

func (*PruneSpec) DeepCopyInto

func (in *PruneSpec) DeepCopyInto(out *PruneSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RestServerSpec

type RestServerSpec struct {
	URL               string                    `json:"url,omitempty"`
	UserSecretRef     *corev1.SecretKeySelector `json:"userSecretRef,omitempty"`
	PasswordSecretReg *corev1.SecretKeySelector `json:"passwordSecretReg,omitempty"`
}

func (*RestServerSpec) DeepCopy

func (in *RestServerSpec) DeepCopy() *RestServerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestServerSpec.

func (*RestServerSpec) DeepCopyInto

func (in *RestServerSpec) DeepCopyInto(out *RestServerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RestServerSpec) EnvVars

func (r *RestServerSpec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

type Restore

type Restore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RestoreSpec `json:"spec,omitempty"`
	Status Status      `json:"status,omitempty"`
}

Restore is the Schema for the restores API

func (*Restore) DeepCopy

func (in *Restore) DeepCopy() *Restore

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Restore.

func (*Restore) DeepCopyInto

func (in *Restore) DeepCopyInto(out *Restore)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Restore) DeepCopyObject

func (in *Restore) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Restore) GetMetaObject

func (r *Restore) GetMetaObject() metav1.Object

func (*Restore) GetResources

func (r *Restore) GetResources() corev1.ResourceRequirements

func (*Restore) GetRuntimeObject

func (r *Restore) GetRuntimeObject() runtime.Object

func (*Restore) GetStatus

func (r *Restore) GetStatus() *Status

func (*Restore) GetType

func (r *Restore) GetType() JobType

type RestoreList

type RestoreList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Restore `json:"items"`
}

RestoreList contains a list of Restore

func (*RestoreList) DeepCopy

func (in *RestoreList) DeepCopy() *RestoreList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreList.

func (*RestoreList) DeepCopyInto

func (in *RestoreList) DeepCopyInto(out *RestoreList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RestoreList) DeepCopyObject

func (in *RestoreList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RestoreMethod

type RestoreMethod struct {
	S3     *S3Spec        `json:"s3,omitempty"`
	Folder *FolderRestore `json:"folder,omitempty"`
}

RestoreMethod contains how and where the restore should happen all the settings are mutual exclusive.

func (*RestoreMethod) DeepCopy

func (in *RestoreMethod) DeepCopy() *RestoreMethod

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreMethod.

func (*RestoreMethod) DeepCopyInto

func (in *RestoreMethod) DeepCopyInto(out *RestoreMethod)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RestoreSchedule

type RestoreSchedule struct {
	RestoreSpec     `json:",inline"`
	*ScheduleCommon `json:",inline"`
}

RestoreSchedule manages schedules for the restore service

func (*RestoreSchedule) DeepCopy

func (in *RestoreSchedule) DeepCopy() *RestoreSchedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSchedule.

func (*RestoreSchedule) DeepCopyInto

func (in *RestoreSchedule) DeepCopyInto(out *RestoreSchedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RestoreSpec

type RestoreSpec struct {
	// Backend contains the backend information
	Backend       *Backend       `json:"backend,omitempty"`
	RestoreMethod *RestoreMethod `json:"restoreMethod,omitempty"`
	RestoreFilter string         `json:"restoreFilter,omitempty"`
	Snapshot      string         `json:"snapshot,omitempty"`
	KeepJobs      *int           `json:"keepJobs,omitempty"`
	// Tags is a list of arbitrary tags that get added to the backup via Restic's tagging system
	Tags []string `json:"tags,omitempty"`
	// Resources describes the compute resource requirements (cpu, memory, etc.)
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}

RestoreSpec can either contain an S3 restore point or a local one. For the local one you need to define an existing PVC.

func (RestoreSpec) CreateObject

func (r RestoreSpec) CreateObject(name, namespace string) runtime.Object

func (*RestoreSpec) DeepCopy

func (in *RestoreSpec) DeepCopy() *RestoreSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSpec.

func (*RestoreSpec) DeepCopyInto

func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RetentionPolicy

type RetentionPolicy struct {
	KeepLast    int      `json:"keepLast,omitempty"`
	KeepHourly  int      `json:"keepHourly,omitempty"`
	KeepDaily   int      `json:"keepDaily,omitempty"`
	KeepWeekly  int      `json:"keepWeekly,omitempty"`
	KeepMonthly int      `json:"keepMonthly,omitempty"`
	KeepYearly  int      `json:"keepYearly,omitempty"`
	KeepTags    []string `json:"keepTags,omitempty"`
	// Tags is a filter on what tags the policy should be applied
	// DO NOT CONFUSE THIS WITH KeepTags OR YOU'LL have a bad time
	Tags []string `json:"tags,omitempty"`
	// Hostnames is a filter on what hostnames the policy should be applied
	Hostnames []string `json:"hostnames,omitempty"`
}

func (*RetentionPolicy) DeepCopy

func (in *RetentionPolicy) DeepCopy() *RetentionPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicy.

func (*RetentionPolicy) DeepCopyInto

func (in *RetentionPolicy) DeepCopyInto(out *RetentionPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type S3Spec

type S3Spec struct {
	Endpoint                 string                    `json:"endpoint,omitempty"`
	Bucket                   string                    `json:"bucket,omitempty"`
	AccessKeyIDSecretRef     *corev1.SecretKeySelector `json:"accessKeyIDSecretRef,omitempty"`
	SecretAccessKeySecretRef *corev1.SecretKeySelector `json:"secretAccessKeySecretRef,omitempty"`
}

func (*S3Spec) DeepCopy

func (in *S3Spec) DeepCopy() *S3Spec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3Spec.

func (*S3Spec) DeepCopyInto

func (in *S3Spec) DeepCopyInto(out *S3Spec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*S3Spec) EnvVars

func (s *S3Spec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

func (*S3Spec) RestoreEnvVars

func (s *S3Spec) RestoreEnvVars() map[string]*corev1.EnvVar

type Schedule

type Schedule struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ScheduleSpec   `json:"spec,omitempty"`
	Status ScheduleStatus `json:"status,omitempty"`
}

Schedule is the Schema for the schedules API

func (*Schedule) DeepCopy

func (in *Schedule) DeepCopy() *Schedule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Schedule.

func (*Schedule) DeepCopyInto

func (in *Schedule) DeepCopyInto(out *Schedule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Schedule) DeepCopyObject

func (in *Schedule) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Schedule) GetMetaObject

func (s *Schedule) GetMetaObject() metav1.Object

func (*Schedule) GetResources

func (s *Schedule) GetResources() corev1.ResourceRequirements

func (*Schedule) GetRuntimeObject

func (s *Schedule) GetRuntimeObject() runtime.Object

func (*Schedule) GetStatus

func (s *Schedule) GetStatus() *Status

func (*Schedule) GetType

func (*Schedule) GetType() JobType

type ScheduleCommon

type ScheduleCommon struct {
	Schedule              string `json:"schedule,omitempty"`
	ConcurrentRunsAllowed bool   `json:"concurrentRunsAllowed,omitempty"`
}

ScheduleCommon contains fields every schedule needs

func (*ScheduleCommon) DeepCopy

func (in *ScheduleCommon) DeepCopy() *ScheduleCommon

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleCommon.

func (*ScheduleCommon) DeepCopyInto

func (in *ScheduleCommon) DeepCopyInto(out *ScheduleCommon)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleList

type ScheduleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Schedule `json:"items"`
}

ScheduleList contains a list of Schedule

func (*ScheduleList) DeepCopy

func (in *ScheduleList) DeepCopy() *ScheduleList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleList.

func (*ScheduleList) DeepCopyInto

func (in *ScheduleList) DeepCopyInto(out *ScheduleList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ScheduleList) DeepCopyObject

func (in *ScheduleList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ScheduleSpec

type ScheduleSpec struct {
	Restore  *RestoreSchedule `json:"restore,omitempty"`
	Backup   *BackupSchedule  `json:"backup,omitempty"`
	Archive  *ArchiveSchedule `json:"archive,omitempty"`
	Check    *CheckSchedule   `json:"check,omitempty"`
	Prune    *PruneSchedule   `json:"prune,omitempty"`
	Backend  *Backend         `json:"backend,omitempty"`
	KeepJobs *int             `json:"keepJobs,omitempty"`
	// ResourceRequirementsTemplate describes the compute resource requirements (cpu, memory, etc.)
	ResourceRequirementsTemplate corev1.ResourceRequirements `json:"resourceRequirementsTemplate,omitempty"`
}

ScheduleSpec defines the schedules for the various job types.

func (*ScheduleSpec) DeepCopy

func (in *ScheduleSpec) DeepCopy() *ScheduleSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleSpec.

func (*ScheduleSpec) DeepCopyInto

func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScheduleStatus

type ScheduleStatus struct {
	// EffectiveSchedules displays the final schedule for each type (useful when using smart schedules).
	EffectiveSchedules map[JobType]string `json:"effectiveSchedules,omitempty"`
}

ScheduleStatus defines the observed state of Schedule

func (*ScheduleStatus) DeepCopy

func (in *ScheduleStatus) DeepCopy() *ScheduleStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleStatus.

func (*ScheduleStatus) DeepCopyInto

func (in *ScheduleStatus) DeepCopyInto(out *ScheduleStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Snapshot

type Snapshot struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SnapshotSpec   `json:"spec,omitempty"`
	Status SnapshotStatus `json:"status,omitempty"`
}

Snapshot is the Schema for the snapshots API

func (*Snapshot) DeepCopy

func (in *Snapshot) DeepCopy() *Snapshot

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Snapshot.

func (*Snapshot) DeepCopyInto

func (in *Snapshot) DeepCopyInto(out *Snapshot)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Snapshot) DeepCopyObject

func (in *Snapshot) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SnapshotList

type SnapshotList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Snapshot `json:"items"`
}

SnapshotList contains a list of Snapshot

func (*SnapshotList) DeepCopy

func (in *SnapshotList) DeepCopy() *SnapshotList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotList.

func (*SnapshotList) DeepCopyInto

func (in *SnapshotList) DeepCopyInto(out *SnapshotList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SnapshotList) DeepCopyObject

func (in *SnapshotList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SnapshotSpec

type SnapshotSpec struct {
	ID    *string      `json:"id,omitempty"`
	Date  *metav1.Time `json:"date,omitempty"`
	Paths *[]string    `json:"paths,omitempty"`
}

SnapshotSpec contains all information needed about a restic snapshot so it can be restored.

func (*SnapshotSpec) DeepCopy

func (in *SnapshotSpec) DeepCopy() *SnapshotSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec.

func (*SnapshotSpec) DeepCopyInto

func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotStatus

type SnapshotStatus struct {
}

SnapshotStatus defines the observed state of Snapshot

func (*SnapshotStatus) DeepCopy

func (in *SnapshotStatus) DeepCopy() *SnapshotStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotStatus.

func (*SnapshotStatus) DeepCopyInto

func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Status

type Status struct {
	Started   bool `json:"started,omitempty"`
	Finished  bool `json:"finished,omitempty"`
	Exclusive bool `json:"exclusive,omitempty"`
}

Status defines the observed state of a generic K8up job. It is used for the operator to determine what to do.

func (*Status) DeepCopy

func (in *Status) DeepCopy() *Status

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Status.

func (*Status) DeepCopyInto

func (in *Status) DeepCopyInto(out *Status)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftSpec

type SwiftSpec struct {
	Container string `json:"container,omitempty"`
	Path      string `json:"path,omitempty"`
}

func (*SwiftSpec) DeepCopy

func (in *SwiftSpec) DeepCopy() *SwiftSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftSpec.

func (*SwiftSpec) DeepCopyInto

func (in *SwiftSpec) DeepCopyInto(out *SwiftSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SwiftSpec) EnvVars

func (s *SwiftSpec) EnvVars(vars map[string]*corev1.EnvVarSource) map[string]*corev1.EnvVarSource

Jump to

Keyboard shortcuts

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