v1alpha1

package
v2.5.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Sep 18, 2020 License: Apache-2.0 Imports: 12 Imported by: 101

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=stork.libopenstorage.org

Index

Constants

View Source
const (
	// ApplicationBackupResourceName is name for "applicationbackup" resource
	ApplicationBackupResourceName = "applicationbackup"
	// ApplicationBackupResourcePlural is plural for "applicationbackup" resource
	ApplicationBackupResourcePlural = "applicationbackups"
)
View Source
const (
	// ApplicationBackupScheduleResourceName is name for "applicationbackupschedule" resource
	ApplicationBackupScheduleResourceName = "applicationbackupschedule"
	// ApplicationBackupScheduleResourcePlural is plural for "applicationbackupschedule" resource
	ApplicationBackupScheduleResourcePlural = "applicationbackupschedules"
)
View Source
const (
	// ApplicationCloneResourceName is the name for the application clone resource
	ApplicationCloneResourceName = "applicationclone"
	// ApplicationCloneResourcePlural is the name in plural for the application clone resources
	ApplicationCloneResourcePlural = "applicationclones"
)
View Source
const (
	// ApplicationRegistrationResourceName singuler name of Application Registration CR
	ApplicationRegistrationResourceName = "applicationregistration"
	// ApplicationRegistrationResourcePlural plural name of Application Registration CR
	ApplicationRegistrationResourcePlural = "applicationregistrations"
)
View Source
const (
	// ApplicationRestoreResourceName is name for "applicationrestore" resource
	ApplicationRestoreResourceName = "applicationrestore"
	// ApplicationRestoreResourcePlural is plural for "applicationrestore" resource
	ApplicationRestoreResourcePlural = "applicationrestores"
)
View Source
const (
	// BackupLocationResourceName is name for "backuplocation" resource
	BackupLocationResourceName = "backuplocation"
	// BackupLocationResourcePlural is plural for "backuplocation" resource
	BackupLocationResourcePlural = "backuplocations"
)
View Source
const (
	// ClusterDomainsStatusResourceName is name for "clusterdomainsstatus" resource
	ClusterDomainsStatusResourceName = "clusterdomainsstatus"
	// ClusterDomainsStatusPlural is plural for "clusterdomainsstatus" resource
	ClusterDomainsStatusPlural = "clusterdomainsstatuses"
	// ClusterDomainsStatusShortName is the shortname for "clusterdomainsstatus" resource
	ClusterDomainsStatusShortName = "cds"
)
View Source
const (
	// ClusterDomainUpdateResourceName is name for "clusterdomainupdate" resource
	ClusterDomainUpdateResourceName = "clusterdomainupdate"
	// ClusterDomainUpdatePlural is plural for "clusterdomainupdate" resource
	ClusterDomainUpdatePlural = "clusterdomainupdates"
	// ClusterDomainUpdateShortName is the short name for clusterdomainupdate
	ClusterDomainUpdateShortName = "cdu"
)
View Source
const (
	// ClusterPairResourceName is name for "clusterpair" resource
	ClusterPairResourceName = "clusterpair"
	// ClusterPairResourcePlural is plural for "clusterpair" resource
	ClusterPairResourcePlural = "clusterpairs"
)
View Source
const (
	// GroupVolumeSnapshotResourceName is name for "groupvolumesnapshot" resource
	GroupVolumeSnapshotResourceName = "groupvolumesnapshot"
	// GroupVolumeSnapshotResourcePlural is plural for the "groupvolumesnapshot" resource
	GroupVolumeSnapshotResourcePlural = "groupvolumesnapshots"
)
View Source
const (
	// MigrationResourceName is name for "migration" resource
	MigrationResourceName = "migration"
	// MigrationResourcePlural is plural for "migration" resource
	MigrationResourcePlural = "migrations"
)
View Source
const (
	// MigrationScheduleResourceName is name for "migrationschedule" resource
	MigrationScheduleResourceName = "migrationschedule"
	// MigrationScheduleResourcePlural is plural for "migrationschedule" resource
	MigrationScheduleResourcePlural = "migrationschedules"
)
View Source
const (
	// SchedulePolicyResourceName is name for "schedulepolicy" resource
	SchedulePolicyResourceName = "schedulepolicy"
	// SchedulePolicyResourcePlural is plural for "schedulepolicy" resource
	SchedulePolicyResourcePlural = "schedulepolicies"
)
View Source
const (
	// DataExportResourceName is name for the DataExport resource.
	DataExportResourceName = "dataexport"
	// DataExportResourcePlural is the name for list of DataExport resources.
	DataExportResourcePlural = "dataexports"
)
View Source
const (
	// SnapshotRestoreResourceName is name for "volumesnapshotrestore" resource
	SnapshotRestoreResourceName = "volumesnapshotrestore"
	// SnapshotRestoreResourcePlural is plural for "volumesnapshotrestore" resource
	SnapshotRestoreResourcePlural = "volumesnapshotrestores"
)
View Source
const (
	// VolumeSnapshotScheduleResourceName is name for "volumesnapshotschedule" resource
	VolumeSnapshotScheduleResourceName = "volumesnapshotschedule"
	// VolumeSnapshotScheduleResourcePlural is plural for "volumesnapshotschedule" resource
	VolumeSnapshotScheduleResourcePlural = "volumesnapshotschedules"
)
View Source
const DefaultDailyPolicyRetain = Retain(30)

DefaultDailyPolicyRetain Default for objects to be retained for the daily policy

View Source
const DefaultIntervalPolicyRetain = Retain(10)

DefaultIntervalPolicyRetain Default for objects to be retained for the interval policy

View Source
const DefaultMonthlyPolicyRetain = Retain(12)

DefaultMonthlyPolicyRetain Default for objects to be retained for the monthly policy

View Source
const DefaultWeeklyPolicyRetain = Retain(7)

DefaultWeeklyPolicyRetain Default for objects to be retained for the weekly policy

Variables

View Source
var (
	// SchemeBuilder is the scheme builder for the types
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme applies all the stored functions to the scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var Days = map[string]time.Weekday{
	"Sunday":    time.Sunday,
	"Sun":       time.Sunday,
	"Monday":    time.Monday,
	"Mon":       time.Monday,
	"Tuesday":   time.Tuesday,
	"Tue":       time.Tuesday,
	"Wednesday": time.Wednesday,
	"Wed":       time.Wednesday,
	"Thursday":  time.Thursday,
	"Thu":       time.Thursday,
	"Thur":      time.Thursday,
	"Thurs":     time.Thursday,
	"Friday":    time.Friday,
	"Fri":       time.Friday,
	"Saturday":  time.Saturday,
	"Sat":       time.Saturday,
}

Days is a map of valid Day strings

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: stork.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func CreateObjectsMap added in v1.4.0

func CreateObjectsMap(
	includeObjects []ObjectInfo,
) map[ObjectInfo]bool

CreateObjectsMap create a map of objects that are to be included in an operation. Allows quick lookup of objects

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type ApplicationBackup added in v1.4.0

type ApplicationBackup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ApplicationBackupSpec   `json:"spec"`
	Status            ApplicationBackupStatus `json:"status"`
}

ApplicationBackup represents applicationbackup object

func (*ApplicationBackup) DeepCopy added in v1.4.0

func (in *ApplicationBackup) DeepCopy() *ApplicationBackup

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

func (*ApplicationBackup) DeepCopyInto added in v1.4.0

func (in *ApplicationBackup) DeepCopyInto(out *ApplicationBackup)

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

func (*ApplicationBackup) DeepCopyObject added in v1.4.0

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

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

type ApplicationBackupList added in v1.4.0

type ApplicationBackupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ApplicationBackup `json:"items"`
}

ApplicationBackupList is a list of ApplicationBackups

func (*ApplicationBackupList) DeepCopy added in v1.4.0

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

func (*ApplicationBackupList) DeepCopyInto added in v1.4.0

func (in *ApplicationBackupList) DeepCopyInto(out *ApplicationBackupList)

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

func (*ApplicationBackupList) DeepCopyObject added in v1.4.0

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

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

type ApplicationBackupReclaimPolicyType added in v1.4.0

type ApplicationBackupReclaimPolicyType string

ApplicationBackupReclaimPolicyType is the reclaim policy for the application backup

const (
	// ApplicationBackupReclaimPolicyDelete is to specify that the backup should
	// be deleted when the object is deleted
	ApplicationBackupReclaimPolicyDelete ApplicationBackupReclaimPolicyType = "Delete"
	// ApplicationBackupReclaimPolicyRetain is to specify that the backup should
	// be retained when the object is deleted
	ApplicationBackupReclaimPolicyRetain ApplicationBackupReclaimPolicyType = "Retain"
)

type ApplicationBackupResourceInfo added in v1.4.0

type ApplicationBackupResourceInfo struct {
	ObjectInfo `json:",inline"`
}

ApplicationBackupResourceInfo is the info for the backup of a resource

func (*ApplicationBackupResourceInfo) DeepCopy added in v1.4.0

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

func (*ApplicationBackupResourceInfo) DeepCopyInto added in v1.4.0

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

type ApplicationBackupSchedule added in v1.4.0

type ApplicationBackupSchedule struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            ApplicationBackupScheduleSpec   `json:"spec"`
	Status          ApplicationBackupScheduleStatus `json:"status"`
}

ApplicationBackupSchedule represents a scheduled applicationbackup object

func (*ApplicationBackupSchedule) DeepCopy added in v1.4.0

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

func (*ApplicationBackupSchedule) DeepCopyInto added in v1.4.0

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

func (*ApplicationBackupSchedule) DeepCopyObject added in v1.4.0

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

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

type ApplicationBackupScheduleList added in v1.4.0

type ApplicationBackupScheduleList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []ApplicationBackupSchedule `json:"items"`
}

ApplicationBackupScheduleList is a list of ApplicationBackupSchedules

func (*ApplicationBackupScheduleList) DeepCopy added in v1.4.0

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

func (*ApplicationBackupScheduleList) DeepCopyInto added in v1.4.0

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

func (*ApplicationBackupScheduleList) DeepCopyObject added in v1.4.0

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

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

type ApplicationBackupScheduleSpec added in v1.4.0

type ApplicationBackupScheduleSpec struct {
	Template           ApplicationBackupTemplateSpec `json:"template"`
	SchedulePolicyName string                        `json:"schedulePolicyName"`
	Suspend            *bool                         `json:"suspend"`
	ReclaimPolicy      ReclaimPolicyType             `json:"reclaimPolicy"`
}

ApplicationBackupScheduleSpec is the spec used to schedule applicationbackups

func (*ApplicationBackupScheduleSpec) DeepCopy added in v1.4.0

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

func (*ApplicationBackupScheduleSpec) DeepCopyInto added in v1.4.0

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

type ApplicationBackupScheduleStatus added in v1.4.0

type ApplicationBackupScheduleStatus struct {
	Items map[SchedulePolicyType][]*ScheduledApplicationBackupStatus `json:"items"`
}

ApplicationBackupScheduleStatus is the status of a applicationbackup schedule

func (*ApplicationBackupScheduleStatus) DeepCopy added in v1.4.0

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

func (*ApplicationBackupScheduleStatus) DeepCopyInto added in v1.4.0

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

type ApplicationBackupSpec added in v1.4.0

type ApplicationBackupSpec struct {
	Namespaces     []string                           `json:"namespaces"`
	BackupLocation string                             `json:"backupLocation"`
	Selectors      map[string]string                  `json:"selectors"`
	PreExecRule    string                             `json:"preExecRule"`
	PostExecRule   string                             `json:"postExecRule"`
	ReclaimPolicy  ApplicationBackupReclaimPolicyType `json:"reclaimPolicy"`
	// Options to be passed in to the driver
	Options          map[string]string `json:"options"`
	IncludeResources []ObjectInfo      `json:"includeResources"`
}

ApplicationBackupSpec is the spec used to backup applications

func (*ApplicationBackupSpec) DeepCopy added in v1.4.0

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

func (*ApplicationBackupSpec) DeepCopyInto added in v1.4.0

func (in *ApplicationBackupSpec) DeepCopyInto(out *ApplicationBackupSpec)

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

type ApplicationBackupStageType added in v1.4.0

type ApplicationBackupStageType string

ApplicationBackupStageType is the stage of the backup

const (
	// ApplicationBackupStageInitial for when backup is created
	ApplicationBackupStageInitial ApplicationBackupStageType = ""
	// ApplicationBackupStagePreExecRule for when the PreExecRule is being executed
	ApplicationBackupStagePreExecRule ApplicationBackupStageType = "PreExecRule"
	// ApplicationBackupStagePostExecRule for when the PostExecRule is being executed
	ApplicationBackupStagePostExecRule ApplicationBackupStageType = "PostExecRule"
	// ApplicationBackupStageVolumes for when volumes are being backed up
	ApplicationBackupStageVolumes ApplicationBackupStageType = "Volumes"
	// ApplicationBackupStageApplications for when applications are being backed up
	ApplicationBackupStageApplications ApplicationBackupStageType = "Applications"
	// ApplicationBackupStageFinal is the final stage for backup
	ApplicationBackupStageFinal ApplicationBackupStageType = "Final"
)

type ApplicationBackupStatus added in v1.4.0

type ApplicationBackupStatus struct {
	Stage               ApplicationBackupStageType       `json:"stage"`
	Status              ApplicationBackupStatusType      `json:"status"`
	Reason              string                           `json:"reason"`
	Resources           []*ApplicationBackupResourceInfo `json:"resources"`
	Volumes             []*ApplicationBackupVolumeInfo   `json:"volumes"`
	BackupPath          string                           `json:"backupPath"`
	TriggerTimestamp    metav1.Time                      `json:"triggerTimestamp"`
	LastUpdateTimestamp metav1.Time                      `json:"lastUpdateTimestamp"`
	FinishTimestamp     metav1.Time                      `json:"finishTimestamp"`
	TotalSize           uint64                           `json:"totalSize"`
}

ApplicationBackupStatus is the status of a application backup operation

func (*ApplicationBackupStatus) DeepCopy added in v1.4.0

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

func (*ApplicationBackupStatus) DeepCopyInto added in v1.4.0

func (in *ApplicationBackupStatus) DeepCopyInto(out *ApplicationBackupStatus)

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

type ApplicationBackupStatusType added in v1.4.0

type ApplicationBackupStatusType string

ApplicationBackupStatusType is the status of the application backup

const (
	// ApplicationBackupStatusInitial is the initial state when backup is created
	ApplicationBackupStatusInitial ApplicationBackupStatusType = ""
	// ApplicationBackupStatusPending for when backup is still pending
	ApplicationBackupStatusPending ApplicationBackupStatusType = "Pending"
	// ApplicationBackupStatusInProgress for when backup is in progress
	ApplicationBackupStatusInProgress ApplicationBackupStatusType = "InProgress"
	// ApplicationBackupStatusFailed for when backup has failed
	ApplicationBackupStatusFailed ApplicationBackupStatusType = "Failed"
	// ApplicationBackupStatusPartialSuccess for when backup was partially successful
	ApplicationBackupStatusPartialSuccess ApplicationBackupStatusType = "PartialSuccess"
	// ApplicationBackupStatusSuccessful for when backup has completed successfully
	ApplicationBackupStatusSuccessful ApplicationBackupStatusType = "Successful"
)

type ApplicationBackupTemplateSpec added in v1.4.0

type ApplicationBackupTemplateSpec struct {
	Spec ApplicationBackupSpec `json:"spec"`
}

ApplicationBackupTemplateSpec describes the data a ApplicationBackup should have when created from a template

func (*ApplicationBackupTemplateSpec) DeepCopy added in v1.4.0

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

func (*ApplicationBackupTemplateSpec) DeepCopyInto added in v1.4.0

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

type ApplicationBackupVolumeInfo added in v1.4.0

type ApplicationBackupVolumeInfo struct {
	PersistentVolumeClaim string                      `json:"persistentVolumeClaim"`
	Namespace             string                      `json:"namespace"`
	Volume                string                      `json:"volume"`
	BackupID              string                      `json:"backupID"`
	DriverName            string                      `json:"driverName"`
	Zones                 []string                    `json:"zones"`
	Status                ApplicationBackupStatusType `json:"status"`
	Reason                string                      `json:"reason"`
	Options               map[string]string           `jons:"options"`
	TotalSize             uint64                      `json:"totalSize"`
	ActualSize            uint64                      `json:"actualSize"`
}

ApplicationBackupVolumeInfo is the info for the backup of a volume

func (*ApplicationBackupVolumeInfo) DeepCopy added in v1.4.0

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

func (*ApplicationBackupVolumeInfo) DeepCopyInto added in v1.4.0

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

type ApplicationClone added in v1.4.0

type ApplicationClone struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            ApplicationCloneSpec   `json:"spec"`
	Status          ApplicationCloneStatus `json:"status,omitempty"`
}

ApplicationClone represents the cloning of application in different namespaces

func (*ApplicationClone) DeepCopy added in v1.4.0

func (in *ApplicationClone) DeepCopy() *ApplicationClone

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

func (*ApplicationClone) DeepCopyInto added in v1.4.0

func (in *ApplicationClone) DeepCopyInto(out *ApplicationClone)

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

func (*ApplicationClone) DeepCopyObject added in v1.4.0

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

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

type ApplicationCloneList added in v1.4.0

type ApplicationCloneList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []ApplicationClone `json:"items"`
}

ApplicationCloneList is a list of ApplicationClones

func (*ApplicationCloneList) DeepCopy added in v1.4.0

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

func (*ApplicationCloneList) DeepCopyInto added in v1.4.0

func (in *ApplicationCloneList) DeepCopyInto(out *ApplicationCloneList)

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

func (*ApplicationCloneList) DeepCopyObject added in v1.4.0

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

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

type ApplicationCloneReplacePolicyType added in v1.4.0

type ApplicationCloneReplacePolicyType string

ApplicationCloneReplacePolicyType defines the policy for objects that might already exist in the destination namespace, should they be replaced, deleted, retained or overwritten

const (
	// ApplicationCloneReplacePolicyDelete will delete any conflicts in objects in the
	// destination namespace
	ApplicationCloneReplacePolicyDelete ApplicationCloneReplacePolicyType = "Delete"
	// ApplicationCloneReplacePolicyRetain will retain any conflicts and not change/clone
	ApplicationCloneReplacePolicyRetain ApplicationCloneReplacePolicyType = "Retain"
	// ApplicationCloneReplacePolicyFail will trigger a clone failure on conflicts
	ApplicationCloneReplacePolicyFail ApplicationCloneReplacePolicyType = "Fail"
)

type ApplicationCloneResourceInfo added in v1.4.0

type ApplicationCloneResourceInfo struct {
	Name                  string                     `json:"name"`
	Reason                string                     `json:"reason"`
	Status                ApplicationCloneStatusType `json:"status"`
	meta.GroupVersionKind `json:",inline"`
}

ApplicationCloneResourceInfo is the info for the cloning of a resource

func (*ApplicationCloneResourceInfo) DeepCopy added in v1.4.0

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

func (*ApplicationCloneResourceInfo) DeepCopyInto added in v1.4.0

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

type ApplicationCloneSpec added in v1.4.0

type ApplicationCloneSpec struct {
	// SourceNamespace can be optional, and we can check in the code that we are using
	// the same namespace in which we are creating the cloning object
	// +optional
	SourceNamespace string `json:"sourceNamespace,omitempty"`
	// DestinationNamespace is a must parameter to tell the cloning object
	// where to place the application objects
	DestinationNamespace string `json:"destinationNamespace"`
	// Selectors for label on objects
	Selectors    map[string]string `json:"selectors"`
	PreExecRule  string            `json:"preExecRule"`
	PostExecRule string            `json:"postExecRule"`
	// ReplacePolicy to decide how to react when a object conflict occurs in the cloning process
	ReplacePolicy                ApplicationCloneReplacePolicyType `json:"replacePolicy"`
	IncludeOptionalResourceTypes []string                          `json:"includeOptionalResourceTypes"`
}

ApplicationCloneSpec defines the spec to create an application clone

func (*ApplicationCloneSpec) DeepCopy added in v1.4.0

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

func (*ApplicationCloneSpec) DeepCopyInto added in v1.4.0

func (in *ApplicationCloneSpec) DeepCopyInto(out *ApplicationCloneSpec)

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

type ApplicationCloneStageType added in v1.4.0

type ApplicationCloneStageType string

ApplicationCloneStageType defines the stage of the cloning process

const (
	// ApplicationCloneStageInitial when the cloning was started
	ApplicationCloneStageInitial ApplicationCloneStageType = ""
	// ApplicationCloneStagePreExecRule stage when pre-exec rules are being executed
	ApplicationCloneStagePreExecRule ApplicationCloneStageType = "PreExecRule"
	// ApplicationCloneStagePostExecRule stage when post-exec rules are being executed
	ApplicationCloneStagePostExecRule ApplicationCloneStageType = "PostExecRule"
	// ApplicationCloneStageVolumes stage where the volumes are being cloned
	ApplicationCloneStageVolumes ApplicationCloneStageType = "Volumes"
	// ApplicationCloneStageApplications stage when applications are being cloned
	ApplicationCloneStageApplications ApplicationCloneStageType = "Applications"
	// ApplicationCloneStageFinal is the final stage for backup
	ApplicationCloneStageFinal ApplicationCloneStageType = "Final"
)

type ApplicationCloneStatus added in v1.4.0

type ApplicationCloneStatus struct {
	// Status of the cloning process
	Status ApplicationCloneStatusType `json:"status"`
	// Stage of the cloning process
	Stage           ApplicationCloneStageType       `json:"stage"`
	Resources       []*ApplicationCloneResourceInfo `json:"resources"`
	Volumes         []*ApplicationCloneVolumeInfo   `json:"volumes"`
	FinishTimestamp meta.Time                       `json:"finishTimestamp"`
}

ApplicationCloneStatus defines the status of the clone

func (*ApplicationCloneStatus) DeepCopy added in v1.4.0

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

func (*ApplicationCloneStatus) DeepCopyInto added in v1.4.0

func (in *ApplicationCloneStatus) DeepCopyInto(out *ApplicationCloneStatus)

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

type ApplicationCloneStatusType added in v1.4.0

type ApplicationCloneStatusType string

ApplicationCloneStatusType defines status of the application being cloned

const (
	// ApplicationCloneStatusInitial initial state when the cloning will start
	ApplicationCloneStatusInitial ApplicationCloneStatusType = ""
	// ApplicationCloneStatusPending when cloning is still pending
	ApplicationCloneStatusPending ApplicationCloneStatusType = "Pending"
	// ApplicationCloneStatusInProgress cloning in progress
	ApplicationCloneStatusInProgress ApplicationCloneStatusType = "InProgress"
	// ApplicationCloneStatusFailed when cloning has failed
	ApplicationCloneStatusFailed ApplicationCloneStatusType = "Failed"
	// ApplicationCloneStatusSuccessful when cloning was a success
	ApplicationCloneStatusSuccessful ApplicationCloneStatusType = "Successful"
	// ApplicationCloneStatusRetained for when clone was skipped to retain an already existing resource
	ApplicationCloneStatusRetained ApplicationCloneStatusType = "Retained"
	// ApplicationCloneStatusPartialSuccess when cloning was only partially successful
	ApplicationCloneStatusPartialSuccess ApplicationCloneStatusType = "PartialSuccess"
)

type ApplicationCloneVolumeInfo added in v1.4.0

type ApplicationCloneVolumeInfo struct {
	PersistentVolumeClaim string                     `json:"persistentVolumeClaim"`
	Volume                string                     `json:"volume"`
	CloneVolume           string                     `json:"cloneVolume"`
	Status                ApplicationCloneStatusType `json:"status"`
	Reason                string                     `json:"reason"`
}

ApplicationCloneVolumeInfo is the info for the cloning of a volume

func (*ApplicationCloneVolumeInfo) DeepCopy added in v1.4.0

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

func (*ApplicationCloneVolumeInfo) DeepCopyInto added in v1.4.0

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

type ApplicationRegistration added in v1.4.0

type ApplicationRegistration struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Resources         []ApplicationResource `json:"resources"`
}

ApplicationRegistration to collect crd resources

func (*ApplicationRegistration) DeepCopy added in v1.4.0

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

func (*ApplicationRegistration) DeepCopyInto added in v1.4.0

func (in *ApplicationRegistration) DeepCopyInto(out *ApplicationRegistration)

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

func (*ApplicationRegistration) DeepCopyObject added in v1.4.0

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

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

type ApplicationRegistrationList added in v1.4.0

type ApplicationRegistrationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ApplicationRegistration `json:"items"`
}

ApplicationRegistrationList is a list of ApplicationRegistration

func (*ApplicationRegistrationList) DeepCopy added in v1.4.0

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

func (*ApplicationRegistrationList) DeepCopyInto added in v1.4.0

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

func (*ApplicationRegistrationList) DeepCopyObject added in v1.4.0

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

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

type ApplicationResource added in v1.4.0

type ApplicationResource struct {
	// ResourceKind crd kind
	// ResourceKind string `json:"resourceKind"`
	// CRDName to register CR on destination clusters
	metav1.GroupVersionKind `json:",inline"`
	// KeepStatus if set to true collect status
	// while doing backup/migration/restore etc
	KeepStatus bool `json:"keepStatus"`
	// SuspendOptions to disable CRD upon migration/restore/clone
	SuspendOptions SuspendOptions `json:"suspendOptions"`
	// PodsPath to help activate/deactivate crd upon migration
	PodsPath string `json:"podsPath"`
}

ApplicationResource definations to collect resource and fields

func (*ApplicationResource) DeepCopy added in v1.4.0

func (in *ApplicationResource) DeepCopy() *ApplicationResource

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

func (*ApplicationResource) DeepCopyInto added in v1.4.0

func (in *ApplicationResource) DeepCopyInto(out *ApplicationResource)

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

type ApplicationRestore added in v1.4.0

type ApplicationRestore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ApplicationRestoreSpec   `json:"spec"`
	Status            ApplicationRestoreStatus `json:"status"`
}

ApplicationRestore represents applicationrestore object

func (*ApplicationRestore) DeepCopy added in v1.4.0

func (in *ApplicationRestore) DeepCopy() *ApplicationRestore

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

func (*ApplicationRestore) DeepCopyInto added in v1.4.0

func (in *ApplicationRestore) DeepCopyInto(out *ApplicationRestore)

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

func (*ApplicationRestore) DeepCopyObject added in v1.4.0

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

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

type ApplicationRestoreList added in v1.4.0

type ApplicationRestoreList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ApplicationRestore `json:"items"`
}

ApplicationRestoreList is a list of ApplicationRestores

func (*ApplicationRestoreList) DeepCopy added in v1.4.0

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

func (*ApplicationRestoreList) DeepCopyInto added in v1.4.0

func (in *ApplicationRestoreList) DeepCopyInto(out *ApplicationRestoreList)

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

func (*ApplicationRestoreList) DeepCopyObject added in v1.4.0

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

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

type ApplicationRestoreReplacePolicyType added in v1.4.0

type ApplicationRestoreReplacePolicyType string

ApplicationRestoreReplacePolicyType is the replace policy for the application restore in case there are conflicting resources already present on the cluster

const (
	// ApplicationRestoreReplacePolicyDelete is to specify that the restore
	// should delete existing resources that conflict with resources being
	// restored
	ApplicationRestoreReplacePolicyDelete ApplicationRestoreReplacePolicyType = "Delete"
	// ApplicationRestoreReplacePolicyRetain is to specify that the restore
	// should retain existing resources that conflict with resources being
	// restored
	ApplicationRestoreReplacePolicyRetain ApplicationRestoreReplacePolicyType = "Retain"
)

type ApplicationRestoreResourceInfo added in v1.4.0

type ApplicationRestoreResourceInfo struct {
	ObjectInfo `json:',inline"`
	Status     ApplicationRestoreStatusType `json:"status"`
	Reason     string                       `json:"reason"`
}

ApplicationRestoreResourceInfo is the info for the restore of a resource

func (*ApplicationRestoreResourceInfo) DeepCopy added in v1.4.0

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

func (*ApplicationRestoreResourceInfo) DeepCopyInto added in v1.4.0

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

type ApplicationRestoreSpec added in v1.4.0

type ApplicationRestoreSpec struct {
	BackupName                   string                              `json:"backupName"`
	BackupLocation               string                              `json:"backupLocation"`
	NamespaceMapping             map[string]string                   `json:"namespaceMapping"`
	ReplacePolicy                ApplicationRestoreReplacePolicyType `json:"replacePolicy"`
	IncludeOptionalResourceTypes []string                            `json:"includeOptionalResourceTypes"`
	IncludeResources             []ObjectInfo                        `json:"includeResources"`
}

ApplicationRestoreSpec is the spec used to restore applications

func (*ApplicationRestoreSpec) DeepCopy added in v1.4.0

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

func (*ApplicationRestoreSpec) DeepCopyInto added in v1.4.0

func (in *ApplicationRestoreSpec) DeepCopyInto(out *ApplicationRestoreSpec)

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

type ApplicationRestoreStageType added in v1.4.0

type ApplicationRestoreStageType string

ApplicationRestoreStageType is the stage of the restore

const (
	// ApplicationRestoreStageInitial for when restore is created
	ApplicationRestoreStageInitial ApplicationRestoreStageType = ""
	// ApplicationRestoreStageVolumes for when volumes are being restored
	ApplicationRestoreStageVolumes ApplicationRestoreStageType = "Volumes"
	// ApplicationRestoreStageApplications for when applications are being
	// restored
	ApplicationRestoreStageApplications ApplicationRestoreStageType = "Applications"
	// ApplicationRestoreStageFinal is the final stage for restore
	ApplicationRestoreStageFinal ApplicationRestoreStageType = "Final"
)

type ApplicationRestoreStatus added in v1.4.0

type ApplicationRestoreStatus struct {
	Stage               ApplicationRestoreStageType       `json:"stage"`
	Status              ApplicationRestoreStatusType      `json:"status"`
	Reason              string                            `json:"reason"`
	Resources           []*ApplicationRestoreResourceInfo `json:"resources"`
	Volumes             []*ApplicationRestoreVolumeInfo   `json:"volumes"`
	FinishTimestamp     metav1.Time                       `json:"finishTimestamp"`
	LastUpdateTimestamp metav1.Time                       `json:"lastUpdateTimestamp"`
	TotalSize           uint64                            `json:"totalSize"`
}

ApplicationRestoreStatus is the status of a application restore operation

func (*ApplicationRestoreStatus) DeepCopy added in v1.4.0

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

func (*ApplicationRestoreStatus) DeepCopyInto added in v1.4.0

func (in *ApplicationRestoreStatus) DeepCopyInto(out *ApplicationRestoreStatus)

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

type ApplicationRestoreStatusType added in v1.4.0

type ApplicationRestoreStatusType string

ApplicationRestoreStatusType is the status of the application restore

const (
	// ApplicationRestoreStatusInitial is the initial state when restore is created
	ApplicationRestoreStatusInitial ApplicationRestoreStatusType = ""
	// ApplicationRestoreStatusPending for when restore is still pending
	ApplicationRestoreStatusPending ApplicationRestoreStatusType = "Pending"
	// ApplicationRestoreStatusInProgress for when restore is in progress
	ApplicationRestoreStatusInProgress ApplicationRestoreStatusType = "InProgress"
	// ApplicationRestoreStatusFailed for when restore has failed
	ApplicationRestoreStatusFailed ApplicationRestoreStatusType = "Failed"
	// ApplicationRestoreStatusPartialSuccess for when restore was partially successful
	ApplicationRestoreStatusPartialSuccess ApplicationRestoreStatusType = "PartialSuccess"
	// ApplicationRestoreStatusRetained for when restore was skipped to retain an already existing resource
	ApplicationRestoreStatusRetained ApplicationRestoreStatusType = "Retained"
	// ApplicationRestoreStatusSuccessful for when restore has completed successfully
	ApplicationRestoreStatusSuccessful ApplicationRestoreStatusType = "Successful"
)

type ApplicationRestoreVolumeInfo added in v1.4.0

type ApplicationRestoreVolumeInfo struct {
	PersistentVolumeClaim string                       `json:"persistentVolumeClaim"`
	SourceNamespace       string                       `json:"sourceNamespace"`
	SourceVolume          string                       `json:"sourceVolume"`
	RestoreVolume         string                       `json:"restoreVolume"`
	DriverName            string                       `json:"driverName"`
	Zones                 []string                     `json:"zones"`
	Status                ApplicationRestoreStatusType `json:"status"`
	Reason                string                       `json:"reason"`
	TotalSize             uint64                       `json:"totalSize"`
}

ApplicationRestoreVolumeInfo is the info for the restore of a volume

func (*ApplicationRestoreVolumeInfo) DeepCopy added in v1.4.0

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

func (*ApplicationRestoreVolumeInfo) DeepCopyInto added in v1.4.0

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

type AzureConfig added in v1.4.0

type AzureConfig struct {
	StorageAccountName string `json:"storageAccountName"`
	StorageAccountKey  string `json:"storageAccountKey"`
}

AzureConfig specifies the config required to connect to Azure Blob Storage

func (*AzureConfig) DeepCopy added in v1.4.0

func (in *AzureConfig) DeepCopy() *AzureConfig

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

func (*AzureConfig) DeepCopyInto added in v1.4.0

func (in *AzureConfig) DeepCopyInto(out *AzureConfig)

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

type BackupLocation added in v1.4.0

type BackupLocation struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Location          BackupLocationItem `json:"location"`
}

BackupLocation represents a backuplocation object

func (*BackupLocation) DeepCopy added in v1.4.0

func (in *BackupLocation) DeepCopy() *BackupLocation

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

func (*BackupLocation) DeepCopyInto added in v1.4.0

func (in *BackupLocation) DeepCopyInto(out *BackupLocation)

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

func (*BackupLocation) DeepCopyObject added in v1.4.0

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

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

func (*BackupLocation) UpdateFromSecret added in v1.4.0

func (bl *BackupLocation) UpdateFromSecret(client kubernetes.Interface) error

UpdateFromSecret updated the config information from the secret if not provided inline

type BackupLocationItem added in v1.4.0

type BackupLocationItem struct {
	Type BackupLocationType `json:"type"`
	// Path is either the bucket or any other path for the backup location
	Path          string        `json:"path"`
	EncryptionKey string        `json:"encryptionKey"`
	S3Config      *S3Config     `json:"s3Config,omitempty"`
	AzureConfig   *AzureConfig  `json:"azureConfig,omitempty"`
	GoogleConfig  *GoogleConfig `json:"googleConfig,omitempty"`
	SecretConfig  string        `json:"secretConfig"`
	Sync          bool          `json:"sync"`
}

BackupLocationItem is the spec used to store a backup location Only one of S3Config, AzureConfig or GoogleConfig should be specified and should match the Type field. Members of the config can be specified inline or through the SecretConfig

func (*BackupLocationItem) DeepCopy added in v1.4.0

func (in *BackupLocationItem) DeepCopy() *BackupLocationItem

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

func (*BackupLocationItem) DeepCopyInto added in v1.4.0

func (in *BackupLocationItem) DeepCopyInto(out *BackupLocationItem)

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

type BackupLocationList added in v1.4.0

type BackupLocationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []BackupLocation `json:"items"`
}

BackupLocationList is a list of ApplicationBackups

func (*BackupLocationList) DeepCopy added in v1.4.0

func (in *BackupLocationList) DeepCopy() *BackupLocationList

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

func (*BackupLocationList) DeepCopyInto added in v1.4.0

func (in *BackupLocationList) DeepCopyInto(out *BackupLocationList)

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

func (*BackupLocationList) DeepCopyObject added in v1.4.0

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

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

type BackupLocationType added in v1.4.0

type BackupLocationType string

BackupLocationType is the type of the backup location

const (
	// BackupLocationS3 stores the backup in an S3-compliant objectstore
	BackupLocationS3 BackupLocationType = "s3"
	// BackupLocationAzure stores the backup in Azure Blob Storage
	BackupLocationAzure BackupLocationType = "azure"
	// BackupLocationGoogle stores the backup in Google Cloud Storage
	BackupLocationGoogle BackupLocationType = "google"
)

type ClusterDomainInfo added in v1.4.0

type ClusterDomainInfo struct {
	Name       string                  `json:"name"`
	State      ClusterDomainState      `json:"state"`
	SyncStatus ClusterDomainSyncStatus `json:"syncStatus"`
}

ClusterDomainInfo provides more information about a cluster domain

func (*ClusterDomainInfo) DeepCopy added in v1.4.0

func (in *ClusterDomainInfo) DeepCopy() *ClusterDomainInfo

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

func (*ClusterDomainInfo) DeepCopyInto added in v1.4.0

func (in *ClusterDomainInfo) DeepCopyInto(out *ClusterDomainInfo)

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

type ClusterDomainState added in v1.4.0

type ClusterDomainState string

ClusterDomainState defines the state of the cluster domain

const (
	// ClusterDomainActive indicates that the cluster domain is active
	ClusterDomainActive ClusterDomainState = "Active"

	// ClusterDomainInactive indicates that the cluster domain is inactive
	ClusterDomainInactive ClusterDomainState = "Inactive"
)

type ClusterDomainSyncStatus added in v1.4.0

type ClusterDomainSyncStatus string

ClusterDomainSyncStatus defines the current sync progress status of a cluster domain

const (
	// ClusterDomainSyncStatusInSync indicates the cluster domain is in sync
	ClusterDomainSyncStatusInSync ClusterDomainSyncStatus = "InSync"
	// ClusterDomainSyncStatusInProgress indicates the cluster domain sync is in progress
	ClusterDomainSyncStatusInProgress ClusterDomainSyncStatus = "SyncInProgress"
	// ClusterDomainSyncStatusNotInSync indicates the cluster domain is not in sync
	ClusterDomainSyncStatusNotInSync ClusterDomainSyncStatus = "NotInSync"
	// ClusterDomainSyncStatusUnknown indicates the cluster domain sync status is currently not known
	ClusterDomainSyncStatusUnknown ClusterDomainSyncStatus = "SyncStatusUnknown"
)

type ClusterDomainUpdate added in v1.4.0

type ClusterDomainUpdate struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            ClusterDomainUpdateSpec   `json:"spec"`
	Status          ClusterDomainUpdateStatus `json:"status"`
}

ClusterDomainUpdate indicates the update need to be done on a ClusterDomain

func (*ClusterDomainUpdate) DeepCopy added in v1.4.0

func (in *ClusterDomainUpdate) DeepCopy() *ClusterDomainUpdate

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

func (*ClusterDomainUpdate) DeepCopyInto added in v1.4.0

func (in *ClusterDomainUpdate) DeepCopyInto(out *ClusterDomainUpdate)

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

func (*ClusterDomainUpdate) DeepCopyObject added in v1.4.0

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

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

type ClusterDomainUpdateList added in v1.4.0

type ClusterDomainUpdateList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []ClusterDomainUpdate `json:"items"`
}

ClusterDomainUpdateList is a list of statuses for cluster domains

func (*ClusterDomainUpdateList) DeepCopy added in v1.4.0

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

func (*ClusterDomainUpdateList) DeepCopyInto added in v1.4.0

func (in *ClusterDomainUpdateList) DeepCopyInto(out *ClusterDomainUpdateList)

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

func (*ClusterDomainUpdateList) DeepCopyObject added in v1.4.0

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

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

type ClusterDomainUpdateSpec added in v1.4.0

type ClusterDomainUpdateSpec struct {
	ClusterDomain string `json:"clusterdomain"`
	Active        bool   `json:"active"`
}

ClusterDomainUpdateSpec is the spec used to update a cluster domain

func (*ClusterDomainUpdateSpec) DeepCopy added in v1.4.0

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

func (*ClusterDomainUpdateSpec) DeepCopyInto added in v1.4.0

func (in *ClusterDomainUpdateSpec) DeepCopyInto(out *ClusterDomainUpdateSpec)

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

type ClusterDomainUpdateStatus added in v1.4.0

type ClusterDomainUpdateStatus struct {
	Status ClusterDomainUpdateStatusType `json:"status"`
	Reason string                        `json:"reason"`
}

ClusterDomainUpdateStatus indicates the status of ClusterDomainUpdate resource

func (*ClusterDomainUpdateStatus) DeepCopy added in v1.4.0

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

func (*ClusterDomainUpdateStatus) DeepCopyInto added in v1.4.0

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

type ClusterDomainUpdateStatusType added in v1.4.0

type ClusterDomainUpdateStatusType string

ClusterDomainUpdateStatusType is the status of cluster domain update operation

const (
	// ClusterDomainUpdateStatusInitial is the initial state when clusterdomainsupdate is created
	ClusterDomainUpdateStatusInitial ClusterDomainUpdateStatusType = ""
	// ClusterDomainUpdateStatusPending is state when clusterdomainsupdate is still pending
	ClusterDomainUpdateStatusPending ClusterDomainUpdateStatusType = "Pending"
	// ClusterDomainUpdateStatusFailed is state when clusterdomainsupdate has failed
	ClusterDomainUpdateStatusFailed ClusterDomainUpdateStatusType = "Failed"
	// ClusterDomainUpdateStatusSuccessful is state when clusterdomainsupdate has completed successfully
	ClusterDomainUpdateStatusSuccessful ClusterDomainUpdateStatusType = "Successful"
)

type ClusterDomains added in v1.4.0

type ClusterDomains struct {
	LocalDomain        string              `json:"localDomain"`
	ClusterDomainInfos []ClusterDomainInfo `json:"clusterDomainInfos"`
}

ClusterDomains provides a list of activated cluster domains and a list of inactive cluster domains

func (*ClusterDomains) DeepCopy added in v1.4.0

func (in *ClusterDomains) DeepCopy() *ClusterDomains

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

func (*ClusterDomains) DeepCopyInto added in v1.4.0

func (in *ClusterDomains) DeepCopyInto(out *ClusterDomains)

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

type ClusterDomainsStatus added in v1.4.0

type ClusterDomainsStatus struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Status          ClusterDomains `json:"status"`
}

ClusterDomainsStatus represents the status of all cluster domains

func (*ClusterDomainsStatus) DeepCopy added in v1.4.0

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

func (*ClusterDomainsStatus) DeepCopyInto added in v1.4.0

func (in *ClusterDomainsStatus) DeepCopyInto(out *ClusterDomainsStatus)

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

func (*ClusterDomainsStatus) DeepCopyObject added in v1.4.0

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

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

type ClusterDomainsStatusList added in v1.4.0

type ClusterDomainsStatusList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []ClusterDomainsStatus `json:"items"`
}

ClusterDomainsStatusList is a list of statuses for cluster domains

func (*ClusterDomainsStatusList) DeepCopy added in v1.4.0

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

func (*ClusterDomainsStatusList) DeepCopyInto added in v1.4.0

func (in *ClusterDomainsStatusList) DeepCopyInto(out *ClusterDomainsStatusList)

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

func (*ClusterDomainsStatusList) DeepCopyObject added in v1.4.0

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

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

type ClusterPair added in v1.4.0

type ClusterPair struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            ClusterPairSpec   `json:"spec"`
	Status          ClusterPairStatus `json:"status,omitempty"`
}

ClusterPair represents pairing with other clusters

func (*ClusterPair) DeepCopy added in v1.4.0

func (in *ClusterPair) DeepCopy() *ClusterPair

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

func (*ClusterPair) DeepCopyInto added in v1.4.0

func (in *ClusterPair) DeepCopyInto(out *ClusterPair)

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

func (*ClusterPair) DeepCopyObject added in v1.4.0

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

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

type ClusterPairList added in v1.4.0

type ClusterPairList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []ClusterPair `json:"items"`
}

ClusterPairList is a list of cluster pairs

func (*ClusterPairList) DeepCopy added in v1.4.0

func (in *ClusterPairList) DeepCopy() *ClusterPairList

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

func (*ClusterPairList) DeepCopyInto added in v1.4.0

func (in *ClusterPairList) DeepCopyInto(out *ClusterPairList)

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

func (*ClusterPairList) DeepCopyObject added in v1.4.0

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

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

type ClusterPairSpec added in v1.4.0

type ClusterPairSpec struct {
	Config  api.Config        `json:"config"`
	Options map[string]string `json:"options"`
}

ClusterPairSpec is the spec to create the cluster pair

func (*ClusterPairSpec) DeepCopy added in v1.4.0

func (in *ClusterPairSpec) DeepCopy() *ClusterPairSpec

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

func (*ClusterPairSpec) DeepCopyInto added in v1.4.0

func (in *ClusterPairSpec) DeepCopyInto(out *ClusterPairSpec)

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

type ClusterPairStatus added in v1.4.0

type ClusterPairStatus struct {
	// Status of the pairing with the scheduler
	// +optional
	SchedulerStatus ClusterPairStatusType `json:"schedulerStatus"`
	// Status of pairing with the storage driver
	// +optional
	StorageStatus ClusterPairStatusType `json:"storageStatus"`
	// ID of the remote storage which is paired
	// +optional
	RemoteStorageID string `json:"remoteStorageId"`
}

ClusterPairStatus is the status of the cluster pair

func (*ClusterPairStatus) DeepCopy added in v1.4.0

func (in *ClusterPairStatus) DeepCopy() *ClusterPairStatus

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

func (*ClusterPairStatus) DeepCopyInto added in v1.4.0

func (in *ClusterPairStatus) DeepCopyInto(out *ClusterPairStatus)

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

type ClusterPairStatusType added in v1.4.0

type ClusterPairStatusType string

ClusterPairStatusType is the status of the pair

const (
	// ClusterPairStatusInitial is the initial state when pairing is created
	ClusterPairStatusInitial ClusterPairStatusType = ""
	// ClusterPairStatusPending for when pairing is still pending
	ClusterPairStatusPending ClusterPairStatusType = "Pending"
	// ClusterPairStatusReady for when pair is ready
	ClusterPairStatusReady ClusterPairStatusType = "Ready"
	// ClusterPairStatusError for when pairing is in error state
	ClusterPairStatusError ClusterPairStatusType = "Error"
	// ClusterPairStatusDegraded for when pairing is degraded
	ClusterPairStatusDegraded ClusterPairStatusType = "Degraded"
	// ClusterPairStatusDeleting for when pairing is being deleted
	ClusterPairStatusDeleting ClusterPairStatusType = "Deleting"
	// ClusterPairStatusNotProvided for when pairing information is not
	// provided
	ClusterPairStatusNotProvided ClusterPairStatusType = "NotProvided"
)

type DailyPolicy added in v1.4.0

type DailyPolicy struct {
	// Time when the policy should be triggered. Expected format is
	// time.Kitchen eg 12:04PM or 12:04pm
	Time string `json:"time"`
	// Retain Number of objects to retain for daily policy. Defaults to
	// @DefaultDailyPolicyRetain
	Retain Retain `json:"retain"`
	// Options to be passed in to the driver. These will be passed in
	// to the object being triggered
	Options map[string]string `json:"options"`
}

DailyPolicy contains the time in the day where an action should be executed

func (*DailyPolicy) DeepCopy added in v1.4.0

func (in *DailyPolicy) DeepCopy() *DailyPolicy

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

func (*DailyPolicy) DeepCopyInto added in v1.4.0

func (in *DailyPolicy) DeepCopyInto(out *DailyPolicy)

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

func (*DailyPolicy) GetHourMinute added in v1.4.0

func (d *DailyPolicy) GetHourMinute() (int, int, error)

GetHourMinute parses and return the hour and minute specified in the policy

func (*DailyPolicy) Validate added in v1.4.0

func (d *DailyPolicy) Validate() error

Validate validates a DailyPolicy

type DataExport added in v1.4.0

type DataExport struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DataExportSpec `json:"spec"`
	Status            ExportStatus   `json:"status"`
}

DataExport defines a spec for importing of application data from a non Portworx PVC (source) to a PVC backed by Portworx.

func (*DataExport) DeepCopy added in v1.4.0

func (in *DataExport) DeepCopy() *DataExport

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

func (*DataExport) DeepCopyInto added in v1.4.0

func (in *DataExport) DeepCopyInto(out *DataExport)

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

func (*DataExport) DeepCopyObject added in v1.4.0

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

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

type DataExportDestination added in v1.4.0

type DataExportDestination struct {
	// PersistentVolumeClaim defines a PVC backend for data transfer. If provided PVC doesn't exist
	// a new one will be created using the spec configuration.
	PersistentVolumeClaim *corev1.PersistentVolumeClaim `json:"persistentVolumeClaim,omitempty"`
}

DataExportDestination defines a backend for data transfer.

func (*DataExportDestination) DeepCopy added in v1.4.0

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

func (*DataExportDestination) DeepCopyInto added in v1.4.0

func (in *DataExportDestination) DeepCopyInto(out *DataExportDestination)

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

type DataExportList added in v1.4.0

type DataExportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []DataExport `json:"items"`
}

DataExportList is a list of DataExport resources.

func (*DataExportList) DeepCopy added in v1.4.0

func (in *DataExportList) DeepCopy() *DataExportList

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

func (*DataExportList) DeepCopyInto added in v1.4.0

func (in *DataExportList) DeepCopyInto(out *DataExportList)

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

func (*DataExportList) DeepCopyObject added in v1.4.0

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

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

type DataExportSource added in v1.4.0

type DataExportSource struct {
	PersistentVolumeClaim *corev1.PersistentVolumeClaim `json:"persistentVolumeClaim,omitempty"`
}

DataExportSource defines a PVC name and namespace that should be processed.

func (*DataExportSource) DeepCopy added in v1.4.0

func (in *DataExportSource) DeepCopy() *DataExportSource

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

func (*DataExportSource) DeepCopyInto added in v1.4.0

func (in *DataExportSource) DeepCopyInto(out *DataExportSource)

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

type DataExportSpec added in v1.4.0

type DataExportSpec struct {
	Type        DataExportType        `json:"type,omitempty"`
	ClusterPair string                `json:"clusterPair,omitempty"`
	Source      DataExportSource      `json:"source,omitempty"`
	Destination DataExportDestination `json:"destination,omitempty"`
}

DataExportSpec defines configuration parameters for DataExport.

func (*DataExportSpec) DeepCopy added in v1.4.0

func (in *DataExportSpec) DeepCopy() *DataExportSpec

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

func (*DataExportSpec) DeepCopyInto added in v1.4.0

func (in *DataExportSpec) DeepCopyInto(out *DataExportSpec)

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

type DataExportStage added in v1.4.0

type DataExportStage string

DataExportStage defines different stages for DataExport when its Status changes from Initial to Failed/Successful.

const (
	// DataExportStageInitial is the starting point for DataExport.
	DataExportStageInitial DataExportStage = "Initial"
	// DataExportStageSnapshotScheduled if a driver support this stage, it means a snapshot
	// is being taken of the source PVC which will be used to transfer data with rsync.
	DataExportStageSnapshotScheduled DataExportStage = "SnapshotScheduled"
	// DataExportStageSnapshotInProgress if a driver supports this stage, it means a data
	// is processing.
	DataExportStageSnapshotInProgress DataExportStage = "SnapshotInProgress"
	// DataExportStageTransferScheduled when the rsync daemon and pod are currently being
	// scheduled by Kubernetes.
	DataExportStageTransferScheduled DataExportStage = "TransferScheduled"
	// DataExportStageTransferInProgress when rsync is in progress and is transferring data
	// between the two PVCs.
	DataExportStageTransferInProgress DataExportStage = "TransferInProgress"
	// DataExportStageFinal when rsync is completed.
	DataExportStageFinal DataExportStage = "Final"
)

type DataExportStatus added in v1.4.0

type DataExportStatus string

DataExportStatus defines a status of DataExport.

const (
	// DataExportStatusInitial is the initial status of DataExport. It indicates
	// that a volume export request has been received.
	DataExportStatusInitial DataExportStatus = "Initial"
	// DataExportStatusPending when data export is pending and not started yet.
	DataExportStatusPending DataExportStatus = "Pending"
	// DataExportStatusInProgress when data is being transferred.
	DataExportStatusInProgress DataExportStatus = "InProgress"
	// DataExportStatusFailed when data transfer is failed.
	DataExportStatusFailed DataExportStatus = "Failed"
	// DataExportStatusSuccessful when data has been transferred.
	DataExportStatusSuccessful DataExportStatus = "Successful"
)

type DataExportType added in v1.4.0

type DataExportType string

DataExportType defines a method of achieving data transfer.

const (
	// DataExportRsync means that data will be copied between two PVCs directly.
	// Rsync supports both local and remote file copy.
	DataExportRsync DataExportType = "rsync"
)

type ExportStatus added in v1.4.0

type ExportStatus struct {
	Stage              DataExportStage  `json:"stage,omitempty"`
	Status             DataExportStatus `json:"status,omitempty"`
	Reason             string           `json:"reason,omitempty"`
	ProgressPercentage int              `json:"progressPercentage,omitempty"`
}

ExportStatus indicates a current state of the data transfer.

func (*ExportStatus) DeepCopy added in v1.4.0

func (in *ExportStatus) DeepCopy() *ExportStatus

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

func (*ExportStatus) DeepCopyInto added in v1.4.0

func (in *ExportStatus) DeepCopyInto(out *ExportStatus)

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

type GoogleConfig added in v1.4.0

type GoogleConfig struct {
	ProjectID  string `json:"projectID"`
	AccountKey string `json:"accountKey"`
}

GoogleConfig specifies the config required to connect to Google Cloud Storage

func (*GoogleConfig) DeepCopy added in v1.4.0

func (in *GoogleConfig) DeepCopy() *GoogleConfig

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

func (*GoogleConfig) DeepCopyInto added in v1.4.0

func (in *GoogleConfig) DeepCopyInto(out *GoogleConfig)

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

type GroupVolumeSnapshot added in v1.4.0

type GroupVolumeSnapshot struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            GroupVolumeSnapshotSpec   `json:"spec"`
	Status          GroupVolumeSnapshotStatus `json:"status"`
}

GroupVolumeSnapshot represents a group snapshot

func (*GroupVolumeSnapshot) DeepCopy added in v1.4.0

func (in *GroupVolumeSnapshot) DeepCopy() *GroupVolumeSnapshot

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

func (*GroupVolumeSnapshot) DeepCopyInto added in v1.4.0

func (in *GroupVolumeSnapshot) DeepCopyInto(out *GroupVolumeSnapshot)

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

func (*GroupVolumeSnapshot) DeepCopyObject added in v1.4.0

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

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

type GroupVolumeSnapshotList added in v1.4.0

type GroupVolumeSnapshotList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []GroupVolumeSnapshot `json:"items"`
}

GroupVolumeSnapshotList is a list of group volume snapshots

func (*GroupVolumeSnapshotList) DeepCopy added in v1.4.0

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

func (*GroupVolumeSnapshotList) DeepCopyInto added in v1.4.0

func (in *GroupVolumeSnapshotList) DeepCopyInto(out *GroupVolumeSnapshotList)

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

func (*GroupVolumeSnapshotList) DeepCopyObject added in v1.4.0

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

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

type GroupVolumeSnapshotSpec added in v1.4.0

type GroupVolumeSnapshotSpec struct {
	// PreExecRule is the name of rule applied before taking the snapshot. The rule needs to be
	// in the same namespace as the group volumesnapshot
	PreExecRule string `json:"preExecRule"`
	// PreExecRule is the name of rule applied after taking the snapshot. The rule needs to be
	// in the same namespace as the group volumesnapshot
	PostExecRule string `json:"postExecRule"`
	// PVCSelector selects the PVCs that are part of the group snapshot
	PVCSelector PVCSelectorSpec `json:"pvcSelector"`
	// RestoreNamespaces is a list of namespaces to which the snapshots can be restored to
	RestoreNamespaces []string `json:"restoreNamespaces"`
	// MaxRetries is the number of times to retry the groupvolumesnapshot on failure. default: 0
	MaxRetries int `json:"maxRetries"`
	// Options are pass-through parameters that are passed to the driver handling the group snapshot
	Options map[string]string `json:"options"`
}

GroupVolumeSnapshotSpec represents the spec for a group snapshot

func (*GroupVolumeSnapshotSpec) DeepCopy added in v1.4.0

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

func (*GroupVolumeSnapshotSpec) DeepCopyInto added in v1.4.0

func (in *GroupVolumeSnapshotSpec) DeepCopyInto(out *GroupVolumeSnapshotSpec)

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

type GroupVolumeSnapshotStageType added in v1.4.0

type GroupVolumeSnapshotStageType string

GroupVolumeSnapshotStageType is the stage of the group snapshot

const (
	// GroupSnapshotStageInitial is when the group snapshot is just created
	GroupSnapshotStageInitial GroupVolumeSnapshotStageType = ""
	// GroupSnapshotStagePreChecks is when the group snapshot is going through prechecks
	GroupSnapshotStagePreChecks GroupVolumeSnapshotStageType = "PreChecks"
	// GroupSnapshotStagePreSnapshot is when the pre-snapshot rule is executing for the group snapshot
	GroupSnapshotStagePreSnapshot GroupVolumeSnapshotStageType = "PreSnapshot"
	// GroupSnapshotStageSnapshot is when the snapshots are being taken for the group snapshot
	GroupSnapshotStageSnapshot GroupVolumeSnapshotStageType = "Snapshot"
	// GroupSnapshotStagePostSnapshot is when the post-snapshot rule is executing for the group snapshot
	GroupSnapshotStagePostSnapshot GroupVolumeSnapshotStageType = "PostSnapshot"
	// GroupSnapshotStageFinal is when all stages are done for the group snapshot
	GroupSnapshotStageFinal GroupVolumeSnapshotStageType = "Final"
)

type GroupVolumeSnapshotStatus added in v1.4.0

type GroupVolumeSnapshotStatus struct {
	Stage           GroupVolumeSnapshotStageType  `json:"stage"`
	Status          GroupVolumeSnapshotStatusType `json:"status"`
	NumRetries      int                           `json:"numRetries"`
	VolumeSnapshots []*VolumeSnapshotStatus       `json:"volumeSnapshots"`
}

GroupVolumeSnapshotStatus is status for the group snapshot

func (*GroupVolumeSnapshotStatus) DeepCopy added in v1.4.0

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

func (*GroupVolumeSnapshotStatus) DeepCopyInto added in v1.4.0

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

type GroupVolumeSnapshotStatusType added in v1.4.0

type GroupVolumeSnapshotStatusType string

GroupVolumeSnapshotStatusType is types of statuses of a group snapshot operation

const (
	// GroupSnapshotInitial is when the group snapshot is created and no action has yet been performed
	GroupSnapshotInitial GroupVolumeSnapshotStatusType = ""
	// GroupSnapshotPending is when the group snapshot is in pending state waiting for another event
	GroupSnapshotPending GroupVolumeSnapshotStatusType = "Pending"
	// GroupSnapshotInProgress is when the group snapshot is in progress
	GroupSnapshotInProgress GroupVolumeSnapshotStatusType = "InProgress"
	// GroupSnapshotFailed is when the group snapshot has failed
	GroupSnapshotFailed GroupVolumeSnapshotStatusType = "Failed"
	// GroupSnapshotSuccessful is when the group snapshot has succeeded
	GroupSnapshotSuccessful GroupVolumeSnapshotStatusType = "Successful"
)

type IntervalPolicy added in v1.4.0

type IntervalPolicy struct {
	IntervalMinutes int `json:"intervalMinutes"`
	// Retain Number of objects to retain for interval policy. Defaults to
	// @DefaultIntervalPolicyRetain
	Retain Retain `json:"retain"`
	// Options to be passed in to the driver. These will be passed in
	// to the object being triggered
	Options map[string]string `json:"options"`
}

IntervalPolicy contains the interval at which an action should be triggered

func (*IntervalPolicy) DeepCopy added in v1.4.0

func (in *IntervalPolicy) DeepCopy() *IntervalPolicy

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

func (*IntervalPolicy) DeepCopyInto added in v1.4.0

func (in *IntervalPolicy) DeepCopyInto(out *IntervalPolicy)

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

func (*IntervalPolicy) Validate added in v1.4.0

func (i *IntervalPolicy) Validate() error

Validate validates an IntervalPolicy

type Migration added in v1.4.0

type Migration struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            MigrationSpec   `json:"spec"`
	Status          MigrationStatus `json:"status"`
}

Migration represents migration status

func (*Migration) DeepCopy added in v1.4.0

func (in *Migration) DeepCopy() *Migration

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

func (*Migration) DeepCopyInto added in v1.4.0

func (in *Migration) DeepCopyInto(out *Migration)

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

func (*Migration) DeepCopyObject added in v1.4.0

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

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

type MigrationList added in v1.4.0

type MigrationList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []Migration `json:"items"`
}

MigrationList is a list of Migrations

func (*MigrationList) DeepCopy added in v1.4.0

func (in *MigrationList) DeepCopy() *MigrationList

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

func (*MigrationList) DeepCopyInto added in v1.4.0

func (in *MigrationList) DeepCopyInto(out *MigrationList)

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

func (*MigrationList) DeepCopyObject added in v1.4.0

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

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

type MigrationResourceInfo added in v1.4.0

type MigrationResourceInfo struct {
	Name                  string `json:"name"`
	Namespace             string `json:"namespace"`
	meta.GroupVersionKind `json:",inline"`
	Status                MigrationStatusType `json:"status"`
	Reason                string              `json:"reason"`
}

MigrationResourceInfo is the info for the migration of a resource

func (*MigrationResourceInfo) DeepCopy added in v1.4.0

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

func (*MigrationResourceInfo) DeepCopyInto added in v1.4.0

func (in *MigrationResourceInfo) DeepCopyInto(out *MigrationResourceInfo)

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

type MigrationSchedule added in v1.4.0

type MigrationSchedule struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            MigrationScheduleSpec   `json:"spec"`
	Status          MigrationScheduleStatus `json:"status"`
}

MigrationSchedule represents a scheduled migration object

func (*MigrationSchedule) DeepCopy added in v1.4.0

func (in *MigrationSchedule) DeepCopy() *MigrationSchedule

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

func (*MigrationSchedule) DeepCopyInto added in v1.4.0

func (in *MigrationSchedule) DeepCopyInto(out *MigrationSchedule)

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

func (*MigrationSchedule) DeepCopyObject added in v1.4.0

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

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

type MigrationScheduleList added in v1.4.0

type MigrationScheduleList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []MigrationSchedule `json:"items"`
}

MigrationScheduleList is a list of MigrationSchedules

func (*MigrationScheduleList) DeepCopy added in v1.4.0

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

func (*MigrationScheduleList) DeepCopyInto added in v1.4.0

func (in *MigrationScheduleList) DeepCopyInto(out *MigrationScheduleList)

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

func (*MigrationScheduleList) DeepCopyObject added in v1.4.0

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

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

type MigrationScheduleSpec added in v1.4.0

type MigrationScheduleSpec struct {
	Template           MigrationTemplateSpec `json:"template"`
	SchedulePolicyName string                `json:"schedulePolicyName"`
	Suspend            *bool                 `json:"suspend"`
}

MigrationScheduleSpec is the spec used to schedule migrations

func (*MigrationScheduleSpec) DeepCopy added in v1.4.0

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

func (*MigrationScheduleSpec) DeepCopyInto added in v1.4.0

func (in *MigrationScheduleSpec) DeepCopyInto(out *MigrationScheduleSpec)

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

type MigrationScheduleStatus added in v1.4.0

type MigrationScheduleStatus struct {
	Items map[SchedulePolicyType][]*ScheduledMigrationStatus `json:"items"`
}

MigrationScheduleStatus is the status of a migration schedule

func (*MigrationScheduleStatus) DeepCopy added in v1.4.0

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

func (*MigrationScheduleStatus) DeepCopyInto added in v1.4.0

func (in *MigrationScheduleStatus) DeepCopyInto(out *MigrationScheduleStatus)

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

type MigrationSpec added in v1.4.0

type MigrationSpec struct {
	ClusterPair                  string            `json:"clusterPair"`
	AdminClusterPair             string            `json:"adminClusterPair"`
	Namespaces                   []string          `json:"namespaces"`
	IncludeResources             *bool             `json:"includeResources"`
	IncludeVolumes               *bool             `json:"includeVolumes"`
	StartApplications            *bool             `json:"startApplications"`
	PurgeDeletedResources        *bool             `json:"purgeDeletedResources"`
	Selectors                    map[string]string `json:"selectors"`
	PreExecRule                  string            `json:"preExecRule"`
	PostExecRule                 string            `json:"postExecRule"`
	IncludeOptionalResourceTypes []string          `json:"includeOptionalResourceTypes"`
}

MigrationSpec is the spec used to migrate apps between clusterpairs

func (*MigrationSpec) DeepCopy added in v1.4.0

func (in *MigrationSpec) DeepCopy() *MigrationSpec

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

func (*MigrationSpec) DeepCopyInto added in v1.4.0

func (in *MigrationSpec) DeepCopyInto(out *MigrationSpec)

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

type MigrationStageType added in v1.4.0

type MigrationStageType string

MigrationStageType is the stage of the migration

const (
	// MigrationStageInitial for when migration is created
	MigrationStageInitial MigrationStageType = ""
	// MigrationStagePreExecRule for when the PreExecRule is being executed
	MigrationStagePreExecRule MigrationStageType = "PreExecRule"
	// MigrationStagePostExecRule for when the PostExecRule is being executed
	MigrationStagePostExecRule MigrationStageType = "PostExecRule"
	// MigrationStageVolumes for when volumes are being migrated
	MigrationStageVolumes MigrationStageType = "Volumes"
	// MigrationStageApplications for when applications are being migrated
	MigrationStageApplications MigrationStageType = "Applications"
	// MigrationStageFinal is the final stage for migration
	MigrationStageFinal MigrationStageType = "Final"
)

type MigrationStatus added in v1.4.0

type MigrationStatus struct {
	Stage           MigrationStageType       `json:"stage"`
	Status          MigrationStatusType      `json:"status"`
	Resources       []*MigrationResourceInfo `json:"resources"`
	Volumes         []*MigrationVolumeInfo   `json:"volumes"`
	FinishTimestamp meta.Time                `json:"finishTimestamp"`
}

MigrationStatus is the status of a migration operation

func (*MigrationStatus) DeepCopy added in v1.4.0

func (in *MigrationStatus) DeepCopy() *MigrationStatus

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

func (*MigrationStatus) DeepCopyInto added in v1.4.0

func (in *MigrationStatus) DeepCopyInto(out *MigrationStatus)

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

type MigrationStatusType added in v1.4.0

type MigrationStatusType string

MigrationStatusType is the status of the migration

const (
	// MigrationStatusInitial is the initial state when migration is created
	MigrationStatusInitial MigrationStatusType = ""
	// MigrationStatusPending for when migration is still pending
	MigrationStatusPending MigrationStatusType = "Pending"
	// MigrationStatusInProgress for when migration is in progress
	MigrationStatusInProgress MigrationStatusType = "InProgress"
	// MigrationStatusFailed for when migration has failed
	MigrationStatusFailed MigrationStatusType = "Failed"
	// MigrationStatusPartialSuccess for when migration was partially successful
	MigrationStatusPartialSuccess MigrationStatusType = "PartialSuccess"
	// MigrationStatusSuccessful for when migration has completed successfully
	MigrationStatusSuccessful MigrationStatusType = "Successful"
	// MigrationStatusPurged for when migration objects has been deleted
	MigrationStatusPurged MigrationStatusType = "Purged"
)

type MigrationTemplateSpec added in v1.4.0

type MigrationTemplateSpec struct {
	Spec MigrationSpec `json:"spec"`
}

MigrationTemplateSpec describes the data a Migration should have when created from a template

func (*MigrationTemplateSpec) DeepCopy added in v1.4.0

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

func (*MigrationTemplateSpec) DeepCopyInto added in v1.4.0

func (in *MigrationTemplateSpec) DeepCopyInto(out *MigrationTemplateSpec)

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

type MigrationVolumeInfo added in v1.4.0

type MigrationVolumeInfo struct {
	PersistentVolumeClaim string              `json:"persistentVolumeClaim"`
	Namespace             string              `json:"namespace"`
	Volume                string              `json:"volume"`
	Status                MigrationStatusType `json:"status"`
	Reason                string              `json:"reason"`
}

MigrationVolumeInfo is the info for the migration of a volume

func (*MigrationVolumeInfo) DeepCopy added in v1.4.0

func (in *MigrationVolumeInfo) DeepCopy() *MigrationVolumeInfo

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

func (*MigrationVolumeInfo) DeepCopyInto added in v1.4.0

func (in *MigrationVolumeInfo) DeepCopyInto(out *MigrationVolumeInfo)

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

type MonthlyPolicy added in v1.4.0

type MonthlyPolicy struct {
	// Date of the month when the policy should be triggered. If a given date
	// doesn't exist in a month it'll rollover to the next date of the month.
	// For example if 31 is specified, it'll trigger on either 1st or 2nd March
	// depending on if it is a leap year.
	Date int `json:"date"`
	// Time when the policy should be triggered. Expected format is
	// time.Kitchen eg 12:04PM or 12:04pm
	Time string `json:"time"`
	// Retain Number of objects to retain for monthly policy. Defaults to
	// @DefaultMonthlyPolicyRetain
	Retain Retain `json:"retain"`
	// Options to be passed in to the driver. These will be passed in
	// to the object being triggered
	Options map[string]string `json:"options"`
}

MonthlyPolicy contains the date and time in a month when an action should be executed

func (*MonthlyPolicy) DeepCopy added in v1.4.0

func (in *MonthlyPolicy) DeepCopy() *MonthlyPolicy

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

func (*MonthlyPolicy) DeepCopyInto added in v1.4.0

func (in *MonthlyPolicy) DeepCopyInto(out *MonthlyPolicy)

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

func (*MonthlyPolicy) GetHourMinute added in v1.4.0

func (m *MonthlyPolicy) GetHourMinute() (int, int, error)

GetHourMinute parses and return the hour and minute specified in the policy

func (*MonthlyPolicy) Validate added in v1.4.0

func (m *MonthlyPolicy) Validate() error

Validate validates a MonthlyPolicy

type ObjectInfo added in v1.4.0

type ObjectInfo struct {
	Name                    string `json:"name"`
	Namespace               string `json:"namespace"`
	metav1.GroupVersionKind `json:",inline"`
}

ObjectInfo contains info about an object being backed up or restored

func (*ObjectInfo) DeepCopy added in v1.4.0

func (in *ObjectInfo) DeepCopy() *ObjectInfo

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

func (*ObjectInfo) DeepCopyInto added in v1.4.0

func (in *ObjectInfo) DeepCopyInto(out *ObjectInfo)

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

type PVCSelectorSpec added in v1.4.0

type PVCSelectorSpec struct {
	meta.LabelSelector
}

PVCSelectorSpec is the spec to select the PVCs for group snapshot

func (*PVCSelectorSpec) DeepCopy added in v1.4.0

func (in *PVCSelectorSpec) DeepCopy() *PVCSelectorSpec

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

func (*PVCSelectorSpec) DeepCopyInto added in v1.4.0

func (in *PVCSelectorSpec) DeepCopyInto(out *PVCSelectorSpec)

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

type ReclaimPolicyType added in v1.4.0

type ReclaimPolicyType string

ReclaimPolicyType is the type of reclaim policy

const (
	// ReclaimPolicyInvalid is an invalid schedule policy
	ReclaimPolicyInvalid ReclaimPolicyType = "Invalid"
	// ReclaimPolicyDelete is to specify that an object should be deleted
	ReclaimPolicyDelete ReclaimPolicyType = "Delete"
	// ReclaimPolicyRetain is to specify that an object should be retained
	ReclaimPolicyRetain ReclaimPolicyType = "Retain"
)

type RestoreVolumeInfo added in v1.4.0

type RestoreVolumeInfo struct {
	Volume        string                          `json:"volume"`
	PVC           string                          `json:"pvc"`
	Namespace     string                          `json:"namespace"`
	Snapshot      string                          `json:"snapshot"`
	RestoreStatus VolumeSnapshotRestoreStatusType `json:"status"`
	Reason        string                          `json:"reason"`
}

RestoreVolumeInfo is the info for the restore of a volume

func (*RestoreVolumeInfo) DeepCopy added in v1.4.0

func (in *RestoreVolumeInfo) DeepCopy() *RestoreVolumeInfo

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

func (*RestoreVolumeInfo) DeepCopyInto added in v1.4.0

func (in *RestoreVolumeInfo) DeepCopyInto(out *RestoreVolumeInfo)

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

type Retain added in v1.4.0

type Retain int

Retain Type to specify how many objects should be retained for a policy

type Rule

type Rule struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Rules           []RuleItem `json:"rules"`
}

Rule denotes an object to declare a rule that performs actions on pods

func (*Rule) DeepCopy

func (in *Rule) DeepCopy() *Rule

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

func (*Rule) DeepCopyInto

func (in *Rule) DeepCopyInto(out *Rule)

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

func (*Rule) DeepCopyObject

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

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

type RuleAction

type RuleAction struct {
	// Type is a type of the stork rule action
	Type RuleActionType `json:"type"`
	// Background indicates that the action needs to be performed in the background
	// +optional
	Background bool `json:"background,omitempty"`
	// RunInSinglePod indicates that the action needs to be performed in a single pod
	//                from the list of pods that match the selector
	// +optional
	RunInSinglePod bool `json:"runInSinglePod,omitempty"`
	// Value is the actual action value for e.g the command to run
	Value string `json:"value"`
}

RuleAction represents an action in a stork rule item

func (*RuleAction) DeepCopy

func (in *RuleAction) DeepCopy() *RuleAction

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

func (*RuleAction) DeepCopyInto

func (in *RuleAction) DeepCopyInto(out *RuleAction)

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

type RuleActionType

type RuleActionType string

RuleActionType is a type for actions that are supported in a stork rule

const (
	// RuleActionCommand is a command action
	RuleActionCommand RuleActionType = "command"
)

type RuleItem

type RuleItem struct {
	// PodSelector is a map of key value pairs that are used to select the pods using their labels
	PodSelector map[string]string `json:"podSelector"`
	// Container Name of the container in which to run the rule if there are
	// multiple containers in the pod
	Container string `json:"container"`
	// Actions are actions to be performed on the pods selected using the selector
	Actions []RuleAction `json:"actions"`
}

RuleItem represents one items in a stork rule spec

func (*RuleItem) DeepCopy

func (in *RuleItem) DeepCopy() *RuleItem

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

func (*RuleItem) DeepCopyInto

func (in *RuleItem) DeepCopyInto(out *RuleItem)

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

type RuleList

type RuleList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []Rule `json:"items"`
}

RuleList is a list of stork rules

func (*RuleList) DeepCopy

func (in *RuleList) DeepCopy() *RuleList

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

func (*RuleList) DeepCopyInto

func (in *RuleList) DeepCopyInto(out *RuleList)

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

func (*RuleList) DeepCopyObject

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

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

type S3Config added in v1.4.0

type S3Config struct {
	// Endpoint will be defaulted to s3.amazonaws.com by the controller if not provided
	Endpoint        string `json:"endpoint"`
	AccessKeyID     string `json:"accessKeyID"`
	SecretAccessKey string `json:"secretAccessKey"`
	// Region will be defaulted to us-east-1 by the controller if not provided
	Region string `json:"region"`
	// Disable SSL option if using with a non-AWS S3 objectstore which doesn't
	// have SSL enabled
	DisableSSL bool `json:"disableSSL"`
	// The S3 Storage Class to use when uploading objects. Glacier storage
	// classes are not supported
	StorageClass string `json:"storageClass"`
}

S3Config speficies the config required to connect to an S3-compliant objectstore

func (*S3Config) DeepCopy added in v1.4.0

func (in *S3Config) DeepCopy() *S3Config

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

func (*S3Config) DeepCopyInto added in v1.4.0

func (in *S3Config) DeepCopyInto(out *S3Config)

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

type SchedulePolicy added in v1.4.0

type SchedulePolicy struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	// Policy
	Policy SchedulePolicyItem `json:"policy"`
}

SchedulePolicy represents a policy for executing actions on a schedule

func (*SchedulePolicy) DeepCopy added in v1.4.0

func (in *SchedulePolicy) DeepCopy() *SchedulePolicy

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

func (*SchedulePolicy) DeepCopyInto added in v1.4.0

func (in *SchedulePolicy) DeepCopyInto(out *SchedulePolicy)

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

func (*SchedulePolicy) DeepCopyObject added in v1.4.0

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

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

type SchedulePolicyItem added in v1.4.0

type SchedulePolicyItem struct {
	// Interval policy that will be triggered at the specified interval
	Interval *IntervalPolicy `json:"interval"`
	// Daily policy that will be triggered daily at a specified time
	Daily *DailyPolicy `json:"daily"`
	// Weekly policy that will be triggered on the specified day of the week at
	// the specified time
	Weekly *WeeklyPolicy `json:"weekly"`
	// Monthly policy that will be triggered on the specified date of the month
	// at the specified time
	Monthly *MonthlyPolicy `json:"monthly"`
}

SchedulePolicyItem represents the schedule for executing an action

func (*SchedulePolicyItem) DeepCopy added in v1.4.0

func (in *SchedulePolicyItem) DeepCopy() *SchedulePolicyItem

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

func (*SchedulePolicyItem) DeepCopyInto added in v1.4.0

func (in *SchedulePolicyItem) DeepCopyInto(out *SchedulePolicyItem)

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

type SchedulePolicyList added in v1.4.0

type SchedulePolicyList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []SchedulePolicy `json:"items"`
}

SchedulePolicyList is a list of schedule policies

func (*SchedulePolicyList) DeepCopy added in v1.4.0

func (in *SchedulePolicyList) DeepCopy() *SchedulePolicyList

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

func (*SchedulePolicyList) DeepCopyInto added in v1.4.0

func (in *SchedulePolicyList) DeepCopyInto(out *SchedulePolicyList)

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

func (*SchedulePolicyList) DeepCopyObject added in v1.4.0

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

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

type SchedulePolicyType added in v1.4.0

type SchedulePolicyType string

SchedulePolicyType is the type of schedule policy

const (
	// SchedulePolicyTypeInvalid is an invalid schedule policy
	SchedulePolicyTypeInvalid SchedulePolicyType = "Invalid"
	// SchedulePolicyTypeInterval is the type for an interval schedule policy
	SchedulePolicyTypeInterval SchedulePolicyType = "Interval"
	// SchedulePolicyTypeDaily is the type for a daily schedule policy
	SchedulePolicyTypeDaily SchedulePolicyType = "Daily"
	// SchedulePolicyTypeWeekly is the type for a weekly schedule policy
	SchedulePolicyTypeWeekly SchedulePolicyType = "Weekly"
	// SchedulePolicyTypeMonthly is the type for a monthly schedule policy
	SchedulePolicyTypeMonthly SchedulePolicyType = "Monthly"
)

func GetValidSchedulePolicyTypes added in v1.4.0

func GetValidSchedulePolicyTypes() []SchedulePolicyType

GetValidSchedulePolicyTypes returns the valid types of schedule policies that can be configured

type ScheduledApplicationBackupStatus added in v1.4.0

type ScheduledApplicationBackupStatus struct {
	Name              string                      `json:"name"`
	CreationTimestamp meta.Time                   `json:"creationTimestamp"`
	FinishTimestamp   meta.Time                   `json:"finishTimestamp"`
	Status            ApplicationBackupStatusType `json:"status"`
}

ScheduledApplicationBackupStatus keeps track of the applicationbackup that was triggered by a scheduled policy

func (*ScheduledApplicationBackupStatus) DeepCopy added in v1.4.0

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

func (*ScheduledApplicationBackupStatus) DeepCopyInto added in v1.4.0

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

type ScheduledMigrationStatus added in v1.4.0

type ScheduledMigrationStatus struct {
	Name              string              `json:"name"`
	CreationTimestamp meta.Time           `json:"creationTimestamp"`
	FinishTimestamp   meta.Time           `json:"finishTimestamp"`
	Status            MigrationStatusType `json:"status"`
}

ScheduledMigrationStatus keeps track of the migration that was triggered by a scheduled policy

func (*ScheduledMigrationStatus) DeepCopy added in v1.4.0

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

func (*ScheduledMigrationStatus) DeepCopyInto added in v1.4.0

func (in *ScheduledMigrationStatus) DeepCopyInto(out *ScheduledMigrationStatus)

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

type ScheduledVolumeSnapshotStatus added in v1.4.0

type ScheduledVolumeSnapshotStatus struct {
	Name              string                             `json:"name"`
	CreationTimestamp meta.Time                          `json:"creationTimestamp"`
	FinishTimestamp   meta.Time                          `json:"finishTimestamp"`
	Status            snapv1.VolumeSnapshotConditionType `json:"status"`
}

ScheduledVolumeSnapshotStatus keeps track of the volumesnapshot that was triggered by a scheduled policy

func (*ScheduledVolumeSnapshotStatus) DeepCopy added in v1.4.0

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

func (*ScheduledVolumeSnapshotStatus) DeepCopyInto added in v1.4.0

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

type SuspendOptions added in v1.4.0

type SuspendOptions struct {
	Path  string `json:"path"`
	Type  string `json:"type"`
	Value string `json:"value"`
}

SuspendOptions to disable CRD upon migration/restore/clone

func (*SuspendOptions) DeepCopy added in v1.4.0

func (in *SuspendOptions) DeepCopy() *SuspendOptions

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

func (*SuspendOptions) DeepCopyInto added in v1.4.0

func (in *SuspendOptions) DeepCopyInto(out *SuspendOptions)

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

type VolumeSnapshotRestore added in v1.4.0

type VolumeSnapshotRestore struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            VolumeSnapshotRestoreSpec   `json:"spec"`
	Status          VolumeSnapshotRestoreStatus `json:"status"`
}

VolumeSnapshotRestore crd spec for in-place restore of volume

func (*VolumeSnapshotRestore) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotRestore) DeepCopyInto added in v1.4.0

func (in *VolumeSnapshotRestore) DeepCopyInto(out *VolumeSnapshotRestore)

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

func (*VolumeSnapshotRestore) DeepCopyObject added in v1.4.0

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

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

type VolumeSnapshotRestoreList added in v1.4.0

type VolumeSnapshotRestoreList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []VolumeSnapshotRestore `json:"items"`
}

VolumeSnapshotRestoreList is list of snapshot restores

func (*VolumeSnapshotRestoreList) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotRestoreList) DeepCopyInto added in v1.4.0

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

func (*VolumeSnapshotRestoreList) DeepCopyObject added in v1.4.0

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

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

type VolumeSnapshotRestoreSpec added in v1.4.0

type VolumeSnapshotRestoreSpec struct {
	// SourceName of snapshot
	SourceName string `json:"sourceName"`
	// SourceNameSpace is snapshot namespace
	SourceNamespace string `json:"sourceNamespace"`
	// GroupSnapshot true if snapshot volumegroupsnapshot
	GroupSnapshot bool `json:"groupSnapshot"`
	// DestinationPVC list to restore snapshot
	DestinationPVC map[string]string `json:"pvcs,omitempty"`
}

VolumeSnapshotRestoreSpec for in-place volume restore

func (*VolumeSnapshotRestoreSpec) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotRestoreSpec) DeepCopyInto added in v1.4.0

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

type VolumeSnapshotRestoreStatus added in v1.4.0

type VolumeSnapshotRestoreStatus struct {
	// Status of volume restore
	Status VolumeSnapshotRestoreStatusType `json:"status"`
	// Volumes list of volume restore information
	Volumes []*RestoreVolumeInfo `json:"volumes"`
}

VolumeSnapshotRestoreStatus of volume

func (*VolumeSnapshotRestoreStatus) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotRestoreStatus) DeepCopyInto added in v1.4.0

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

type VolumeSnapshotRestoreStatusType added in v1.4.0

type VolumeSnapshotRestoreStatusType string

VolumeSnapshotRestoreStatusType is the status of volume in-place restore

const (
	// VolumeSnapshotRestoreStatusInitial is the initial state when snapshot restore is initiated
	VolumeSnapshotRestoreStatusInitial VolumeSnapshotRestoreStatusType = ""
	// VolumeSnapshotRestoreStatusPending for when restore is in pending state
	VolumeSnapshotRestoreStatusPending VolumeSnapshotRestoreStatusType = "Pending"
	// VolumeSnapshotRestoreStatusStaged for when restore has been staged locally
	VolumeSnapshotRestoreStatusStaged VolumeSnapshotRestoreStatusType = "Staged"
	// VolumeSnapshotRestoreStatusSuccessful for when restore is completed
	VolumeSnapshotRestoreStatusSuccessful VolumeSnapshotRestoreStatusType = "Successful"
	// VolumeSnapshotRestoreStatusInProgress for when restore is in progress
	VolumeSnapshotRestoreStatusInProgress VolumeSnapshotRestoreStatusType = "InProgress"
	// VolumeSnapshotRestoreStatusFailed for when restore failed
	VolumeSnapshotRestoreStatusFailed VolumeSnapshotRestoreStatusType = "Failed"
)

type VolumeSnapshotSchedule added in v1.4.0

type VolumeSnapshotSchedule struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            VolumeSnapshotScheduleSpec   `json:"spec"`
	Status          VolumeSnapshotScheduleStatus `json:"status"`
}

VolumeSnapshotSchedule represents a scheduled volumesnapshot object

func (*VolumeSnapshotSchedule) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotSchedule) DeepCopyInto added in v1.4.0

func (in *VolumeSnapshotSchedule) DeepCopyInto(out *VolumeSnapshotSchedule)

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

func (*VolumeSnapshotSchedule) DeepCopyObject added in v1.4.0

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

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

type VolumeSnapshotScheduleList added in v1.4.0

type VolumeSnapshotScheduleList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`

	Items []VolumeSnapshotSchedule `json:"items"`
}

VolumeSnapshotScheduleList is a list of VolumeSnapshotSchedules

func (*VolumeSnapshotScheduleList) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotScheduleList) DeepCopyInto added in v1.4.0

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

func (*VolumeSnapshotScheduleList) DeepCopyObject added in v1.4.0

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

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

type VolumeSnapshotScheduleSpec added in v1.4.0

type VolumeSnapshotScheduleSpec struct {
	Template           VolumeSnapshotTemplateSpec `json:"template"`
	SchedulePolicyName string                     `json:"schedulePolicyName"`
	Suspend            *bool                      `json:"suspend"`
	ReclaimPolicy      ReclaimPolicyType          `json:"reclaimPolicy"`
	PreExecRule        string                     `json:"preExecRule"`
	PostExecRule       string                     `json:"postExecRule"`
}

VolumeSnapshotScheduleSpec is the spec used to schedule volumesnapshots

func (*VolumeSnapshotScheduleSpec) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotScheduleSpec) DeepCopyInto added in v1.4.0

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

type VolumeSnapshotScheduleStatus added in v1.4.0

type VolumeSnapshotScheduleStatus struct {
	Items map[SchedulePolicyType][]*ScheduledVolumeSnapshotStatus `json:"items"`
}

VolumeSnapshotScheduleStatus is the status of a volumesnapshot schedule

func (*VolumeSnapshotScheduleStatus) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotScheduleStatus) DeepCopyInto added in v1.4.0

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

type VolumeSnapshotStatus added in v1.4.0

type VolumeSnapshotStatus struct {
	VolumeSnapshotName string
	TaskID             string
	ParentVolumeID     string
	DataSource         *crdv1.VolumeSnapshotDataSource
	Conditions         []crdv1.VolumeSnapshotCondition
}

VolumeSnapshotStatus captures the status of a volume snapshot operation

func (*VolumeSnapshotStatus) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotStatus) DeepCopyInto added in v1.4.0

func (in *VolumeSnapshotStatus) DeepCopyInto(out *VolumeSnapshotStatus)

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

type VolumeSnapshotTemplateSpec added in v1.4.0

type VolumeSnapshotTemplateSpec struct {
	Spec snapv1.VolumeSnapshotSpec `json:"spec"`
}

VolumeSnapshotTemplateSpec describes the data a VolumeSnapshot should have when created from a template

func (*VolumeSnapshotTemplateSpec) DeepCopy added in v1.4.0

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

func (*VolumeSnapshotTemplateSpec) DeepCopyInto added in v1.4.0

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

type WeeklyPolicy added in v1.4.0

type WeeklyPolicy struct {
	// Day of the week when the policy should be triggered. Valid format are
	// specified in `Days` above
	Day string `json:"day"`
	// Time when the policy should be triggered. Expected format is
	// time.Kitchen eg 12:04PM or 12:04pm
	Time string `json:"time"`
	// Retain Number of objects to retain for weekly policy. Defaults to
	// @DefaultWeeklyPolicyRetain
	Retain Retain `json:"retain"`
	// Options to be passed in to the driver. These will be passed in
	// to the object being triggered
	Options map[string]string `json:"options"`
}

WeeklyPolicy contains the day and time in a week when an action should be executed

func (*WeeklyPolicy) DeepCopy added in v1.4.0

func (in *WeeklyPolicy) DeepCopy() *WeeklyPolicy

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

func (*WeeklyPolicy) DeepCopyInto added in v1.4.0

func (in *WeeklyPolicy) DeepCopyInto(out *WeeklyPolicy)

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

func (*WeeklyPolicy) GetHourMinute added in v1.4.0

func (w *WeeklyPolicy) GetHourMinute() (int, int, error)

GetHourMinute parses and return the hour and minute specified in the policy

func (*WeeklyPolicy) Validate added in v1.4.0

func (w *WeeklyPolicy) Validate() error

Validate validates a WeeklyPolicy

Jump to

Keyboard shortcuts

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