v1alpha1

package
v0.0.0-alpha Latest Latest
Warning

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

Go to latest
Published: May 13, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the Oracle v1alpha1 API group. +kubebuilder:object:generate=true +groupName=oracle.db.anthosapis.com

Index

Constants

View Source
const (
	// CronAnythingCreatedByLabel is the name of the label used by CronAnything to
	// denote the entity which created the resource.
	CronAnythingCreatedByLabel = "oracle.db.anthosapis.com/created-by"

	// CronAnythingScheduleTimeLabel is the name of the label used by CronAnything
	// to denote the schedule time.
	CronAnythingScheduleTimeLabel = "oracle.db.anthosapis.com/schedule-time"

	// TriggerHistoryMaxLength defines the maximum number of trigger history to
	// keep track of by CronAnything.
	TriggerHistoryMaxLength = 10
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "oracle.db.anthosapis.com", Version: "v1alpha1"}

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

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

Functions

This section is empty.

Types

type Backup

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

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

Backup is the Schema for the backups API.

func (*Backup) DeepCopy

func (in *Backup) DeepCopy() *Backup

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

func (*Backup) DeepCopyInto

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

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

func (*Backup) DeepCopyObject

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

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

type BackupHistoryRecord

type BackupHistoryRecord struct {
	// BackupName is the name of the Backup that gets created.
	// +nullable
	BackupName string `json:"backupName"`

	// CreationTime is the time that the Backup gets created.
	// +nullable
	CreationTime metav1.Time `json:"creationTime"`

	// Phase tells the state of the Backup.
	// +optional
	Phase commonv1alpha1.BackupPhase `json:"phase,omitempty"`
}

BackupHistoryRecord is a historical record of a Backup.

func (*BackupHistoryRecord) DeepCopy

func (in *BackupHistoryRecord) DeepCopy() *BackupHistoryRecord

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

func (*BackupHistoryRecord) DeepCopyInto

func (in *BackupHistoryRecord) DeepCopyInto(out *BackupHistoryRecord)

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

type BackupList

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

BackupList contains a list of Backup.

func (*BackupList) DeepCopy

func (in *BackupList) DeepCopy() *BackupList

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

func (*BackupList) DeepCopyInto

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

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

func (*BackupList) DeepCopyObject

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

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

type BackupRetentionPolicy

type BackupRetentionPolicy struct {
	// BackupRetention is the number of successful backups to keep around.
	// The default is 7.
	// A value of 0 means "do not delete backups based on count". Max of 512
	// allows for ~21 days of hourly backups or ~1.4 years of daily backups.
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=512
	// +optional
	BackupRetention *int32 `json:"backupRetention,omitempty"`
}

BackupRetentionPolicy is a policy used to trigger automatic deletion of backups produced by a particular schedule. Deletion will be triggered by count (keeping a maximum number of backups around).

func (*BackupRetentionPolicy) DeepCopy

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

func (*BackupRetentionPolicy) DeepCopyInto

func (in *BackupRetentionPolicy) DeepCopyInto(out *BackupRetentionPolicy)

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

type BackupSchedule

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

	Spec   BackupScheduleSpec   `json:"spec,omitempty"`
	Status BackupScheduleStatus `json:"status,omitempty"`
}

BackupSchedule is the Schema for the backupschedules API.

func (*BackupSchedule) DeepCopy

func (in *BackupSchedule) DeepCopy() *BackupSchedule

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

func (*BackupSchedule) DeepCopyInto

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

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

func (*BackupSchedule) DeepCopyObject

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

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

type BackupScheduleList

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

BackupScheduleList contains a list of BackupSchedule.

func (*BackupScheduleList) DeepCopy

func (in *BackupScheduleList) DeepCopy() *BackupScheduleList

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

func (*BackupScheduleList) DeepCopyInto

func (in *BackupScheduleList) DeepCopyInto(out *BackupScheduleList)

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

func (*BackupScheduleList) DeepCopyObject

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

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

type BackupScheduleSpec

type BackupScheduleSpec struct {
	// BackupSpec defines the Backup that will be created on the provided schedule.
	BackupSpec BackupSpec `json:"backupSpec"`

	// Schedule is a cron-style expression of the schedule on which Backup will
	// be created. For allowed syntax, see en.wikipedia.org/wiki/Cron and
	// godoc.org/github.com/robfig/cron.
	Schedule string `json:"schedule"`

	// Suspend tells the controller to suspend operations - both creation of new
	// Backup and retention actions. This will not have any effect on backups
	// currently in progress. Default is false.
	// +optional
	Suspend *bool `json:"suspend,omitempty"`

	// StartingDeadlineSeconds is an optional deadline in seconds for starting the
	// backup creation if it misses scheduled time for any reason.
	// The default is 30 seconds.
	// +optional
	StartingDeadlineSeconds *int64 `json:"startingDeadlineSeconds,omitempty"`

	// BackupRetentionPolicy is the policy used to trigger automatic deletion of
	// backups produced from this BackupSchedule.
	// +optional
	BackupRetentionPolicy *BackupRetentionPolicy `json:"backupRetentionPolicy,omitempty"`
}

BackupScheduleSpec defines the desired state of BackupSchedule.

func (*BackupScheduleSpec) DeepCopy

func (in *BackupScheduleSpec) DeepCopy() *BackupScheduleSpec

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

func (*BackupScheduleSpec) DeepCopyInto

func (in *BackupScheduleSpec) DeepCopyInto(out *BackupScheduleSpec)

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

type BackupScheduleStatus

type BackupScheduleStatus struct {
	// LastBackupTime is the time the last Backup was created for this
	// BackupSchedule.
	// +optional
	// +nullable
	LastBackupTime *metav1.Time `json:"lastBackupTime,omitempty"`

	// Conditions of the BackupSchedule.
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// BackupTotal stores the total number of current existing backups created
	// by this backupSchedule.
	BackupTotal *int32 `json:"backupTotal,omitempty"`

	// BackupHistory stores the records for up to 7 of the latest backups.
	// +optional
	BackupHistory []BackupHistoryRecord `json:"backupHistory,omitempty"`
}

BackupScheduleStatus defines the observed state of BackupSchedule.

func (*BackupScheduleStatus) DeepCopy

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

func (*BackupScheduleStatus) DeepCopyInto

func (in *BackupScheduleStatus) DeepCopyInto(out *BackupScheduleStatus)

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

type BackupSpec

type BackupSpec struct {
	// Backup specs that are common across all database engines.
	commonv1alpha1.BackupSpec `json:",inline"`

	// Backup sub-type, which is only relevant for a Physical backup type
	// (e.g. RMAN). If omitted, the default of Instance(Level) is assumed.
	// Supported options at this point are: Instance or Database level backups.
	// +kubebuilder:validation:Enum=Instance;Database;Tablespace;Datafile
	// +optional
	Subtype string `json:"subType,omitempty"`

	// VolumeSnapshotClass points to a particular CSI driver and is used
	// for taking a volume snapshot. If requested here at the Backup
	// level, this setting overrides the platform default as well
	// as the default set via the Config (global user preferences).
	VolumeSnapshotClass string `json:"volumeSnapshotClass,omitempty"`

	// For a Physical backup this slice can be used to indicate what
	// PDBs, schemas, tablespaces or tables to back up.
	// +optional
	BackupItems []string `json:"backupItems,omitempty"`

	// For a Physical backup the choices are Backupset and Image Copies.
	// Backupset is the default, but if Image Copies are required,
	// flip this flag to false.
	// +optional
	Backupset *bool `json:"backupset,omitempty"`

	// For a Physical backup, optionally turn on compression,
	// by flipping this flag to true. The default is false.
	Compressed bool `json:"compressed,omitempty"`

	// For a Physical backup, optionally turn on an additional "check
	// logical" option. The default is off.
	// +optional
	CheckLogical bool `json:"checkLogical,omitempty"`

	// For a Physical backup, optionally indicate a degree of parallelism
	// also known as DOP.
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=100
	Dop int32 `json:"dop,omitempty"`

	// For a Physical backup, optionally specify an incremental level.
	// The default is 0 (the whole database).
	// +optional
	Level int32 `json:"level,omitempty"`

	// For a Physical backup, optionally specify filesperset.
	// The default depends on a type of backup, generally 64.
	// +optional
	Filesperset int32 `json:"filesperset,omitempty"`

	// For a Physical backup, optionally specify a section size in MB.
	// Don't include the unit (MB), just the integer.
	// +optional
	SectionSize int32 `json:"sectionSize,omitempty"`

	// For a Physical backup, optionally specify the time threshold.
	// If a threshold is reached, the backup request would time out and
	// error out. The threshold is expressed in minutes.
	// Don't include the unit (minutes), just the integer.
	// +optional
	TimeLimitMinutes int32 `json:"timeLimitMinutes,omitempty"`

	// For a Physical backup, optionally specify a local backup dir.
	// If omitted, /u03/app/oracle/rman is assumed.
	// +optional
	LocalPath string `json:"localPath,omitempty"`

	// If set up ahead of time, the backup sets of a physical backup can be
	// optionally transferred to a GCS bucket.
	// A user is to ensure proper write access to the bucket from within the
	// Oracle Operator.
	// +optional
	GcsPath string `json:"gcsPath,omitempty"`
}

BackupSpec defines the desired state of Backup.

func (*BackupSpec) DeepCopy

func (in *BackupSpec) DeepCopy() *BackupSpec

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

func (*BackupSpec) DeepCopyInto

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

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

type BackupStatus

type BackupStatus struct {
	// Backup status that is common across all database engines.
	commonv1alpha1.BackupStatus `json:",inline"`

	BackupID   string `json:"backupid,omitempty"`
	BackupTime string `json:"backuptime,omitempty"`
}

BackupStatus defines the observed state of Backup.

func (*BackupStatus) DeepCopy

func (in *BackupStatus) DeepCopy() *BackupStatus

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

func (*BackupStatus) DeepCopyInto

func (in *BackupStatus) DeepCopyInto(out *BackupStatus)

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

type ConcurrencyPolicy

type ConcurrencyPolicy string

ConcurrencyPolicy specifies the policy to use for concurrency control.

const (
	// AllowConcurrent policy specifies allowing creation of new resources
	// regardless of how many other currently active resources exist.
	AllowConcurrent ConcurrencyPolicy = "Allow"

	// ForbidConcurrent policy specifies not allowing creation of a new resource
	// if any existing resources are active.
	ForbidConcurrent ConcurrencyPolicy = "Forbid"

	// ReplaceConcurrent policy specifies deleting any existing, active resources
	// before creating a new one.
	ReplaceConcurrent ConcurrencyPolicy = "Replace"
)

type Config

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

	Spec   ConfigSpec   `json:"spec,omitempty"`
	Status ConfigStatus `json:"status,omitempty"`
}

Config is the Schema for the configs API.

func (*Config) DeepCopy

func (in *Config) DeepCopy() *Config

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

func (*Config) DeepCopyInto

func (in *Config) DeepCopyInto(out *Config)

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

func (*Config) DeepCopyObject

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

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

type ConfigList

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

ConfigList contains a list of Config.

func (*ConfigList) DeepCopy

func (in *ConfigList) DeepCopy() *ConfigList

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

func (*ConfigList) DeepCopyInto

func (in *ConfigList) DeepCopyInto(out *ConfigList)

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

func (*ConfigList) DeepCopyObject

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

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

type ConfigSpec

type ConfigSpec struct {
	// Service agent and other data plane agent images.
	// This is an optional map that allows a customer to specify agent images
	// different from those chosen/provided by the Oracle Operator by default.
	// See an example of how this map can be used in
	// config/samples/v1alpha1_config_gcp1.yaml
	// +optional
	Images map[string]string `json:"images,omitempty"`

	// Deployment platform.
	// Presently supported values are: GCP (default), BareMetal.
	// +optional
	// +kubebuilder:validation:Enum=GCP;BareMetal;Minikube
	Platform string `json:"platform,omitempty"`

	// Disks slice describes at minimum two disks:
	// data and log (archive log), and optionally a backup disk.
	Disks []commonv1alpha1.DiskSpec `json:"disks,omitempty"`

	// Storage class to use for dynamic provisioning.
	// This value varies depending on a platform.
	// For GCP (and the default) it is "csi-gce-pd".
	// +optional
	StorageClass string `json:"storageClass,omitempty"`

	// Volume Snapshot class to use for storage snapshots.
	// This value varies depending on a platform.
	// For GCP (and the default) it is "csi-gce-pd-snapshot-class".
	// +optional
	VolumeSnapshotClass string `json:"volumeSnapshotClass,omitempty"`

	// Log Levels for the various components.
	// This is an optional map for component -> log level
	// See an example of how this map can be used in
	// config/samples/v1alpha1_config_gcp1.yaml
	// +optional
	LogLevel map[string]string `json:"logLevel,omitempty"`

	// HostAntiAffinityNamespaces is an optional list of namespaces that need
	// to be included in anti-affinity by hostname rule. The effect of the rule
	// is forbidding scheduling a database pod in the current namespace on a host
	// that already runs a database pod in any of the listed namespaces.
	// +optional
	HostAntiAffinityNamespaces []string `json:"hostAntiAffinityNamespaces,omitempty"`
}

ConfigSpec defines the desired state of Config.

func (*ConfigSpec) DeepCopy

func (in *ConfigSpec) DeepCopy() *ConfigSpec

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

func (*ConfigSpec) DeepCopyInto

func (in *ConfigSpec) DeepCopyInto(out *ConfigSpec)

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

type ConfigStatus

type ConfigStatus struct {
}

ConfigStatus defines the observed state of Config.

func (*ConfigStatus) DeepCopy

func (in *ConfigStatus) DeepCopy() *ConfigStatus

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

func (*ConfigStatus) DeepCopyInto

func (in *ConfigStatus) DeepCopyInto(out *ConfigStatus)

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

type CronAnything

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

	Spec   CronAnythingSpec   `json:"spec,omitempty"`
	Status CronAnythingStatus `json:"status,omitempty"`
}

CronAnything is the Schema for the cronanythings API. +k8s:openapi-gen=true

func (*CronAnything) DeepCopy

func (in *CronAnything) DeepCopy() *CronAnything

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

func (*CronAnything) DeepCopyInto

func (in *CronAnything) DeepCopyInto(out *CronAnything)

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

func (*CronAnything) DeepCopyObject

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

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

type CronAnythingList

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

CronAnythingList contains a list of CronAnything.

func (*CronAnythingList) DeepCopy

func (in *CronAnythingList) DeepCopy() *CronAnythingList

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

func (*CronAnythingList) DeepCopyInto

func (in *CronAnythingList) DeepCopyInto(out *CronAnythingList)

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

func (*CronAnythingList) DeepCopyObject

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

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

type CronAnythingSpec

type CronAnythingSpec struct {
	// Schedule defines a time-based schedule, e.g., a standard cron schedule such
	// as “@every 10m”. This field is mandatory and mutable. If it is changed,
	// resources will simply be created at the new interval from then on.
	Schedule string `json:"schedule"`

	// TriggerDeadlineSeconds defines Deadline in seconds for creating the
	// resource if it missed the scheduled time. If no deadline is provided, the
	// resource will be created no matter how far after the scheduled time.
	// If multiple triggers were missed, only the last will be triggered and only
	// one resource will be created. This field is mutable and changing it
	// will affect the creation of new resources from that point in time.
	// +optional
	TriggerDeadlineSeconds *int64 `json:"triggerDeadlineSeconds,omitempty"`

	// ConcurrencyPolicy specifies how to treat concurrent resources if the
	// resource provides a status path that exposes completion.
	// The default policy if not provided is to allow a new resource to be created
	// even if an active resource already exists.
	// If the resource doesn’t have an active/completed status, the only supported
	// concurrency policy is to allow creating new resources.
	// This field is mutable. If the policy is changed to a more stringent policy
	// while multiple resources are active, it will not delete any existing
	// resources. The exception is if a creation of a new resource is triggered
	// and the policy has been changed to Replace. If multiple resources are
	// active, they will all be deleted and replaced by a new resource.
	// +optional
	ConcurrencyPolicy ConcurrencyPolicy `json:"concurrencyPolicy,omitempty"`

	// Suspend tells the controller to suspend creation of additional resources.
	// The default value is false. This field is mutable. It will not affect any
	// existing resources, but only affect creation of additional resources.
	// +optional
	Suspend *bool `json:"suspend,omitempty"`

	// FinishableStrategy defines how the CronAnything controller an decide if a
	// resource has completed.
	// Some resources will do some work after they have been created and at some
	// point be finished. Jobs are the most common example.
	// If no strategy is defined, it is assumed that the resources never finish.
	// +optional
	FinishableStrategy *FinishableStrategy `json:"finishableStrategy,omitempty"`

	// Template is a template of a resource type for which instances are to
	// be created on the given schedule.
	// This field is mandatory and it must contain a valid template for an
	// existing apiVersion and kind in the cluster.
	// It is immutable, so if the template needs to change, the whole CronAnything
	// resource should be replaced.
	Template runtime.RawExtension `json:"template"`

	// TotalResourceLimit specifies the total number of children allowed for a
	// particular CronAnything resource. If this limit is reached, no additional
	// resources will be created.
	// This limit is mostly meant to avoid runaway creation of resources that
	// could bring down the cluster. Both finished and unfinished resources count
	// against this limit.
	// This field is mutable. If it is changed to a lower value than the existing
	// number of resources, none of the existing resources will be deleted as a
	// result, but no additional resources will be created until the number of
	// child resources goes below the limit.
	// The field is optional with a default value of 100.
	// +optional
	TotalResourceLimit *int32 `json:"totalResourceLimit,omitempty"`

	// Retention defines the retention policy for resources created by
	// CronAnything. If no retention policy is defined, CronAnything will never
	// delete resources, so cleanup must be handled through some other process.
	// +optional
	Retention *ResourceRetention `json:"retention,omitempty"`

	// CascadeDelete tells CronAnything to set up owner references from the
	// created resources to the CronAnything resource. This means that if the
	// CronAnything resource is deleted, all resources created by it will also be
	// deleted. This is an optional field that defaults to false.
	// +optional
	CascadeDelete *bool `json:"cascadeDelete,omitempty"`

	// ResourceBaseName specifies the base name for the resources created by
	// CronAnything, which will be named using the format
	// <ResourceBaseName>-<Timestamp>. This field is optional, and the default
	// is to use the name of the CronAnything resource as the ResourceBaseName.
	// +optional
	ResourceBaseName *string `json:"resourceBaseName,omitempty"`

	// ResourceTimestampFormat defines the format of the timestamp in the name of
	// Resources created by CronAnything <ResourceBaseName>-<Timestamp>.
	// This field is optional, and the default is to format the timestamp as unix
	// time. If provided, it must be compatible with time.Format in golang.
	// +optional
	ResourceTimestampFormat *string `json:"resourceTimestampFormat,omitempty"`
}

CronAnythingSpec defines the desired state of CronAnything.

func (*CronAnythingSpec) DeepCopy

func (in *CronAnythingSpec) DeepCopy() *CronAnythingSpec

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

func (*CronAnythingSpec) DeepCopyInto

func (in *CronAnythingSpec) DeepCopyInto(out *CronAnythingSpec)

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

type CronAnythingStatus

type CronAnythingStatus struct {

	// LastScheduleTime keeps track of the scheduled time for the last
	// successfully completed creation of a resource.
	// This is used by the controller to determine when the next resource creation
	// should happen. If creation of a resource is delayed for any reason but
	// eventually does happen, this value will still be updated to the time when
	// it was originally scheduled to happen.
	// +optional
	LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"`

	// TriggerHistory keeps track of the status for the last 10 triggers. This
	// allows users of CronAnything to see whether any triggers failed. It is
	// important to know that this only keeps track of whether a trigger was
	// successfully executed (as in creating the given resource), not whether the
	// created resource was itself successful. For this information, any users
	// of CronAnything should observe the resources created.
	// +optional
	TriggerHistory []TriggerHistoryRecord `json:"triggerHistory,omitempty"`

	// PendingTrigger keeps track of any triggers that are past their trigger time,
	// but for some reason have not been completed yet. This is typically a result
	// of the create operation failing.
	// +optional
	PendingTrigger *PendingTrigger `json:"pendingTrigger,omitempty"`
}

CronAnythingStatus defines the observed state of CronAnything.

func (*CronAnythingStatus) DeepCopy

func (in *CronAnythingStatus) DeepCopy() *CronAnythingStatus

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

func (*CronAnythingStatus) DeepCopyInto

func (in *CronAnythingStatus) DeepCopyInto(out *CronAnythingStatus)

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

type DBNetworkServiceOptions

type DBNetworkServiceOptions struct {
	// GCP contains Google Cloud specific attributes of Service configuration.
	// +optional
	GCP DBNetworkServiceOptionsGCP `json:"gcp,omitempty"`
}

DBNetworkServiceOptions contains customization options of kubernetes Service exposing a database connection.

func (*DBNetworkServiceOptions) DeepCopy

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

func (*DBNetworkServiceOptions) DeepCopyInto

func (in *DBNetworkServiceOptions) DeepCopyInto(out *DBNetworkServiceOptions)

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

type DBNetworkServiceOptionsGCP

type DBNetworkServiceOptionsGCP struct {
	// LoadBalancerType let's define a type of load balancer, see
	// https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
	// +kubebuilder:validation:Enum="";Internal;External
	// +optional
	LoadBalancerType string `json:"loadBalancerType,omitempty"`
}

DBNetworkServiceOptionsGCP contains customization options of kubernetes Service created for database connection that are specific to GCP.

func (*DBNetworkServiceOptionsGCP) DeepCopy

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

func (*DBNetworkServiceOptionsGCP) DeepCopyInto

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

type Database

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

	Spec   DatabaseSpec   `json:"spec,omitempty"`
	Status DatabaseStatus `json:"status,omitempty"`
}

Database is the Schema for the databases API.

func (*Database) DeepCopy

func (in *Database) DeepCopy() *Database

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

func (*Database) DeepCopyInto

func (in *Database) DeepCopyInto(out *Database)

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

func (*Database) DeepCopyObject

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

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

type DatabaseList

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

DatabaseList contains a list of Database.

func (*DatabaseList) DeepCopy

func (in *DatabaseList) DeepCopy() *DatabaseList

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

func (*DatabaseList) DeepCopyInto

func (in *DatabaseList) DeepCopyInto(out *DatabaseList)

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

func (*DatabaseList) DeepCopyObject

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

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

type DatabaseSpec

type DatabaseSpec struct {
	// Database specs that are common across all database engines.
	commonv1alpha1.DatabaseSpec `json:",inline"`

	// AdminPassword is the password for the sys admin of the database.
	// +optional
	// +kubebuilder:validation:MaxLength=30
	// +kubebuilder:validation:MinLength=5
	AdminPassword string `json:"admin_password,omitempty"`

	// AdminPasswordGsmSecretRef is a reference to the secret object containing
	// sensitive information to pass to config agent.
	// This field is optional, and may be empty if plaintext password is used.
	// +optional
	AdminPasswordGsmSecretRef *commonv1alpha1.GsmSecretReference `json:"adminPasswordGsmSecretRef,omitempty"`

	// Users specifies an optional list of users to be created in this database.
	// +optional
	Users []UserSpec `json:"users"`
}

DatabaseSpec defines the desired state of Database.

func (*DatabaseSpec) DeepCopy

func (in *DatabaseSpec) DeepCopy() *DatabaseSpec

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

func (*DatabaseSpec) DeepCopyInto

func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec)

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

type DatabaseStatus

type DatabaseStatus struct {
	// Database status that is common across all database engines.
	commonv1alpha1.DatabaseStatus `json:",inline"`

	// List of user names.
	UserNames []string `json:"usernames,omitempty"`

	// UserResourceVersions is a map of username to user resource version
	// (plaintext or GSM). For GSM Resource version, use format:
	// "projects/{ProjectId}/secrets/{SecretId}/versions/{Version}".
	UserResourceVersions map[string]string `json:"UserResourceVersions,omitempty"`

	// ObservedGeneration is the latest generation observed by the controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// IsChangeApplied indicates whether database changes have been applied
	// +optional
	IsChangeApplied metav1.ConditionStatus `json:"isChangeApplied,omitempty"`
}

DatabaseStatus defines the observed state of Database.

func (*DatabaseStatus) DeepCopy

func (in *DatabaseStatus) DeepCopy() *DatabaseStatus

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

func (*DatabaseStatus) DeepCopyInto

func (in *DatabaseStatus) DeepCopyInto(out *DatabaseStatus)

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

type Export

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

	Spec   ExportSpec   `json:"spec,omitempty"`
	Status ExportStatus `json:"status,omitempty"`
}

Export is the Schema for the exports API.

func (*Export) DeepCopy

func (in *Export) DeepCopy() *Export

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

func (*Export) DeepCopyInto

func (in *Export) DeepCopyInto(out *Export)

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

func (*Export) DeepCopyObject

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

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

type ExportList

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

ExportList contains a list of Export.

func (*ExportList) DeepCopy

func (in *ExportList) DeepCopy() *ExportList

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

func (*ExportList) DeepCopyInto

func (in *ExportList) DeepCopyInto(out *ExportList)

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

func (*ExportList) DeepCopyObject

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

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

type ExportSpec

type ExportSpec struct {
	// Instance is the resource name within namespace to export from.
	// +required
	Instance string `json:"instance"`

	// DatabaseName is the database resource name within Instance to export from.
	// +required
	DatabaseName string `json:"databaseName"`

	// Type of the Export. If omitted, the default of DataPump is assumed.
	// +kubebuilder:validation:Enum=DataPump
	// +optional
	Type string `json:"type,omitempty"`

	// ExportObjectType is the type of objects to export. If omitted, the default
	// of Schemas is assumed.
	// Supported options at this point are: Schemas or Tables.
	// +kubebuilder:validation:Enum=Schemas;Tables
	// +optional
	ExportObjectType string `json:"exportObjectType,omitempty"`

	// ExportObjects are objects, schemas or tables, exported by DataPump.
	// +required
	ExportObjects []string `json:"exportObjects,omitempty"`

	// GcsPath is a full path in GCS bucket to transfer exported files to.
	// A user is to ensure proper write access to the bucket from within the
	// Oracle Operator.
	// +required
	GcsPath string `json:"gcsPath,omitempty"`

	// GcsLogPath is an optional full path in GCS. If set up ahead of time, export
	// logs can be optionally transferred to set GCS bucket. A user is to ensure
	// proper write access to the bucket from within the Oracle Operator.
	// +optional
	GcsLogPath string `json:"gcsLogPath,omitempty"`

	// FlashbackTime is an optional time. If this time is set, the SCN that most
	// closely matches the time is found, and this SCN is used to enable the
	// Flashback utility. The export operation is performed with data that is
	// consistent up to this SCN.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Format=date-time
	// +optional
	FlashbackTime *metav1.Time `json:"flashbackTime,omitempty"`
}

ExportSpec defines the desired state of Export

func (*ExportSpec) DeepCopy

func (in *ExportSpec) DeepCopy() *ExportSpec

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

func (*ExportSpec) DeepCopyInto

func (in *ExportSpec) DeepCopyInto(out *ExportSpec)

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

type ExportStatus

type ExportStatus struct {
	// Conditions represents the latest available observations
	// of the export's current state.
	// +listType=map
	// +listMapKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ExportStatus defines the observed state of Export.

func (*ExportStatus) DeepCopy

func (in *ExportStatus) DeepCopy() *ExportStatus

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

func (*ExportStatus) DeepCopyInto

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

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

type FieldResourceTimestampStrategy

type FieldResourceTimestampStrategy struct {

	// The path to the field on the resource that contains the timestamp.
	FieldPath string `json:"fieldPath"`
}

FieldResourceTimestampStrategy defines how the CronAnything controller can find the timestamp for a resource.

func (*FieldResourceTimestampStrategy) DeepCopy

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

func (*FieldResourceTimestampStrategy) DeepCopyInto

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

type FinishableStrategy

type FinishableStrategy struct {

	// Type tells which strategy should be used.
	Type FinishableStrategyType `json:"type"`

	// TimestampField contains the details for how the CronAnything controller
	// can find the timestamp field on the resource in order to decide if the
	// resource has completed.
	// +optional
	TimestampField *TimestampFieldStrategy `json:"timestampField,omitempty"`

	// StringField contains the details for how the CronAnything controller
	// can find the string field on the resource needed to decide if the resource
	// has completed. It also lists the values that mean the resource has completed.
	// +optional
	StringField *StringFieldStrategy `json:"stringField,omitempty"`
}

FinishableStrategy specifies how the CronAnything controller can decide whether a created resource has completed. This is needed for any concurrency policies other than AllowConcurrent.

func (*FinishableStrategy) DeepCopy

func (in *FinishableStrategy) DeepCopy() *FinishableStrategy

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

func (*FinishableStrategy) DeepCopyInto

func (in *FinishableStrategy) DeepCopyInto(out *FinishableStrategy)

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

type FinishableStrategyType

type FinishableStrategyType string

FinishableStrategyType specifies the type of the field which tells whether a resource is finished.

const (
	// FinishableStrategyTimestampField specifies deriving whether a resource is
	// finished from a timestamp field.
	FinishableStrategyTimestampField FinishableStrategyType = "TimestampField"

	// FinishableStrategyStringField specifies deriving whether a resource is
	// finished from a string field.
	FinishableStrategyStringField FinishableStrategyType = "StringField"
)

type Import

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

	Spec   ImportSpec   `json:"spec,omitempty"`
	Status ImportStatus `json:"status,omitempty"`
}

Import is the Schema for the imports API.

func (*Import) DeepCopy

func (in *Import) DeepCopy() *Import

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

func (*Import) DeepCopyInto

func (in *Import) DeepCopyInto(out *Import)

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

func (*Import) DeepCopyObject

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

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

type ImportList

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

ImportList contains a list of Import.

func (*ImportList) DeepCopy

func (in *ImportList) DeepCopy() *ImportList

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

func (*ImportList) DeepCopyInto

func (in *ImportList) DeepCopyInto(out *ImportList)

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

func (*ImportList) DeepCopyObject

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

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

type ImportSpec

type ImportSpec struct {
	// Instance is the resource name within same namespace to import into.
	// +required
	Instance string `json:"instance,omitempty"`

	// DatabaseName is the database resource name within Instance to import into.
	// +required
	DatabaseName string `json:"databaseName,omitempty"`

	// Type of the Import. If not specified, the default of DataPump is assumed,
	// which is the only supported option currently.
	// +kubebuilder:validation:Enum=DataPump
	// +optional
	Type string `json:"type,omitempty"`

	// GcsPath is a full path to the input file in GCS containing import data.
	// A user is to ensure proper write access to the bucket from within the
	// Oracle Operator.
	// +required
	GcsPath string `json:"gcsPath,omitempty"`

	// GcsLogPath is an optional path in GCS to copy import log to.
	// A user is to ensure proper write access to the bucket from within the
	// Oracle Operator.
	// +optional
	GcsLogPath string `json:"gcsLogPath,omitempty"`
}

ImportSpec defines the desired state of Import.

func (*ImportSpec) DeepCopy

func (in *ImportSpec) DeepCopy() *ImportSpec

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

func (*ImportSpec) DeepCopyInto

func (in *ImportSpec) DeepCopyInto(out *ImportSpec)

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

type ImportStatus

type ImportStatus struct {
	// Conditions represents the latest available observations
	// of the import's current state.
	// +listType=map
	// +listMapKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ImportStatus defines the observed state of Import.

func (*ImportStatus) DeepCopy

func (in *ImportStatus) DeepCopy() *ImportStatus

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

func (*ImportStatus) DeepCopyInto

func (in *ImportStatus) DeepCopyInto(out *ImportStatus)

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

type Instance

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

	Spec   InstanceSpec   `json:"spec,omitempty"`
	Status InstanceStatus `json:"status,omitempty"`
}

Instance is the Schema for the instances API.

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

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

func (*Instance) DeepCopyObject

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

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

func (*Instance) GenericInstanceSpec

func (i *Instance) GenericInstanceSpec() commonv1alpha1.GenericInstanceSpec

GenericInstanceSpec defines the common specifications for a Generic Instance.

func (*Instance) GenericInstanceStatus

func (i *Instance) GenericInstanceStatus() commonv1alpha1.GenericInstanceStatus

GenericInstanceStatus defines the common status for a Generic Instance.

type InstanceList

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

InstanceList contains a list of Instance.

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

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

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

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

func (*InstanceList) DeepCopyObject

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

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

type InstanceSpec

type InstanceSpec struct {
	// GenericInstanceSpec represents the database engine agnostic
	// part of the spec describing the desired state of an Instance.
	commonv1alpha1.GenericInstanceSpec `json:",inline"`

	// Restore and recovery request details.
	// This section should normally be commented out unless an actual
	// restore/recovery is required.
	// +optional
	Restore *RestoreSpec `json:"restore,omitempty"`

	// DatabaseUID represents an OS UID of a user running a database.
	// +optional
	DatabaseUID *int64 `json:"databaseUID,omitempty"`

	// DatabaseGID represents an OS group ID of a user running a database.
	// +optional
	DatabaseGID *int64 `json:"databaseGID,omitempty"`

	// DBDomain is an optional attribute to set a database domain.
	// +optional
	DBDomain string `json:"dbDomain,omitempty"`

	// CDBName is the intended name of the CDB attribute. If the CDBName is
	// different from the original name (with which the CDB was created) the
	// CDB will be renamed.
	// +optional
	CDBName string `json:"cdbName,omitempty"`

	// DBUniqueName represents a unique database name that would be
	// set for a database (if not provided, as a default,
	// the [_generic|_<zone name>] will be appended to a DatabaseName).
	// +optional
	DBUniqueName string `json:"dbUniqueName,omitempty"`

	// CharacterSet used to create a database (the default is AL32UTF8).
	// +optional
	CharacterSet string `json:"characterSet,omitempty"`

	// MemoryPercent represents the percentage of memory that should be allocated
	// for Oracle SGA (default is 25%).
	// +optional
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=100
	MemoryPercent int `json:"memoryPercent,omitempty"`

	// DBNetworkServiceOptions allows to override some details of kubernetes
	// Service created to expose a connection to database.
	// +optional
	DBNetworkServiceOptions *DBNetworkServiceOptions `json:"dbNetworkServiceOptions,omitempty"`
}

InstanceSpec defines the desired state of Instance.

func (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

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

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

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

type InstanceStatus

type InstanceStatus struct {
	// GenericInstanceStatus represents the database engine agnostic
	// part of the status describing the observed state of an Instance.
	commonv1alpha1.GenericInstanceStatus `json:",inline"`

	// List of database names (e.g. PDBs) hosted in the Instance.
	DatabaseNames []string `json:"databasenames,omitempty"`

	// Last backup ID.
	BackupID string `json:"backupid,omitempty"`

	// +optional
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Format=date-time
	LastRestoreTime *metav1.Time `json:"lastRestoreTime,omitempty"`

	// CurrentServiceImage stores the image name used by the database instance.
	CurrentServiceImage string `json:"currentServiceImage,omitempty"`

	// CurrentParameters stores the last successfully set instance parameters.
	CurrentParameters map[string]string `json:"currentParameters,omitempty"`

	// LastFailedParameterUpdate is used to avoid getting into the failed
	// parameter update loop.
	LastFailedParameterUpdate map[string]string `json:"lastFailedParameterUpdate,omitempty"`
}

InstanceStatus defines the observed state of Instance.

func (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

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

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

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

type PendingTrigger

type PendingTrigger struct {

	// ScheduleTime is the time when this trigger was scheduled to be executed.
	ScheduleTime metav1.Time `json:"scheduleTime"`

	// Result tells why this trigger is in the pending state, i.e. what prevented
	// it from completing successfully.
	Result TriggerResult `json:"result"`
}

PendingTrigger keeps information about triggers that should have been completed, but due to some kind of error, is still pending. They will typically remain in this state until either the issue has been resolved and the resource in question can be created, the triggerDeadlineSeconds is reached and we stop trying, or the next trigger time is reached at which time we consider the previous trigger as failed.

func (*PendingTrigger) DeepCopy

func (in *PendingTrigger) DeepCopy() *PendingTrigger

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

func (*PendingTrigger) DeepCopyInto

func (in *PendingTrigger) DeepCopyInto(out *PendingTrigger)

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

type PrivilegeSpec

type PrivilegeSpec string

PrivilegeSpec defines the desired state of roles and privileges.

type Release

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

	Spec   ReleaseSpec   `json:"spec,omitempty"`
	Status ReleaseStatus `json:"status,omitempty"`
}

Release is the Schema for the releases API.

func (*Release) DeepCopy

func (in *Release) DeepCopy() *Release

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

func (*Release) DeepCopyInto

func (in *Release) DeepCopyInto(out *Release)

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

func (*Release) DeepCopyObject

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

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

type ReleaseList

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

ReleaseList contains a list of Release.

func (*ReleaseList) DeepCopy

func (in *ReleaseList) DeepCopy() *ReleaseList

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

func (*ReleaseList) DeepCopyInto

func (in *ReleaseList) DeepCopyInto(out *ReleaseList)

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

func (*ReleaseList) DeepCopyObject

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

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

type ReleaseSpec

type ReleaseSpec struct {
	Version string `json:"version"`
}

ReleaseSpec defines the desired state of Release.

func (*ReleaseSpec) DeepCopy

func (in *ReleaseSpec) DeepCopy() *ReleaseSpec

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

func (*ReleaseSpec) DeepCopyInto

func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)

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

type ReleaseStatus

type ReleaseStatus struct {
}

ReleaseStatus defines the observed state of Release.

func (*ReleaseStatus) DeepCopy

func (in *ReleaseStatus) DeepCopy() *ReleaseStatus

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

func (*ReleaseStatus) DeepCopyInto

func (in *ReleaseStatus) DeepCopyInto(out *ReleaseStatus)

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

type ResourceRetention

type ResourceRetention struct {
	// The number of completed resources to keep before deleting them. This
	// only affects finishable resources and the default value is 3.
	// This field is mutable and if it is changed to a number lower than
	// the current number of finished resources, the oldest ones will
	// eventually be deleted until the number of finished resources matches
	// the limit.
	// +optional
	HistoryCountLimit *int32 `json:"historyCountLimit,omitempty"`

	// The time since completion that a resource is kept before deletion. This
	// only affects finishable resources. This does not have any default value and
	// if it is not provided, HistoryCountLimit will be used to prune completed
	// resources.
	// If both HistoryCountLimit and  HistoryTimeLimitSeconds are set, it is treated
	// as an OR operation.
	// +optional
	HistoryTimeLimitSeconds *uint64 `json:"historyTimeLimitSeconds,omitempty"`

	// ResourceTimestampStrategy specifies how the CronAnything controller
	// can find the age of a resource. This is needed to support retention.
	ResourceTimestampStrategy ResourceTimestampStrategy `json:"resourceTimestampStrategy"`
}

ResourceRetention specifies the retention policy for resources.

func (*ResourceRetention) DeepCopy

func (in *ResourceRetention) DeepCopy() *ResourceRetention

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

func (*ResourceRetention) DeepCopyInto

func (in *ResourceRetention) DeepCopyInto(out *ResourceRetention)

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

type ResourceTimestampStrategy

type ResourceTimestampStrategy struct {

	// Type tells which strategy should be used.
	Type ResourceTimestampStrategyType `json:"type"`

	// FieldResourceTimestampStrategy specifies how the CronAnything controller
	// can find the timestamp for the resource from a field.
	// +optional
	FieldResourceTimestampStrategy *FieldResourceTimestampStrategy `json:"field,omitempty"`
}

ResourceTimestampStrategy specifies how the CronAnything controller can find the timestamp on the resource that will again decide the order in which resources are deleted based on the retention policy.

func (*ResourceTimestampStrategy) DeepCopy

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

func (*ResourceTimestampStrategy) DeepCopyInto

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

type ResourceTimestampStrategyType

type ResourceTimestampStrategyType string

ResourceTimestampStrategyType specifies the strategy to use for getting the resource timestamp.

const (
	// ResourceTimestampStrategyField specifies getting the timestamp for the
	// resource from a field on the resource.
	ResourceTimestampStrategyField ResourceTimestampStrategyType = "Field"
)

type RestoreSpec

type RestoreSpec struct {
	// Backup type to restore from.
	// Oracle only supports: Snapshot or Physical.
	// +optional
	// +kubebuilder:validation:Enum=Snapshot;Physical
	BackupType commonv1alpha1.BackupType `json:"backupType,omitempty"`

	// Backup name to restore from.
	// +required
	BackupID string `json:"backupId,omitempty"`

	// Similar to a (physical) backup, optionally indicate a degree
	// of parallelism, also known as DOP.
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=100
	Dop int32 `json:"dop,omitempty"`

	// Restore time limit.
	// Optional field defaulting to three times the backup time limit.
	// Don't include the unit (minutes), just the integer.
	// +optional
	// +kubebuilder:validation:Minimum=0
	TimeLimitMinutes int32 `json:"timeLimitMinutes,omitempty"`

	// To overwrite an existing, up and running instance,
	// an explicit athorization is required. This is safeguard to avoid
	// accidentally destroying a perfectly healthy (status=Ready) instance.
	// +kubebuilder:validation:Enum=true;false
	// +optional
	Force bool `json:"force,omitempty"`

	// Request version as a date-time to avoid accidental triggering of
	// a restore operation when reapplying an older version of a resource file.
	// If at least one restore operation has occurred, any further restore
	// operation that have the same RequestTime or earlier than the last Restore
	// operation will be ignored.
	// +required
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Format=date-time
	RequestTime metav1.Time `json:"requestTime"`
}

RestoreSpec defines optional restore and recovery attributes.

func (*RestoreSpec) DeepCopy

func (in *RestoreSpec) DeepCopy() *RestoreSpec

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

func (*RestoreSpec) DeepCopyInto

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

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

type Service

type Service string

Service is an Oracle Operator provided service.

type StringFieldStrategy

type StringFieldStrategy struct {

	// The path to the field on the resource that contains a string value.
	FieldPath string `json:"fieldPath"`

	// The values of the field that means the resource has completed.
	FinishedValues []string `json:"finishedValues"`
}

StringFieldStrategy defines how the CronAnything controller can find and use the value of a field on the resource to decide if it has finished.

func (*StringFieldStrategy) DeepCopy

func (in *StringFieldStrategy) DeepCopy() *StringFieldStrategy

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

func (*StringFieldStrategy) DeepCopyInto

func (in *StringFieldStrategy) DeepCopyInto(out *StringFieldStrategy)

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

type TimestampFieldStrategy

type TimestampFieldStrategy struct {

	// The path to the field on the resource that contains the timestamp.
	FieldPath string `json:"fieldPath"`
}

TimestampFieldStrategy defines how the CronAnything controller can find a field on the resource that contains a timestamp. The contract here is that if the field contains a valid timestamp the resource is considered finished.

func (*TimestampFieldStrategy) DeepCopy

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

func (*TimestampFieldStrategy) DeepCopyInto

func (in *TimestampFieldStrategy) DeepCopyInto(out *TimestampFieldStrategy)

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

type TriggerHistoryRecord

type TriggerHistoryRecord struct {

	// ScheduleTime is the time when this trigger was scheduled to be executed.
	ScheduleTime metav1.Time `json:"scheduleTime"`

	// CreationTimestamp is the time when this record was created. This is thus
	// also the time at which the final result of the trigger was decided.
	CreationTimestamp metav1.Time `json:"creationTimestamp"`

	// Result contains the outcome of a trigger. It can either be CreateSucceeded,
	// which means the given resource was created as intended, or it can be one
	// of several error messages.
	Result TriggerResult `json:"result"`
}

TriggerHistoryRecord contains information about the result of a trigger. It can either have completed successfully, and if it did not, the record will provide information about what is the cause of the failure.

func (*TriggerHistoryRecord) DeepCopy

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

func (*TriggerHistoryRecord) DeepCopyInto

func (in *TriggerHistoryRecord) DeepCopyInto(out *TriggerHistoryRecord)

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

type TriggerResult

type TriggerResult string

TriggerResult specifies the result of a trigger.

const (
	// TriggerResultMissed means the trigger was not able to complete until the
	// next trigger fired. Thus the trigger missed its window for being executed.
	TriggerResultMissed TriggerResult = "MissedSchedule"

	// TriggerResultCreateFailed means the create operation for a resource failed.
	// This itself doesn't cause the trigger to fail, but this status will be
	// reported if failing create operations are the reason a trigger misses its
	// window for being executed.
	TriggerResultCreateFailed TriggerResult = "CreateFailed"

	// TriggerResultCreateSucceeded means the trigger was successful.
	TriggerResultCreateSucceeded TriggerResult = "CreateSucceeded"

	// TriggerResultResourceLimitReached means the trigger could not be completed
	// as the resource limit was reached and it is not possible to create
	// additional resources.
	TriggerResultResourceLimitReached TriggerResult = "ResourceLimitReached"

	// TriggerResultForbidConcurrent means the trigger could not be completed as
	// there is already an unfinished resource and the concurrency policy forbid
	// any concurrently running resources.
	TriggerResultForbidConcurrent TriggerResult = "ForbidConcurrent"

	// TriggerResultDeadlineExceeded means the trigger could not be completed as
	// the deadline for how delayed a trigger can be was reached.
	TriggerResultDeadlineExceeded TriggerResult = "DeadlineExceeded"
)

type UserSpec

type UserSpec struct {
	// User specs that are common across all database engines.
	commonv1alpha1.UserSpec `json:",inline"`

	// Privileges specifies an optional list of privileges to grant to the user.
	// +optional
	Privileges []PrivilegeSpec `json:"privileges"`
}

UserSpec defines the desired state of the Database Users.

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

Jump to

Keyboard shortcuts

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