v4

package
v0.0.0-...-559238b Latest Latest
Warning

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

Go to latest
Published: Apr 7, 2025 License: UPL-1.0 Imports: 27 Imported by: 0

Documentation

Overview

** Copyright (c) 2022-2024 Oracle and/or its affiliates. ** ** The Universal Permissive License (UPL), Version 1.0 ** ** Subject to the condition set forth below, permission is hereby granted to any ** person obtaining a copy of this software, associated documentation and/or data ** (collectively the "Software"), free of charge and under any and all copyright ** rights in the Software, and any and all patent rights owned or freely ** licensable by each licensor hereunder covering either (i) the unmodified ** Software as contributed to or provided by such licensor, or (ii) the Larger ** Works (as defined below), to deal in both ** ** (a) the Software, and ** (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if ** one is included with the Software (each a "Larger Work" to which the Software ** is contributed by such licensors), ** ** without restriction, including without limitation the rights to copy, create ** derivative works of, display, perform, and distribute the Software and make, ** use, sell, offer for sale, import, export, have made, and have sold the ** Software and the Larger Work(s), and to sublicense the foregoing rights on ** either these or other terms. ** ** This license is subject to the following condition: ** The above copyright notice and either this complete permission notice or at ** a minimum a reference to the UPL must be included in all copies or ** substantial portions of the Software. ** ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ** OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ** SOFTWARE.

** Copyright (c) 2022-2024 Oracle and/or its affiliates. ** ** The Universal Permissive License (UPL), Version 1.0 ** ** Subject to the condition set forth below, permission is hereby granted to any ** person obtaining a copy of this software, associated documentation and/or data ** (collectively the "Software"), free of charge and under any and all copyright ** rights in the Software, and any and all patent rights owned or freely ** licensable by each licensor hereunder covering either (i) the unmodified ** Software as contributed to or provided by such licensor, or (ii) the Larger ** Works (as defined below), to deal in both ** ** (a) the Software, and ** (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if ** one is included with the Software (each a "Larger Work" to which the Software ** is contributed by such licensors), ** ** without restriction, including without limitation the rights to copy, create ** derivative works of, display, perform, and distribute the Software and make, ** use, sell, offer for sale, import, export, have made, and have sold the ** Software and the Larger Work(s), and to sublicense the foregoing rights on ** either these or other terms. ** ** This license is subject to the following condition: ** The above copyright notice and either this complete permission notice or at ** a minimum a reference to the UPL must be included in all copies or ** substantial portions of the Software. ** ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ** OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ** SOFTWARE.

** Copyright (c) 2022-2024 Oracle and/or its affiliates. ** ** The Universal Permissive License (UPL), Version 1.0 ** ** Subject to the condition set forth below, permission is hereby granted to any ** person obtaining a copy of this software, associated documentation and/or data ** (collectively the "Software"), free of charge and under any and all copyright ** rights in the Software, and any and all patent rights owned or freely ** licensable by each licensor hereunder covering either (i) the unmodified ** Software as contributed to or provided by such licensor, or (ii) the Larger ** Works (as defined below), to deal in both ** ** (a) the Software, and ** (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if ** one is included with the Software (each a "Larger Work" to which the Software ** is contributed by such licensors), ** ** without restriction, including without limitation the rights to copy, create ** derivative works of, display, perform, and distribute the Software and make, ** use, sell, offer for sale, import, export, have made, and have sold the ** Software and the Larger Work(s), and to sublicense the foregoing rights on ** either these or other terms. ** ** This license is subject to the following condition: ** The above copyright notice and either this complete permission notice or at ** a minimum a reference to the UPL must be included in all copies or ** substantial portions of the Software. ** ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ** OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ** SOFTWARE.

Package v4 contains API Schema definitions for the database v4 API group +kubebuilder:object:generate=true +groupName=database.oracle.com

Index

Constants

View Source
const ACDFinalizer = "database.oracle.com/acd-finalizer"

name of our custom finalizer

View Source
const LastSuccessfulSpec string = "lastSuccessfulSpec"

LastSuccessfulSpec is an annotation key which maps to the value of last successful spec

Variables

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

	// 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
)
View Source
var KubeConfigOnce sync.Once

var

Functions

func FormatSDKTime

func FormatSDKTime(sdkTime *common.SDKTime) string

func IsAdbIntermediateState

func IsAdbIntermediateState(state database.AutonomousDatabaseLifecycleStateEnum) bool

*********************** * LifecycleState check ***********************

func IsRestoreIntermediateState

func IsRestoreIntermediateState(state workrequests.WorkRequestStatusEnum) bool

func NextADBStableState

NextADBStableState returns the next stable state if it's an intermediate state. Otherwise returns the same state.

func ParseDisplayTime

func ParseDisplayTime(val string) (*common.SDKTime, error)

func RemoveUnchangedFields

func RemoveUnchangedFields(lastSpec interface{}, curSpec interface{}) (bool, error)

removeUnchangedFields removes the unchanged fields in the struct and returns if the struct is changed. lastSpec should be a derefereced struct that is the last successful spec, e.g. AutonomousDatabaseSpec. curSpec should be a pointer pointing to the struct that is being proccessed, e.g., *AutonomousDatabaseSpec.

Types

type AcdActionEnum

type AcdActionEnum string
const (
	AcdActionBlank     AcdActionEnum = ""
	AcdActionRestart   AcdActionEnum = "RESTART"
	AcdActionTerminate AcdActionEnum = "TERMINATE"
)

func GetAcdActionEnumFromString

func GetAcdActionEnumFromString(val string) (AcdActionEnum, bool)

type AcdSpec

type AcdSpec struct {
	K8sAcd K8sAcdSpec `json:"k8sAcd,omitempty"`
	OciAcd OciAcdSpec `json:"ociAcd,omitempty"`
}

AcdSpec defines the spec of the target for backup/restore runs. The name could be the name of an AutonomousDatabase or an AutonomousDatabaseBackup

func (*AcdSpec) DeepCopy

func (in *AcdSpec) DeepCopy() *AcdSpec

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

func (*AcdSpec) DeepCopyInto

func (in *AcdSpec) DeepCopyInto(out *AcdSpec)

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

type AdminpdbPass

type AdminpdbPass struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*AdminpdbPass) DeepCopy

func (in *AdminpdbPass) DeepCopy() *AdminpdbPass

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

func (*AdminpdbPass) DeepCopyInto

func (in *AdminpdbPass) DeepCopyInto(out *AdminpdbPass)

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

type AdminpdbUser

type AdminpdbUser struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*AdminpdbUser) DeepCopy

func (in *AdminpdbUser) DeepCopy() *AdminpdbUser

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

func (*AdminpdbUser) DeepCopyInto

func (in *AdminpdbUser) DeepCopyInto(out *AdminpdbUser)

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

type AutonomousContainerDatabase

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

	Spec   AutonomousContainerDatabaseSpec   `json:"spec,omitempty"`
	Status AutonomousContainerDatabaseStatus `json:"status,omitempty"`
}

AutonomousContainerDatabase is the Schema for the autonomouscontainerdatabases API

func (*AutonomousContainerDatabase) DeepCopy

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

func (*AutonomousContainerDatabase) DeepCopyInto

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

func (*AutonomousContainerDatabase) DeepCopyObject

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

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

func (*AutonomousContainerDatabase) GetLastSuccessfulSpec

func (acd *AutonomousContainerDatabase) GetLastSuccessfulSpec() (*AutonomousContainerDatabaseSpec, error)

GetLastSuccessfulSpec returns spec from the lass successful reconciliation. Returns nil, nil if there is no lastSuccessfulSpec.

func (*AutonomousContainerDatabase) Hub

Implement conversion.Hub interface, which means any resource version can convert into v4

func (*AutonomousContainerDatabase) RemoveUnchangedSpec

func (acd *AutonomousContainerDatabase) RemoveUnchangedSpec(prevSpec AutonomousContainerDatabaseSpec) (bool, error)

RemoveUnchangedSpec removes the unchanged fields in spec, and returns if the spec has been changed.

func (*AutonomousContainerDatabase) SetupWebhookWithManager

func (r *AutonomousContainerDatabase) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AutonomousContainerDatabase) String

func (acd *AutonomousContainerDatabase) String() (string, error)

A helper function which is useful for debugging. The function prints out a structural JSON format.

func (*AutonomousContainerDatabase) UpdateFromOCIACD

func (acd *AutonomousContainerDatabase) UpdateFromOCIACD(ociObj database.AutonomousContainerDatabase) (specChanged bool)

UpdateFromOCIADB updates the attributes using database.AutonomousContainerDatabase object

func (*AutonomousContainerDatabase) UpdateLastSuccessfulSpec

func (acd *AutonomousContainerDatabase) UpdateLastSuccessfulSpec() error

func (*AutonomousContainerDatabase) UpdateStatusFromOCIACD

func (acd *AutonomousContainerDatabase) UpdateStatusFromOCIACD(ociObj database.AutonomousContainerDatabase)

UpdateStatusFromOCIACD updates the status subresource

func (*AutonomousContainerDatabase) ValidateCreate

func (r *AutonomousContainerDatabase) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousContainerDatabase) ValidateDelete

func (r *AutonomousContainerDatabase) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousContainerDatabase) ValidateUpdate

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AutonomousContainerDatabaseList

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

AutonomousContainerDatabaseList contains a list of AutonomousContainerDatabase

func (*AutonomousContainerDatabaseList) DeepCopy

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

func (*AutonomousContainerDatabaseList) DeepCopyInto

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

func (*AutonomousContainerDatabaseList) DeepCopyObject

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

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

type AutonomousContainerDatabaseSpec

type AutonomousContainerDatabaseSpec struct {
	// INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	AutonomousContainerDatabaseOCID *string `json:"autonomousContainerDatabaseOCID,omitempty"`
	CompartmentOCID                 *string `json:"compartmentOCID,omitempty"`
	DisplayName                     *string `json:"displayName,omitempty"`
	AutonomousExadataVMClusterOCID  *string `json:"autonomousExadataVMClusterOCID,omitempty"`
	// +kubebuilder:validation:Enum:="RELEASE_UPDATES";"RELEASE_UPDATE_REVISIONS"
	PatchModel database.AutonomousContainerDatabasePatchModelEnum `json:"patchModel,omitempty"`
	// +kubebuilder:validation:Enum:="SYNC";"RESTART";"TERMINATE"
	Action       AcdActionEnum     `json:"action,omitempty"`
	FreeformTags map[string]string `json:"freeformTags,omitempty"`

	OCIConfig OciConfigSpec `json:"ociConfig,omitempty"`
	// +kubebuilder:default:=false
	HardLink *bool `json:"hardLink,omitempty"`
}

AutonomousContainerDatabaseSpec defines the desired state of AutonomousContainerDatabase

func (*AutonomousContainerDatabaseSpec) DeepCopy

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

func (*AutonomousContainerDatabaseSpec) DeepCopyInto

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

type AutonomousContainerDatabaseStatus

type AutonomousContainerDatabaseStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	LifecycleState database.AutonomousContainerDatabaseLifecycleStateEnum `json:"lifecycleState"`
	TimeCreated    string                                                 `json:"timeCreated,omitempty"`
}

AutonomousContainerDatabaseStatus defines the observed state of AutonomousContainerDatabase

func (*AutonomousContainerDatabaseStatus) DeepCopy

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

func (*AutonomousContainerDatabaseStatus) DeepCopyInto

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

type AutonomousDatabase

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

	Spec   AutonomousDatabaseSpec   `json:"spec,omitempty"`
	Status AutonomousDatabaseStatus `json:"status,omitempty"`
}

AutonomousDatabase is the Schema for the autonomousdatabases API +kubebuilder:object:root=true +kubebuilder:resource:shortName="adb";"adbs" +kubebuilder:subresource:status +kubebuilder:printcolumn:JSONPath=".spec.details.displayName",name="Display Name",type=string +kubebuilder:printcolumn:JSONPath=".spec.details.dbName",name="Db Name",type=string +kubebuilder:printcolumn:JSONPath=".status.lifecycleState",name="State",type=string +kubebuilder:printcolumn:JSONPath=".spec.details.isDedicated",name="Dedicated",type=string +kubebuilder:printcolumn:JSONPath=".spec.details.cpuCoreCount",name="OCPUs",type=integer +kubebuilder:printcolumn:JSONPath=".spec.details.dataStorageSizeInTBs",name="Storage (TB)",type=integer +kubebuilder:printcolumn:JSONPath=".spec.details.dbWorkload",name="Workload Type",type=string +kubebuilder:printcolumn:JSONPath=".status.timeCreated",name="Created",type=string +kubebuilder:storageversion

func (*AutonomousDatabase) DeepCopy

func (in *AutonomousDatabase) DeepCopy() *AutonomousDatabase

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

func (*AutonomousDatabase) DeepCopyInto

func (in *AutonomousDatabase) DeepCopyInto(out *AutonomousDatabase)

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

func (*AutonomousDatabase) DeepCopyObject

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

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

func (*AutonomousDatabase) Hub

func (*AutonomousDatabase) Hub()

Implement conversion.Hub interface, which means any resource version can convert into v4

func (*AutonomousDatabase) RemoveUnchangedDetails

func (adb *AutonomousDatabase) RemoveUnchangedDetails(prevSpec AutonomousDatabaseSpec) (bool, error)

RemoveUnchangedDetails removes the unchanged fields in spec.details, and returns if the details has been changed.

func (*AutonomousDatabase) SetupWebhookWithManager

func (r *AutonomousDatabase) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AutonomousDatabase) String

func (adb *AutonomousDatabase) String() (string, error)

A helper function which is useful for debugging. The function prints out a structural JSON format.

func (*AutonomousDatabase) UpdateFromOciAdb

func (adb *AutonomousDatabase) UpdateFromOciAdb(ociObj database.AutonomousDatabase, overwrite bool) (specChanged bool)

UpdateFromOciAdb updates the attributes using database.AutonomousDatabase object

func (*AutonomousDatabase) UpdateStatusFromOciAdb

func (adb *AutonomousDatabase) UpdateStatusFromOciAdb(ociObj database.AutonomousDatabase)

UpdateStatusFromOCIADB updates the status subresource

func (*AutonomousDatabase) ValidateCreate

func (r *AutonomousDatabase) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type ValidateCreate checks if the spec is valid for a provisioning or a binding operation

func (*AutonomousDatabase) ValidateDelete

func (r *AutonomousDatabase) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousDatabase) ValidateUpdate

func (r *AutonomousDatabase) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AutonomousDatabaseBackup

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

	Spec   AutonomousDatabaseBackupSpec   `json:"spec,omitempty"`
	Status AutonomousDatabaseBackupStatus `json:"status,omitempty"`
}

AutonomousDatabaseBackup is the Schema for the autonomousdatabasebackups API

func (*AutonomousDatabaseBackup) DeepCopy

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

func (*AutonomousDatabaseBackup) DeepCopyInto

func (in *AutonomousDatabaseBackup) DeepCopyInto(out *AutonomousDatabaseBackup)

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

func (*AutonomousDatabaseBackup) DeepCopyObject

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

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

func (*AutonomousDatabaseBackup) Default

func (r *AutonomousDatabaseBackup) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*AutonomousDatabaseBackup) GetTimeEnded

func (b *AutonomousDatabaseBackup) GetTimeEnded() (*common.SDKTime, error)

GetTimeEnded returns the status.timeEnded in SDKTime format

func (*AutonomousDatabaseBackup) Hub

func (*AutonomousDatabaseBackup) Hub()

Implement conversion.Hub interface, which means any resource version can convert into v4

func (*AutonomousDatabaseBackup) SetupWebhookWithManager

func (r *AutonomousDatabaseBackup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AutonomousDatabaseBackup) UpdateStatusFromOCIBackup

func (b *AutonomousDatabaseBackup) UpdateStatusFromOCIBackup(ociBackup database.AutonomousDatabaseBackup, ociADB database.AutonomousDatabase)

func (*AutonomousDatabaseBackup) ValidateCreate

func (r *AutonomousDatabaseBackup) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousDatabaseBackup) ValidateDelete

func (r *AutonomousDatabaseBackup) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousDatabaseBackup) ValidateUpdate

func (r *AutonomousDatabaseBackup) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AutonomousDatabaseBackupList

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

AutonomousDatabaseBackupList contains a list of AutonomousDatabaseBackup

func (*AutonomousDatabaseBackupList) DeepCopy

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

func (*AutonomousDatabaseBackupList) DeepCopyInto

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

func (*AutonomousDatabaseBackupList) DeepCopyObject

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

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

type AutonomousDatabaseBackupSpec

type AutonomousDatabaseBackupSpec struct {
	// INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Target                       TargetSpec    `json:"target,omitempty"`
	DisplayName                  *string       `json:"displayName,omitempty"`
	AutonomousDatabaseBackupOCID *string       `json:"autonomousDatabaseBackupOCID,omitempty"`
	IsLongTermBackup             *bool         `json:"isLongTermBackup,omitempty"`
	RetentionPeriodInDays        *int          `json:"retentionPeriodInDays,omitempty"`
	OCIConfig                    OciConfigSpec `json:"ociConfig,omitempty"`
}

AutonomousDatabaseBackupSpec defines the desired state of AutonomousDatabaseBackup

func (*AutonomousDatabaseBackupSpec) DeepCopy

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

func (*AutonomousDatabaseBackupSpec) DeepCopyInto

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

type AutonomousDatabaseBackupStatus

type AutonomousDatabaseBackupStatus struct {
	LifecycleState         database.AutonomousDatabaseBackupLifecycleStateEnum `json:"lifecycleState"`
	Type                   database.AutonomousDatabaseBackupTypeEnum           `json:"type"`
	IsAutomatic            bool                                                `json:"isAutomatic"`
	TimeStarted            string                                              `json:"timeStarted,omitempty"`
	TimeEnded              string                                              `json:"timeEnded,omitempty"`
	AutonomousDatabaseOCID string                                              `json:"autonomousDatabaseOCID"`
	CompartmentOCID        string                                              `json:"compartmentOCID"`
	DBName                 string                                              `json:"dbName"`
	DBDisplayName          string                                              `json:"dbDisplayName"`
}

AutonomousDatabaseBackupStatus defines the observed state of AutonomousDatabaseBackup

func (*AutonomousDatabaseBackupStatus) DeepCopy

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

func (*AutonomousDatabaseBackupStatus) DeepCopyInto

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

type AutonomousDatabaseBase

type AutonomousDatabaseBase struct {
	CompartmentId               *string `json:"compartmentId,omitempty"`
	AutonomousContainerDatabase AcdSpec `json:"autonomousContainerDatabase,omitempty"`
	DisplayName                 *string `json:"displayName,omitempty"`
	DbName                      *string `json:"dbName,omitempty"`
	// +kubebuilder:validation:Enum:="OLTP";"DW";"AJD";"APEX"
	DbWorkload database.AutonomousDatabaseDbWorkloadEnum `json:"dbWorkload,omitempty"`
	// +kubebuilder:validation:Enum:="LICENSE_INCLUDED";"BRING_YOUR_OWN_LICENSE"
	LicenseModel         database.AutonomousDatabaseLicenseModelEnum `json:"licenseModel,omitempty"`
	DbVersion            *string                                     `json:"dbVersion,omitempty"`
	DataStorageSizeInTBs *int                                        `json:"dataStorageSizeInTBs,omitempty"`
	CpuCoreCount         *int                                        `json:"cpuCoreCount,omitempty"`
	// +kubebuilder:validation:Enum:="ECPU";"OCPU"
	ComputeModel         database.AutonomousDatabaseComputeModelEnum `json:"computeModel,omitempty"`
	ComputeCount         *float32                                    `json:"computeCount,omitempty"`
	OcpuCount            *float32                                    `json:"ocpuCount,omitempty"`
	AdminPassword        PasswordSpec                                `json:"adminPassword,omitempty"`
	IsAutoScalingEnabled *bool                                       `json:"isAutoScalingEnabled,omitempty"`
	IsDedicated          *bool                                       `json:"isDedicated,omitempty"`
	IsFreeTier           *bool                                       `json:"isFreeTier,omitempty"`

	// NetworkAccess
	IsAccessControlEnabled   *bool    `json:"isAccessControlEnabled,omitempty"`
	WhitelistedIps           []string `json:"whitelistedIps,omitempty"`
	SubnetId                 *string  `json:"subnetId,omitempty"`
	NsgIds                   []string `json:"nsgIds,omitempty"`
	PrivateEndpointLabel     *string  `json:"privateEndpointLabel,omitempty"`
	IsMtlsConnectionRequired *bool    `json:"isMtlsConnectionRequired,omitempty"`

	FreeformTags map[string]string `json:"freeformTags,omitempty"`
}

AutonomousDatabaseBase defines the detail information of AutonomousDatabase, corresponding to oci-go-sdk/database/AutonomousDatabase

func (*AutonomousDatabaseBase) DeepCopy

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

func (*AutonomousDatabaseBase) DeepCopyInto

func (in *AutonomousDatabaseBase) DeepCopyInto(out *AutonomousDatabaseBase)

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

type AutonomousDatabaseClone

type AutonomousDatabaseClone struct {
	AutonomousDatabaseBase `json:",inline"`
	// +kubebuilder:validation:Enum:="FULL";"METADATA"
	CloneType database.CreateAutonomousDatabaseCloneDetailsCloneTypeEnum `json:"cloneType,omitempty"`
}

func (*AutonomousDatabaseClone) DeepCopy

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

func (*AutonomousDatabaseClone) DeepCopyInto

func (in *AutonomousDatabaseClone) DeepCopyInto(out *AutonomousDatabaseClone)

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

type AutonomousDatabaseDetails

type AutonomousDatabaseDetails struct {
	AutonomousDatabaseBase `json:",inline"`
	Id                     *string `json:"id,omitempty"`
}

func (*AutonomousDatabaseDetails) DeepCopy

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

func (*AutonomousDatabaseDetails) DeepCopyInto

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

type AutonomousDatabaseList

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

AutonomousDatabaseList contains a list of AutonomousDatabase

func (*AutonomousDatabaseList) DeepCopy

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

func (*AutonomousDatabaseList) DeepCopyInto

func (in *AutonomousDatabaseList) DeepCopyInto(out *AutonomousDatabaseList)

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

func (*AutonomousDatabaseList) DeepCopyObject

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

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

type AutonomousDatabaseRestore

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

	Spec   AutonomousDatabaseRestoreSpec   `json:"spec,omitempty"`
	Status AutonomousDatabaseRestoreStatus `json:"status,omitempty"`
}

AutonomousDatabaseRestore is the Schema for the autonomousdatabaserestores API

func (*AutonomousDatabaseRestore) DeepCopy

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

func (*AutonomousDatabaseRestore) DeepCopyInto

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

func (*AutonomousDatabaseRestore) DeepCopyObject

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

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

func (*AutonomousDatabaseRestore) GetPIT

GetPIT returns the spec.pointInTime.timeStamp in SDKTime format

func (*AutonomousDatabaseRestore) Hub

Implement conversion.Hub interface, which means any resource version can convert into v4

func (*AutonomousDatabaseRestore) SetupWebhookWithManager

func (r *AutonomousDatabaseRestore) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*AutonomousDatabaseRestore) UpdateStatus

func (*AutonomousDatabaseRestore) ValidateCreate

func (r *AutonomousDatabaseRestore) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousDatabaseRestore) ValidateDelete

func (r *AutonomousDatabaseRestore) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*AutonomousDatabaseRestore) ValidateUpdate

func (r *AutonomousDatabaseRestore) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type AutonomousDatabaseRestoreList

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

AutonomousDatabaseRestoreList contains a list of AutonomousDatabaseRestore

func (*AutonomousDatabaseRestoreList) DeepCopy

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

func (*AutonomousDatabaseRestoreList) DeepCopyInto

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

func (*AutonomousDatabaseRestoreList) DeepCopyObject

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

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

type AutonomousDatabaseRestoreSpec

type AutonomousDatabaseRestoreSpec struct {
	// INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Target    TargetSpec    `json:"target"`
	Source    SourceSpec    `json:"source"`
	OCIConfig OciConfigSpec `json:"ociConfig,omitempty"`
}

AutonomousDatabaseRestoreSpec defines the desired state of AutonomousDatabaseRestore

func (*AutonomousDatabaseRestoreSpec) DeepCopy

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

func (*AutonomousDatabaseRestoreSpec) DeepCopyInto

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

type AutonomousDatabaseRestoreStatus

type AutonomousDatabaseRestoreStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	DisplayName     string                             `json:"displayName"`
	TimeAccepted    string                             `json:"timeAccepted,omitempty"`
	TimeStarted     string                             `json:"timeStarted,omitempty"`
	TimeEnded       string                             `json:"timeEnded,omitempty"`
	DbName          string                             `json:"dbName"`
	WorkRequestOCID string                             `json:"workRequestOCID"`
	Status          workrequests.WorkRequestStatusEnum `json:"status"`
}

AutonomousDatabaseRestoreStatus defines the observed state of AutonomousDatabaseRestore

func (*AutonomousDatabaseRestoreStatus) DeepCopy

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

func (*AutonomousDatabaseRestoreStatus) DeepCopyInto

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

type AutonomousDatabaseSpec

type AutonomousDatabaseSpec struct {
	// +kubebuilder:validation:Enum:="";Create;Sync;Update;Stop;Start;Terminate;Clone
	Action    string                    `json:"action"`
	Details   AutonomousDatabaseDetails `json:"details,omitempty"`
	Clone     AutonomousDatabaseClone   `json:"clone,omitempty"`
	Wallet    WalletSpec                `json:"wallet,omitempty"`
	OciConfig OciConfigSpec             `json:"ociConfig,omitempty"`
	// +kubebuilder:default:=false
	HardLink *bool `json:"hardLink,omitempty"`
}

AutonomousDatabaseSpec defines the desired state of AutonomousDatabase Important: Run "make" to regenerate code after modifying this file

func (*AutonomousDatabaseSpec) DeepCopy

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

func (*AutonomousDatabaseSpec) DeepCopyInto

func (in *AutonomousDatabaseSpec) DeepCopyInto(out *AutonomousDatabaseSpec)

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

type AutonomousDatabaseStatus

type AutonomousDatabaseStatus struct {
	// Lifecycle State of the ADB
	LifecycleState database.AutonomousDatabaseLifecycleStateEnum `json:"lifecycleState,omitempty"`
	// Creation time of the ADB
	TimeCreated string `json:"timeCreated,omitempty"`
	// Expiring date of the instance wallet
	WalletExpiringDate string `json:"walletExpiringDate,omitempty"`
	// Connection Strings of the ADB
	AllConnectionStrings []ConnectionStringProfile `json:"allConnectionStrings,omitempty"`
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

AutonomousDatabaseStatus defines the observed state of AutonomousDatabase

func (*AutonomousDatabaseStatus) DeepCopy

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

func (*AutonomousDatabaseStatus) DeepCopyInto

func (in *AutonomousDatabaseStatus) DeepCopyInto(out *AutonomousDatabaseStatus)

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

type Backupconfig

type Backupconfig struct {
	AutoBackupEnabled        *bool   `json:"autoBackupEnabled,omitempty"`
	RecoveryWindowsInDays    *int    `json:"recoveryWindowsInDays,omitempty"`
	AutoBackupWindow         *string `json:"autoBackupWindow,omitempty"`
	BackupDestinationDetails *string `json:"backupDestinationDetails,omitempty"`
}

DB Backup Config Network Struct

func (*Backupconfig) DeepCopy

func (in *Backupconfig) DeepCopy() *Backupconfig

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

func (*Backupconfig) DeepCopyInto

func (in *Backupconfig) DeepCopyInto(out *Backupconfig)

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

type CDB

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

	Spec   CDBSpec   `json:"spec,omitempty"`
	Status CDBStatus `json:"status,omitempty"`
}

CDB is the Schema for the cdbs API

func (*CDB) DeepCopy

func (in *CDB) DeepCopy() *CDB

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

func (*CDB) DeepCopyInto

func (in *CDB) DeepCopyInto(out *CDB)

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

func (*CDB) DeepCopyObject

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

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

func (*CDB) Default

func (r *CDB) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*CDB) SetupWebhookWithManager

func (r *CDB) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*CDB) ValidateCreate

func (r *CDB) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*CDB) ValidateDelete

func (r *CDB) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*CDB) ValidateUpdate

func (r *CDB) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type CDBAdminPassword

type CDBAdminPassword struct {
	Secret CDBSecret `json:"secret"`
}

CDBAdminPassword defines the secret containing CDB Administrator Password mapped to key 'cdbAdminPwd' to manage PDB lifecycle

func (*CDBAdminPassword) DeepCopy

func (in *CDBAdminPassword) DeepCopy() *CDBAdminPassword

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

func (*CDBAdminPassword) DeepCopyInto

func (in *CDBAdminPassword) DeepCopyInto(out *CDBAdminPassword)

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

type CDBAdminUser

type CDBAdminUser struct {
	Secret CDBSecret `json:"secret"`
}

CDBAdminUser defines the secret containing CDB Administrator User mapped to key 'cdbAdminUser' to manage PDB lifecycle

func (*CDBAdminUser) DeepCopy

func (in *CDBAdminUser) DeepCopy() *CDBAdminUser

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

func (*CDBAdminUser) DeepCopyInto

func (in *CDBAdminUser) DeepCopyInto(out *CDBAdminUser)

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

type CDBList

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

CDBList contains a list of CDB

func (*CDBList) DeepCopy

func (in *CDBList) DeepCopy() *CDBList

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

func (*CDBList) DeepCopyInto

func (in *CDBList) DeepCopyInto(out *CDBList)

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

func (*CDBList) DeepCopyObject

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

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

type CDBPRIVKEY

type CDBPRIVKEY struct {
	Secret CDBSecret `json:"secret"`
}

func (*CDBPRIVKEY) DeepCopy

func (in *CDBPRIVKEY) DeepCopy() *CDBPRIVKEY

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

func (*CDBPRIVKEY) DeepCopyInto

func (in *CDBPRIVKEY) DeepCopyInto(out *CDBPRIVKEY)

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

type CDBPUBKEY

type CDBPUBKEY struct {
	Secret CDBSecret `json:"secret"`
}

func (*CDBPUBKEY) DeepCopy

func (in *CDBPUBKEY) DeepCopy() *CDBPUBKEY

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

func (*CDBPUBKEY) DeepCopyInto

func (in *CDBPUBKEY) DeepCopyInto(out *CDBPUBKEY)

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

type CDBSecret

type CDBSecret struct {
	SecretName string `json:"secretName"`
	Key        string `json:"key"`
}

CDBSecret defines the secretName

func (*CDBSecret) DeepCopy

func (in *CDBSecret) DeepCopy() *CDBSecret

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

func (*CDBSecret) DeepCopyInto

func (in *CDBSecret) DeepCopyInto(out *CDBSecret)

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

type CDBSpec

type CDBSpec struct {

	// Name of the CDB
	CDBName string `json:"cdbName,omitempty"`
	// Name of the CDB Service
	ServiceName string `json:"serviceName,omitempty"`

	// Password for the CDB System Administrator
	SysAdminPwd CDBSysAdminPassword `json:"sysAdminPwd,omitempty"`
	// User in the root container with sysdba priviledges to manage PDB lifecycle
	CDBAdminUser CDBAdminUser `json:"cdbAdminUser,omitempty"`
	// Password for the CDB Administrator to manage PDB lifecycle
	CDBAdminPwd CDBAdminPassword `json:"cdbAdminPwd,omitempty"`

	CDBTlsKey CDBTLSKEY `json:"cdbTlsKey,omitempty"`
	CDBTlsCrt CDBTLSCRT `json:"cdbTlsCrt,omitempty"`

	// Password for user ORDS_PUBLIC_USER
	ORDSPwd ORDSPassword `json:"ordsPwd,omitempty"`
	// ORDS server port. For now, keep it as 8888. TO BE USED IN FUTURE RELEASE.
	ORDSPort int `json:"ordsPort,omitempty"`
	// ORDS Image Name
	ORDSImage string `json:"ordsImage,omitempty"`
	// The name of the image pull secret in case of a private docker repository.
	ORDSImagePullSecret string `json:"ordsImagePullSecret,omitempty"`
	// ORDS Image Pull Policy
	// +kubebuilder:validation:Enum=Always;Never
	ORDSImagePullPolicy string `json:"ordsImagePullPolicy,omitempty"`
	// Number of ORDS Containers to create
	Replicas int `json:"replicas,omitempty"`
	// Web Server User with SQL Administrator role to allow us to authenticate to the PDB Lifecycle Management REST endpoints
	WebServerUser WebServerUser `json:"webServerUser,omitempty"`
	// Password for the Web Server User
	WebServerPwd WebServerPassword `json:"webServerPwd,omitempty"`
	// Name of the DB server
	DBServer string `json:"dbServer,omitempty"`
	// DB server port
	DBPort int `json:"dbPort,omitempty"`
	// Node Selector for running the Pod
	NodeSelector     map[string]string `json:"nodeSelector,omitempty"`
	DeletePDBCascade bool              `json:"deletePdbCascade,omitempty"`
	DBTnsurl         string            `json:"dbTnsurl,omitempty"`
	CDBPubKey        CDBPUBKEY         `json:"cdbOrdsPubKey,omitempty"`
	CDBPriKey        CDBPRIVKEY        `json:"cdbOrdsPrvKey,omitempty"`
}

CDBSpec defines the desired state of CDB

func (*CDBSpec) DeepCopy

func (in *CDBSpec) DeepCopy() *CDBSpec

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

func (*CDBSpec) DeepCopyInto

func (in *CDBSpec) DeepCopyInto(out *CDBSpec)

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

type CDBStatus

type CDBStatus struct {

	// Phase of the CDB Resource
	Phase string `json:"phase"`
	// CDB Resource Status
	Status bool `json:"status"`
	// Message
	Msg string `json:"msg,omitempty"`
}

CDBStatus defines the observed state of CDB

func (*CDBStatus) DeepCopy

func (in *CDBStatus) DeepCopy() *CDBStatus

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

func (*CDBStatus) DeepCopyInto

func (in *CDBStatus) DeepCopyInto(out *CDBStatus)

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

type CDBSysAdminPassword

type CDBSysAdminPassword struct {
	Secret CDBSecret `json:"secret"`
}

CDBSysAdminPassword defines the secret containing SysAdmin Password mapped to key 'sysAdminPwd' for CDB

func (*CDBSysAdminPassword) DeepCopy

func (in *CDBSysAdminPassword) DeepCopy() *CDBSysAdminPassword

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

func (*CDBSysAdminPassword) DeepCopyInto

func (in *CDBSysAdminPassword) DeepCopyInto(out *CDBSysAdminPassword)

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

type CDBTLSCRT

type CDBTLSCRT struct {
	Secret CDBSecret `json:"secret"`
}

func (*CDBTLSCRT) DeepCopy

func (in *CDBTLSCRT) DeepCopy() *CDBTLSCRT

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

func (*CDBTLSCRT) DeepCopyInto

func (in *CDBTLSCRT) DeepCopyInto(out *CDBTLSCRT)

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

type CDBTLSKEY

type CDBTLSKEY struct {
	Secret CDBSecret `json:"secret"`
}

func (*CDBTLSKEY) DeepCopy

func (in *CDBTLSKEY) DeepCopy() *CDBTLSKEY

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

func (*CDBTLSKEY) DeepCopyInto

func (in *CDBTLSKEY) DeepCopyInto(out *CDBTLSKEY)

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

type CatalogSpec

type CatalogSpec struct {
	Name             string                       `json:"name"`                                                      // Catalog name that will be used deploy StatefulSet
	StorageSizeInGb  int32                        `json:"storageSizeInGb,omitempty"`                                 // Optional Catalog Storage Size and This parameter will not be used if you use PvcName
	EnvVars          []EnvironmentVariable        `json:"envVars,omitempty"`                                         //Optional Env variables for Catalog
	Resources        *corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,1,opt,name=resources"` // Optional resource requirement for the container.
	PvcName          string                       `json:"pvcName,omitempty"`
	Label            string                       `json:"label,omitempty"`
	IsDelete         string                       `json:"isDelete,omitempty"`
	NodeSelector     map[string]string            `json:"nodeSelector,omitempty"`
	PvAnnotations    map[string]string            `json:"pvAnnotations,omitempty"`
	PvMatchLabels    map[string]string            `json:"pvMatchLabels,omitempty"`
	ImagePulllPolicy *corev1.PullPolicy           `json:"imagePullPolicy,omitempty"`
}

CatalogSpec defines the desired state of CatalogSpec +k8s:openapi-gen=true

func (*CatalogSpec) DeepCopy

func (in *CatalogSpec) DeepCopy() *CatalogSpec

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

func (*CatalogSpec) DeepCopyInto

func (in *CatalogSpec) DeepCopyInto(out *CatalogSpec)

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

type CertificateSecret

type CertificateSecret struct {
	// Specifies the name of the certificate Secret
	SecretName string `json:"secretName"`
	// Specifies the Certificate
	Certificate string `json:"cert"`
	// Specifies the Certificate Key
	CertificateKey string `json:"key"`
}

Defines the secret containing Certificates

func (*CertificateSecret) DeepCopy

func (in *CertificateSecret) DeepCopy() *CertificateSecret

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

func (*CertificateSecret) DeepCopyInto

func (in *CertificateSecret) DeepCopyInto(out *CertificateSecret)

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

type ConnectionStringProfile

type ConnectionStringProfile struct {
	TLSAuthentication TLSAuthenticationEnum  `json:"tlsAuthentication,omitempty"`
	ConnectionStrings []ConnectionStringSpec `json:"connectionStrings"`
}

func (*ConnectionStringProfile) DeepCopy

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

func (*ConnectionStringProfile) DeepCopyInto

func (in *ConnectionStringProfile) DeepCopyInto(out *ConnectionStringProfile)

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

type ConnectionStringSpec

type ConnectionStringSpec struct {
	TNSName          string `json:"tnsName,omitempty"`
	ConnectionString string `json:"connectionString,omitempty"`
}

func (*ConnectionStringSpec) DeepCopy

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

func (*ConnectionStringSpec) DeepCopyInto

func (in *ConnectionStringSpec) DeepCopyInto(out *ConnectionStringSpec)

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

type CrdReconcileState

type CrdReconcileState string
const (
	CrdReconcileErrorState     CrdReconcileState = "ReconcileError"
	CrdReconcileErrorReason    CrdReconcileState = "LastReconcileCycleFailed"
	CrdReconcileQueuedState    CrdReconcileState = "ReconcileQueued"
	CrdReconcileQueuedReason   CrdReconcileState = "LastReconcileCycleQueued"
	CrdReconcileCompeleteState CrdReconcileState = "ReconcileComplete"
	CrdReconcileCompleteReason CrdReconcileState = "LastReconcileCycleCompleted"
	CrdReconcileWaitingState   CrdReconcileState = "ReconcileWaiting"
	CrdReconcileWaitingReason  CrdReconcileState = "LastReconcileCycleWaiting"
)

type DBWalletSecret

type DBWalletSecret struct {
	// Specifies the name of the Database Wallet Secret
	SecretName string `json:"secretName"`
	// Specifies the Secret key name containing the Wallet
	WalletName string `json:"walletName"`
}

Defines the secret containing Certificates

func (*DBWalletSecret) DeepCopy

func (in *DBWalletSecret) DeepCopy() *DBWalletSecret

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

func (*DBWalletSecret) DeepCopyInto

func (in *DBWalletSecret) DeepCopyInto(out *DBWalletSecret)

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

type DataguardBroker

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

	Spec   DataguardBrokerSpec   `json:"spec,omitempty"`
	Status DataguardBrokerStatus `json:"status,omitempty"`
}

DataguardBroker is the Schema for the dataguardbrokers API +kubebuilder:storageversion

func (*DataguardBroker) DeepCopy

func (in *DataguardBroker) DeepCopy() *DataguardBroker

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

func (*DataguardBroker) DeepCopyInto

func (in *DataguardBroker) DeepCopyInto(out *DataguardBroker)

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

func (*DataguardBroker) DeepCopyObject

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

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

func (*DataguardBroker) GetCurrentPrimaryDatabase

func (broker *DataguardBroker) GetCurrentPrimaryDatabase() string

////////////////////////////////////////////////////////////////////////////////////////////////// Returns the current primary database in the dataguard configuration from the resource status/spec //////////////////////////////////////////////////////////////////////////////////////////////////

func (*DataguardBroker) GetDatabasesInDataGuardConfiguration

func (broker *DataguardBroker) GetDatabasesInDataGuardConfiguration() []string

////////////////////////////////////////////////////////////////////////////////////////////////// Returns databases in Dataguard configuration from the resource status/spec //////////////////////////////////////////////////////////////////////////////////////////////////

func (*DataguardBroker) GetStandbyDatabasesInDgConfig

func (broker *DataguardBroker) GetStandbyDatabasesInDgConfig() []string

////////////////////////////////////////////////////////////////////////////////////////////////// Returns standby databases in the dataguard configuration from the resource status/spec //////////////////////////////////////////////////////////////////////////////////////////////////

func (*DataguardBroker) Hub

func (*DataguardBroker) Hub()

Hub defines v1 as the hub version

func (*DataguardBroker) SetupWebhookWithManager

func (r *DataguardBroker) SetupWebhookWithManager(mgr ctrl.Manager) error

type DataguardBrokerList

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

DataguardBrokerList contains a list of DataguardBroker

func (*DataguardBrokerList) DeepCopy

func (in *DataguardBrokerList) DeepCopy() *DataguardBrokerList

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

func (*DataguardBrokerList) DeepCopyInto

func (in *DataguardBrokerList) DeepCopyInto(out *DataguardBrokerList)

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

func (*DataguardBrokerList) DeepCopyObject

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

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

type DataguardBrokerSpec

type DataguardBrokerSpec struct {
	PrimaryDatabaseRef   string            `json:"primaryDatabaseRef"`
	StandbyDatabaseRefs  []string          `json:"standbyDatabaseRefs"`
	SetAsPrimaryDatabase string            `json:"setAsPrimaryDatabase,omitempty"`
	LoadBalancer         bool              `json:"loadBalancer,omitempty"`
	ServiceAnnotations   map[string]string `json:"serviceAnnotations,omitempty"`
	// +kubebuilder:validation:Enum=MaxPerformance;MaxAvailability
	ProtectionMode string            `json:"protectionMode"`
	NodeSelector   map[string]string `json:"nodeSelector,omitempty"`

	FastStartFailover bool `json:"fastStartFailover,omitempty"`
}

DataguardBrokerSpec defines the desired state of DataguardBroker

func (*DataguardBrokerSpec) DeepCopy

func (in *DataguardBrokerSpec) DeepCopy() *DataguardBrokerSpec

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

func (*DataguardBrokerSpec) DeepCopyInto

func (in *DataguardBrokerSpec) DeepCopyInto(out *DataguardBrokerSpec)

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

type DataguardBrokerStatus

type DataguardBrokerStatus struct {
	PrimaryDatabaseRef    string `json:"primaryDatabaseRef,omitempty"`
	ProtectionMode        string `json:"protectionMode,omitempty"`
	PrimaryDatabase       string `json:"primaryDatabase,omitempty"`
	StandbyDatabases      string `json:"standbyDatabases,omitempty"`
	ExternalConnectString string `json:"externalConnectString,omitempty"`
	ClusterConnectString  string `json:"clusterConnectString,omitempty"`
	Status                string `json:"status,omitempty"`

	FastStartFailover          string            `json:"fastStartFailover,omitempty"`
	DatabasesInDataguardConfig map[string]string `json:"databasesInDataguardConfig,omitempty"`
}

DataguardBrokerStatus defines the observed state of DataguardBroker

func (*DataguardBrokerStatus) DeepCopy

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

func (*DataguardBrokerStatus) DeepCopyInto

func (in *DataguardBrokerStatus) DeepCopyInto(out *DataguardBrokerStatus)

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

type DbCloneConfig

type DbCloneConfig struct {
	DbAdminPasswordSecret      string   `json:"dbAdminPasswordSecret,omitempty"`
	TdeWalletPasswordSecret    string   `json:"tdeWalletPasswordSecret,omitempty"`
	DbName                     string   `json:"dbName"`
	HostName                   string   `json:"hostName"`
	DbUniqueName               string   `json:"dbDbUniqueName"`
	DisplayName                string   `json:"displayName"`
	LicenseModel               string   `json:"licenseModel,omitempty"`
	Domain                     string   `json:"domain,omitempty"`
	SshPublicKeys              []string `json:"sshPublicKeys,omitempty"`
	SubnetId                   string   `json:"subnetId"`
	SidPrefix                  string   `json:"sidPrefix,omitempty"`
	InitialDataStorageSizeInGB int      `json:"initialDataStorageSizeInGB,omitempty"`
	KmsKeyId                   string   `json:"kmsKeyId,omitempty"`
	KmsKeyVersionId            string   `json:"kmsKeyVersionId,omitempty"`
	PrivateIp                  string   `json:"privateIp,omitempty"`
}

DbCloneConfig defines the configuration for the database clone

func (*DbCloneConfig) DeepCopy

func (in *DbCloneConfig) DeepCopy() *DbCloneConfig

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

func (*DbCloneConfig) DeepCopyInto

func (in *DbCloneConfig) DeepCopyInto(out *DbCloneConfig)

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

type DbCloneStatus

type DbCloneStatus struct {
	Id                   *string  `json:"id,omitempty"`
	DbAdminPaswordSecret string   `json:"dbAdminPaswordSecret,omitempty"`
	DbName               string   `json:"dbName,omitempty"`
	HostName             string   `json:"hostName"`
	DbUniqueName         string   `json:"dbDbUniqueName"`
	DisplayName          string   `json:"displayName,omitempty"`
	LicenseModel         string   `json:"licenseModel,omitempty"`
	Domain               string   `json:"domain,omitempty"`
	SshPublicKeys        []string `json:"sshPublicKeys,omitempty"`
	SubnetId             string   `json:"subnetId,omitempty"`
}

DbCloneStatus defines the observed state of DbClone

func (*DbCloneStatus) DeepCopy

func (in *DbCloneStatus) DeepCopy() *DbCloneStatus

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

func (*DbCloneStatus) DeepCopyInto

func (in *DbCloneStatus) DeepCopyInto(out *DbCloneStatus)

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

type DbStatus

type DbStatus struct {
	Id           *string `json:"id,omitempty"`
	DbName       string  `json:"dbName,omitempty"`
	DbUniqueName string  `json:"dbUniqueName,omitempty"`
	DbWorkload   string  `json:"dbWorkload,omitempty"`
	DbHomeId     string  `json:"dbHomeId,omitempty"`
}

DbcsSystemStatus defines the observed state of DbcsSystem

func (*DbStatus) DeepCopy

func (in *DbStatus) DeepCopy() *DbStatus

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

func (*DbStatus) DeepCopyInto

func (in *DbStatus) DeepCopyInto(out *DbStatus)

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

type DbSystemDetails

type DbSystemDetails struct {
	CompartmentId              string            `json:"compartmentId"`
	AvailabilityDomain         string            `json:"availabilityDomain"`
	SubnetId                   string            `json:"subnetId"`
	Shape                      string            `json:"shape"`
	SshPublicKeys              []string          `json:"sshPublicKeys,omitempty"`
	HostName                   string            `json:"hostName"`
	CpuCoreCount               int               `json:"cpuCoreCount,omitempty"`
	FaultDomains               []string          `json:"faultDomains,omitempty"`
	DisplayName                string            `json:"displayName,omitempty"`
	BackupSubnetId             string            `json:"backupSubnetId,omitempty"`
	TimeZone                   string            `json:"timeZone,omitempty"`
	NodeCount                  *int              `json:"nodeCount,omitempty"`
	PrivateIp                  string            `json:"privateIp,omitempty"`
	Domain                     string            `json:"domain,omitempty"`
	InitialDataStorageSizeInGB int               `json:"initialDataStorageSizeInGB,omitempty"`
	ClusterName                string            `json:"clusterName,omitempty"`
	DbAdminPasswordSecret      string            `json:"dbAdminPasswordSecret"`
	DbName                     string            `json:"dbName,omitempty"`
	PdbName                    string            `json:"pdbName,omitempty"`
	DbDomain                   string            `json:"dbDomain,omitempty"`
	DbUniqueName               string            `json:"dbUniqueName,omitempty"`
	StorageManagement          string            `json:"storageManagement,omitempty"`
	DbVersion                  string            `json:"dbVersion,omitempty"`
	DbEdition                  string            `json:"dbEdition,omitempty"`
	DiskRedundancy             string            `json:"diskRedundancy,omitempty"`
	DbWorkload                 string            `json:"dbWorkload,omitempty"`
	LicenseModel               string            `json:"licenseModel,omitempty"`
	TdeWalletPasswordSecret    string            `json:"tdeWalletPasswordSecret,omitempty"`
	Tags                       map[string]string `json:"tags,omitempty"`
	DbBackupConfig             Backupconfig      `json:"dbBackupConfig,omitempty"`
	KMSConfig                  KMSConfig         `json:"kmsConfig,omitempty"`
}

func (*DbSystemDetails) DeepCopy

func (in *DbSystemDetails) DeepCopy() *DbSystemDetails

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

func (*DbSystemDetails) DeepCopyInto

func (in *DbSystemDetails) DeepCopyInto(out *DbSystemDetails)

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

type DbWorkrequests

type DbWorkrequests struct {
	OperationType   *string `json:"operationType,omitmpty"`
	OperationId     *string `json:"operationId,omitemty"`
	PercentComplete string  `json:"percentComplete,omitempty"`
	TimeAccepted    string  `json:"timeAccepted,omitempty"`
	TimeStarted     string  `json:"timeStarted,omitempty"`
	TimeFinished    string  `json:"timeFinished,omitempty"`
}

func (*DbWorkrequests) DeepCopy

func (in *DbWorkrequests) DeepCopy() *DbWorkrequests

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

func (*DbWorkrequests) DeepCopyInto

func (in *DbWorkrequests) DeepCopyInto(out *DbWorkrequests)

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

type DbcsSystem

type DbcsSystem struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DbcsSystemSpec   `json:"spec,omitempty"`
	Status            DbcsSystemStatus `json:"status,omitempty"`
}

DbcsSystem is the Schema for the dbcssystems API

func (*DbcsSystem) DeepCopy

func (in *DbcsSystem) DeepCopy() *DbcsSystem

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

func (*DbcsSystem) DeepCopyInto

func (in *DbcsSystem) DeepCopyInto(out *DbcsSystem)

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

func (*DbcsSystem) DeepCopyObject

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

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

func (*DbcsSystem) Default

func (r *DbcsSystem) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*DbcsSystem) GetLastSuccessfulKMSConfig

func (dbcs *DbcsSystem) GetLastSuccessfulKMSConfig() (*KMSConfig, error)

GetLastSuccessfulKMSConfig returns the KMS config from the last successful reconciliation. Returns nil, nil if there is no lastSuccessfulKMSConfig.

func (*DbcsSystem) GetLastSuccessfulKMSStatus

func (dbcs *DbcsSystem) GetLastSuccessfulKMSStatus() (*KMSDetailsStatus, error)

GetLastSuccessfulKMSStatus returns the KMS status from the last successful reconciliation. Returns nil, nil if there is no lastSuccessfulKMSStatus.

func (*DbcsSystem) GetLastSuccessfulSpec

func (dbcs *DbcsSystem) GetLastSuccessfulSpec() (*DbcsSystemSpec, error)

GetLastSuccessfulSpec returns spec from the lass successful reconciliation. Returns nil, nil if there is no lastSuccessfulSpec.

func (*DbcsSystem) GetLastSuccessfulSpecWithLog

func (dbcs *DbcsSystem) GetLastSuccessfulSpecWithLog(log logr.Logger) (*DbcsSystemSpec, error)

func (*DbcsSystem) Hub

func (*DbcsSystem) Hub()

Hub defines v1 as the hub version

func (*DbcsSystem) SetLastSuccessfulKMSConfig

func (dbcs *DbcsSystem) SetLastSuccessfulKMSConfig(kmsConfig *KMSConfig) error

SetLastSuccessfulKMSConfig saves the given KMSConfig to the annotations.

func (*DbcsSystem) SetLastSuccessfulKMSStatus

func (dbcs *DbcsSystem) SetLastSuccessfulKMSStatus(kmsStatus *KMSDetailsStatus) error

SetLastSuccessfulKMSStatus saves the given KMSDetailsStatus to the annotations.

func (*DbcsSystem) SetupWebhookWithManager

func (r *DbcsSystem) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*DbcsSystem) UpdateLastSuccessfulSpec

func (dbcs *DbcsSystem) UpdateLastSuccessfulSpec(kubeClient client.Client) error

UpdateLastSuccessfulSpec updates lastSuccessfulSpec with the current spec.

func (*DbcsSystem) ValidateCreate

func (r *DbcsSystem) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*DbcsSystem) ValidateDelete

func (r *DbcsSystem) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*DbcsSystem) ValidateUpdate

func (r *DbcsSystem) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

// ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type DbcsSystemList

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

DbcsSystemList contains a list of DbcsSystem

func (*DbcsSystemList) DeepCopy

func (in *DbcsSystemList) DeepCopy() *DbcsSystemList

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

func (*DbcsSystemList) DeepCopyInto

func (in *DbcsSystemList) DeepCopyInto(out *DbcsSystemList)

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

func (*DbcsSystemList) DeepCopyObject

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

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

type DbcsSystemSpec

type DbcsSystemSpec struct {
	DbSystem       DbSystemDetails `json:"dbSystem,omitempty"`
	Id             *string         `json:"id,omitempty"`
	OCIConfigMap   *string         `json:"ociConfigMap"`
	OCISecret      *string         `json:"ociSecret,omitempty"`
	DbClone        *DbCloneConfig  `json:"dbClone,omitempty"`
	HardLink       bool            `json:"hardLink,omitempty"`
	PdbConfigs     []PDBConfig     `json:"pdbConfigs,omitempty"`
	SetupDBCloning bool            `json:"setupDBCloning,omitempty"`
	DbBackupId     *string         `json:"dbBackupId,omitempty"`
	DatabaseId     *string         `json:"databaseId,omitempty"`
	KMSConfig      KMSConfig       `json:"kmsConfig,omitempty"`
}

DbcsSystemSpec defines the desired state of DbcsSystem

func (*DbcsSystemSpec) DeepCopy

func (in *DbcsSystemSpec) DeepCopy() *DbcsSystemSpec

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

func (*DbcsSystemSpec) DeepCopyInto

func (in *DbcsSystemSpec) DeepCopyInto(out *DbcsSystemSpec)

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

type DbcsSystemStatus

type DbcsSystemStatus struct {
	Id                 *string `json:"id,omitempty"`
	DisplayName        string  `json:"displayName,omitempty"`
	AvailabilityDomain string  `json:"availabilityDomain,omitempty"`
	SubnetId           string  `json:"subnetId,omitempty"`
	StorageManagement  string  `json:"storageManagement,omitempty"`
	NodeCount          int     `json:"nodeCount,omitempty"`
	CpuCoreCount       int     `json:"cpuCoreCount,omitempty"`

	DbEdition             string `json:"dbEdition,omitempty"`
	TimeZone              string `json:"timeZone,omitempty"`
	DataStoragePercentage *int   `json:"dataStoragePercentage,omitempty"`
	LicenseModel          string `json:"licenseModel,omitempty"`
	DataStorageSizeInGBs  *int   `json:"dataStorageSizeInGBs,omitempty"`
	RecoStorageSizeInGB   *int   `json:"recoStorageSizeInGB,omitempty"`

	Shape            *string            `json:"shape,omitempty"`
	State            LifecycleState     `json:"state"`
	DbInfo           []DbStatus         `json:"dbInfo,omitempty"`
	Network          VmNetworkDetails   `json:"network,omitempty"`
	WorkRequests     []DbWorkrequests   `json:"workRequests,omitempty"`
	KMSDetailsStatus KMSDetailsStatus   `json:"kmsDetailsStatus,omitempty"`
	DbCloneStatus    DbCloneStatus      `json:"dbCloneStatus,omitempty"`
	PdbDetailsStatus []PDBDetailsStatus `json:"pdbDetailsStatus,omitempty"`
}

DbcsSystemStatus defines the observed state of DbcsSystem

func (*DbcsSystemStatus) DeepCopy

func (in *DbcsSystemStatus) DeepCopy() *DbcsSystemStatus

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

func (*DbcsSystemStatus) DeepCopyInto

func (in *DbcsSystemStatus) DeepCopyInto(out *DbcsSystemStatus)

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

type EnvironmentVariable

type EnvironmentVariable struct {
	Name  string `json:"name"`  // Name of the variable. Must be a C_IDENTIFIER.
	Value string `json:"value"` // Value of the variable, as defined in Kubernetes core API.
}

EnvironmentVariable represents a named variable accessible for containers. +k8s:openapi-gen=true

func (*EnvironmentVariable) DeepCopy

func (in *EnvironmentVariable) DeepCopy() *EnvironmentVariable

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

func (*EnvironmentVariable) DeepCopyInto

func (in *EnvironmentVariable) DeepCopyInto(out *EnvironmentVariable)

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

type GlobalSettings

type GlobalSettings struct {
	// Specifies the setting to enable or disable metadata caching.
	CacheMetadataEnabled *bool `json:"cache.metadata.enabled,omitempty"`

	// Specifies the duration after a GraphQL schema is not accessed from the cache that it expires.
	CacheMetadataGraphQLExpireAfterAccess *time.Duration `json:"cache.metadata.graphql.expireAfterAccess,omitempty"`

	// Specifies the duration after a GraphQL schema is cached that it expires and has to be loaded again.
	CacheMetadataGraphQLExpireAfterWrite *time.Duration `json:"cache.metadata.graphql.expireAfterWrite,omitempty"`

	// Specifies the setting to determine for how long a metadata record remains in the cache.
	// Longer duration means, it takes longer to view the applied changes.
	// The formats accepted are based on the ISO-8601 duration format.
	CacheMetadataTimeout *time.Duration `json:"cache.metadata.timeout,omitempty"`

	// Specifies the setting to enable or disable JWKS caching.
	CacheMetadataJWKSEnabled *bool `json:"cache.metadata.jwks.enabled,omitempty"`

	// Specifies the initial capacity of the JWKS cache.
	CacheMetadataJWKSInitialCapacity *int32 `json:"cache.metadata.jwks.initialCapacity,omitempty"`

	// Specifies the maximum capacity of the JWKS cache.
	CacheMetadataJWKSMaximumSize *int32 `json:"cache.metadata.jwks.maximumSize,omitempty"`

	// Specifies the duration after a JWK is not accessed from the cache that it expires.
	// By default this is disabled.
	CacheMetadataJWKSExpireAfterAccess *time.Duration `json:"cache.metadata.jwks.expireAfterAccess,omitempty"`

	// Specifies the duration after a JWK is cached, that is, it expires and has to be loaded again.
	CacheMetadataJWKSExpireAfterWrite *time.Duration `json:"cache.metadata.jwks.expireAfterWrite,omitempty"`

	// Specifies whether the Database API is enabled.
	DatabaseAPIEnabled *bool `json:"database.api.enabled,omitempty"`

	// Specifies to disable the Database API administration related services.
	// Only applicable when Database API is enabled.
	DatabaseAPIManagementServicesDisabled *bool `json:"database.api.management.services.disabled,omitempty"`

	// Specifies how long to wait before retrying an invalid pool.
	DBInvalidPoolTimeout *time.Duration `json:"db.invalidPoolTimeout,omitempty"`

	// Specifies the maximum join nesting depth limit for GraphQL queries.
	FeatureGraphQLMaxNestingDepth *int32 `json:"feature.grahpql.max.nesting.depth,omitempty"`

	// Specifies the name of the HTTP request header that uniquely identifies the request end to end as
	// it passes through the various layers of the application stack.
	// In Oracle this header is commonly referred to as the ECID (Entity Context ID).
	RequestTraceHeaderName string `json:"request.traceHeaderName,omitempty"`

	// Specifies the maximum number of unsuccessful password attempts allowed.
	// Enabled by setting a positive integer value.
	SecurityCredentialsAttempts *int32 `json:"security.credentials.attempts,omitempty"`

	// Specifies the period to lock the account that has exceeded maximum attempts.
	SecurityCredentialsLockTime *time.Duration `json:"security.credentials.lock.time,omitempty"`

	// Specifies the HTTP listen port.
	//+kubebuilder:default:=8080
	StandaloneHTTPPort *int32 `json:"standalone.http.port,omitempty"`

	// Specifies the SSL certificate hostname.
	StandaloneHTTPSHost string `json:"standalone.https.host,omitempty"`

	// Specifies the HTTPS listen port.
	//+kubebuilder:default:=8443
	StandaloneHTTPSPort *int32 `json:"standalone.https.port,omitempty"`

	// Specifies the period for Standalone Mode to wait until it is gracefully shutdown.
	StandaloneStopTimeout *time.Duration `json:"standalone.stop.timeout,omitempty"`

	// Specifies whether to display error messages on the browser.
	DebugPrintDebugToScreen *bool `json:"debug.printDebugToScreen,omitempty"`

	// Specifies how the HTTP error responses must be formatted.
	// html - Force all responses to be in HTML format
	// json - Force all responses to be in JSON format
	// auto - Automatically determines most appropriate format for the request (default).
	ErrorResponseFormat string `json:"error.responseFormat,omitempty"`

	// Specifies the Internet Content Adaptation Protocol (ICAP) port to virus scan files.
	// Either icap.port or icap.secure.port are required to have a value.
	ICAPPort *int32 `json:"icap.port,omitempty"`

	// Specifies the Internet Content Adaptation Protocol (ICAP) port to virus scan files.
	// Either icap.port or icap.secure.port are required to have a value.
	// If values for both icap.port and icap.secure.port are provided, then the value of icap.port is ignored.
	ICAPSecurePort *int32 `json:"icap.secure.port,omitempty"`

	// Specifies the Internet Content Adaptation Protocol (ICAP) server name or IP address to virus scan files.
	// The icap.server is required to have a value.
	ICAPServer string `json:"icap.server,omitempty"`

	// Specifies whether procedures are to be logged.
	LogProcedure bool `json:"log.procedure,omitempty"`

	// Specifies to enable the API for MongoDB.
	//+kubebuider:default=false
	MongoEnabled bool `json:"mongo.enabled,omitempty"`

	// Specifies the API for MongoDB listen port.
	//+kubebuilder:default:=27017
	MongoPort *int32 `json:"mongo.port,omitempty"`

	// Specifies the maximum idle time for a Mongo connection in milliseconds.
	MongoIdleTimeout *time.Duration `json:"mongo.idle.timeout,omitempty"`

	// Specifies the maximum time for a Mongo database operation in milliseconds.
	MongoOpTimeout *time.Duration `json:"mongo.op.timeout,omitempty"`

	// If this value is set to true, then the Oracle REST Data Services internal exclusion list is not enforced.
	// Oracle recommends that you do not set this value to true.
	SecurityDisableDefaultExclusionList *bool `json:"security.disableDefaultExclusionList,omitempty"`

	// Specifies a pattern for procedures, packages, or schema names which are forbidden to be directly executed from a browser.
	SecurityExclusionList string `json:"security.exclusionList,omitempty"`

	// Specifies a pattern for procedures, packages, or schema names which are allowed to be directly executed from a browser.
	SecurityInclusionList string `json:"security.inclusionList,omitempty"`

	// Specifies the maximum number of cached procedure validations.
	// Set this value to 0 to force the validation procedure to be invoked on each request.
	SecurityMaxEntries *int32 `json:"security.maxEntries,omitempty"`

	// Specifies whether HTTPS is available in your environment.
	SecurityVerifySSL *bool `json:"security.verifySSL,omitempty"`

	// Specifies the context path where ords is located.
	//+kubebuilder:default:="/ords"
	StandaloneContextPath string `json:"standalone.context.path,omitempty"`

	// Specifies that the HTTP Header contains the specified text
	// Usually set to 'X-Forwarded-Proto: https' coming from a load-balancer
	SecurityHTTPSHeaderCheck string `json:"security.httpsHeaderCheck,omitempty"`

	// Specifies to force HTTPS; this is set to default to false as in real-world TLS should
	// terminiate at the LoadBalancer
	SecurityForceHTTPS bool `json:"security.forceHTTPS,omitempty"`

	// Specifies to trust Access from originating domains
	SecuirtyExternalSessionTrustedOrigins string `json:"security.externalSessionTrustedOrigins,omitempty"`

	// Specifies if HTTP request access logs should be enabled
	// If enabled, logs will be written to /opt/oracle/sa/log/global
	//+kubebuilder:default:=false
	EnableStandaloneAccessLog bool `json:"enable.standalone.access.log,omitempty"`

	// Specifies if HTTP request access logs should be enabled
	// If enabled, logs will be written to /opt/oracle/sa/log/global
	//+kubebuilder:default:=false
	EnableMongoAccessLog bool `json:"enable.mongo.access.log,omitempty"`

	// Specifies the Secret containing the SSL Certificates
	// Replaces: standalone.https.cert and standalone.https.cert.key
	CertSecret *CertificateSecret `json:"certSecret,omitempty"`
}

func (*GlobalSettings) DeepCopy

func (in *GlobalSettings) DeepCopy() *GlobalSettings

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

func (*GlobalSettings) DeepCopyInto

func (in *GlobalSettings) DeepCopyInto(out *GlobalSettings)

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

type GsmServiceSpec

type GsmServiceSpec struct {
	Name                 string `json:"name"` // Name of the shardSpace.
	Available            string `json:"available,omitempty"`
	ClbGoal              string `json:"clbGoal,omitempty"`
	CommitOutcome        string `json:"commitOutcome,omitempty"`
	DrainTimeout         string `json:"drainTimeout,omitempty"`
	Dtp                  string `json:"dtp,omitempty"`
	Edition              string `json:"edition,omitempty"`
	FailoverPrimary      string `json:"failoverPrimary,omitempty"`
	FailoverRestore      string `json:"failoverRestore,omitempty"`
	FailoverDelay        string `json:"failoverDelay,omitempty"`
	FailoverMethod       string `json:"failoverMethod,omitempty"`
	FailoverRetry        string `json:"failoverRetry,omitempty"`
	FailoverType         string `json:"failoverType,omitempty"`
	GdsPool              string `json:"gdsPool,omitempty"`
	Role                 string `json:"role,omitempty"`
	SessionState         string `json:"sessionState,omitempty"`
	Lag                  int    `json:"lag,omitempty"`
	Locality             string `json:"locality,omitempty"`
	Notification         string `json:"notification,omitempty"`
	PdbName              string `json:"pdbName,omitempty"`
	Policy               string `json:"policy,omitempty"`
	Preferrred           string `json:"preferred,omitempty"`
	PreferredAll         string `json:"prferredAll,omitempty"`
	RegionFailover       string `json:"regionFailover,omitempty"`
	StopOption           string `json:"stopOption,omitempty"`
	SqlTrasactionProfile string `json:"sqlTransactionProfile,omitempty"`
	TableFamily          string `json:"tableFamily,omitempty"`
	Retention            string `json:"retention,omitempty"`
	TfaPolicy            string `json:"tfaPolicy,omitempty"`
}

Service Definition

func (*GsmServiceSpec) DeepCopy

func (in *GsmServiceSpec) DeepCopy() *GsmServiceSpec

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

func (*GsmServiceSpec) DeepCopyInto

func (in *GsmServiceSpec) DeepCopyInto(out *GsmServiceSpec)

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

type GsmShardDetails

type GsmShardDetails struct {
	Name      string `json:"name,omitempty"`
	Available string `json:"available,omitempty"`
	State     string `json:"State,omitempty"`
}

func (*GsmShardDetails) DeepCopy

func (in *GsmShardDetails) DeepCopy() *GsmShardDetails

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

func (*GsmShardDetails) DeepCopyInto

func (in *GsmShardDetails) DeepCopyInto(out *GsmShardDetails)

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

type GsmShardGroupSpec

type GsmShardGroupSpec struct {
	Name     string `json:"name"` // Name of the shardgroup.
	Region   string `json:"region,omitempty"`
	DeployAs string `json:"deployAs,omitempty"`
}

func (*GsmShardGroupSpec) DeepCopy

func (in *GsmShardGroupSpec) DeepCopy() *GsmShardGroupSpec

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

func (*GsmShardGroupSpec) DeepCopyInto

func (in *GsmShardGroupSpec) DeepCopyInto(out *GsmShardGroupSpec)

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

type GsmShardSpaceSpec

type GsmShardSpaceSpec struct {
	Name           string `json:"name"`                     // Name of the shardSpace.
	Chunks         int    `json:"chunks,omitempty"`         //chunks is optional
	ProtectionMode string `json:"protectionMode,omitempty"` // Data guard protection mode
	ShardGroup     string `json:"shardGroup,omitempty"`
}

ShardSpace Specs

func (*GsmShardSpaceSpec) DeepCopy

func (in *GsmShardSpaceSpec) DeepCopy() *GsmShardSpaceSpec

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

func (*GsmShardSpaceSpec) DeepCopyInto

func (in *GsmShardSpaceSpec) DeepCopyInto(out *GsmShardSpaceSpec)

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

type GsmSpec

type GsmSpec struct {
	Name string `json:"name"` // Gsm name that will be used deploy StatefulSet

	//Replicas         int32                        `json:"replicas,omitempty"`                                        // Gsm Replicas. If you set OraGsmPvcName then it is set default to 1.
	EnvVars          []EnvironmentVariable        `json:"envVars,omitempty"`                                         //Optional Env variables for GSM
	StorageSizeInGb  int32                        `json:"storageSizeInGb,omitempty"`                                 // This parameter will not be used if you use OraGsmPvcName
	Resources        *corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,1,opt,name=resources"` // Optional resource requirement for the container.
	PvcName          string                       `json:"pvcName,omitempty"`
	Label            string                       `json:"label,omitempty"` // Optional GSM Label
	IsDelete         string                       `json:"isDelete,omitempty"`
	NodeSelector     map[string]string            `json:"nodeSelector,omitempty"`
	PvAnnotations    map[string]string            `json:"pvAnnotations,omitempty"`
	PvMatchLabels    map[string]string            `json:"pvMatchLabels,omitempty"`
	ImagePulllPolicy *corev1.PullPolicy           `json:"imagePullPolicy,omitempty"`
	Region           string                       `json:"region,omitempty"`
	DirectorName     string                       `json:"directorName,omitempty"`
}

GsmSpec defines the desired state of GsmSpec +k8s:openapi-gen=true

func (*GsmSpec) DeepCopy

func (in *GsmSpec) DeepCopy() *GsmSpec

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

func (*GsmSpec) DeepCopyInto

func (in *GsmSpec) DeepCopyInto(out *GsmSpec)

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

type GsmStatus

type GsmStatus struct {
	InternalconnectStr string            `json:"internalConnectStr,omitempty"`
	ExternalConnectStr string            `json:"externalConnectStr,omitempty"`
	State              string            `json:"state,omitempty"`
	Shards             map[string]string `json:"shards,omitempty"`
	Details            map[string]string `json:"details,omitempty"`
	Services           string            `json:"services,omitempty"`
}

func (*GsmStatus) DeepCopy

func (in *GsmStatus) DeepCopy() *GsmStatus

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

func (*GsmStatus) DeepCopyInto

func (in *GsmStatus) DeepCopyInto(out *GsmStatus)

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

type GsmStatusDetails

type GsmStatusDetails struct {
	Name             string `json:"name,omitempty"`
	K8sInternalSvc   string `json:"k8sInternalSvc,omitempty"`
	K8sExternalSvc   string `json:"k8sExternalSvc,omitempty"`
	K8sInternalSvcIP string `json:"k8sInternalIP,omitempty"`
	K8sExternalSvcIP string `json:"k8sExternalIP,omitempty"`
	Role             string `json:"role,omitempty"`
	DbPasswordSecret string `json:"dbPasswordSecret"`
}

func (*GsmStatusDetails) DeepCopy

func (in *GsmStatusDetails) DeepCopy() *GsmStatusDetails

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

func (*GsmStatusDetails) DeepCopyInto

func (in *GsmStatusDetails) DeepCopyInto(out *GsmStatusDetails)

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

type K8sADBBackupSpec

type K8sADBBackupSpec struct {
	Name *string `json:"name,omitempty"`
}

EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN! NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized.

func (*K8sADBBackupSpec) DeepCopy

func (in *K8sADBBackupSpec) DeepCopy() *K8sADBBackupSpec

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

func (*K8sADBBackupSpec) DeepCopyInto

func (in *K8sADBBackupSpec) DeepCopyInto(out *K8sADBBackupSpec)

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

type K8sAcdSpec

type K8sAcdSpec struct {
	Name *string `json:"name,omitempty"`
}

*********************** * ACD specs ***********************

func (*K8sAcdSpec) DeepCopy

func (in *K8sAcdSpec) DeepCopy() *K8sAcdSpec

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

func (*K8sAcdSpec) DeepCopyInto

func (in *K8sAcdSpec) DeepCopyInto(out *K8sAcdSpec)

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

type K8sAdbSpec

type K8sAdbSpec struct {
	Name *string `json:"name,omitempty"`
}

*********************** * ADB spec ***********************

func (*K8sAdbSpec) DeepCopy

func (in *K8sAdbSpec) DeepCopy() *K8sAdbSpec

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

func (*K8sAdbSpec) DeepCopyInto

func (in *K8sAdbSpec) DeepCopyInto(out *K8sAdbSpec)

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

type K8sSecretSpec

type K8sSecretSpec struct {
	Name *string `json:"name,omitempty"`
}

*********************** * Secret specs ***********************

func (*K8sSecretSpec) DeepCopy

func (in *K8sSecretSpec) DeepCopy() *K8sSecretSpec

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

func (*K8sSecretSpec) DeepCopyInto

func (in *K8sSecretSpec) DeepCopyInto(out *K8sSecretSpec)

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

type KMSConfig

type KMSConfig struct {
	VaultName      string `json:"vaultName,omitempty"`
	CompartmentId  string `json:"compartmentId,omitempty"`
	KeyName        string `json:"keyName,omitempty"`
	EncryptionAlgo string `json:"encryptionAlgo,omitempty"`
	VaultType      string `json:"vaultType,omitempty"`
}

func (*KMSConfig) DeepCopy

func (in *KMSConfig) DeepCopy() *KMSConfig

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

func (*KMSConfig) DeepCopyInto

func (in *KMSConfig) DeepCopyInto(out *KMSConfig)

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

type KMSDetailsStatus

type KMSDetailsStatus struct {
	VaultId            string `json:"vaultId,omitempty"`
	ManagementEndpoint string `json:"managementEndpoint,omitempty"`
	KeyId              string `json:"keyId,omitempty"`
	VaultName          string `json:"vaultName,omitempty"`
	CompartmentId      string `json:"compartmentId,omitempty"`
	KeyName            string `json:"keyName,omitempty"`
	EncryptionAlgo     string `json:"encryptionAlgo,omitempty"`
	VaultType          string `json:"vaultType,omitempty"`
}

func (*KMSDetailsStatus) DeepCopy

func (in *KMSDetailsStatus) DeepCopy() *KMSDetailsStatus

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

func (*KMSDetailsStatus) DeepCopyInto

func (in *KMSDetailsStatus) DeepCopyInto(out *KMSDetailsStatus)

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

type LREST

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

	Spec   LRESTSpec   `json:"spec,omitempty"`
	Status LRESTStatus `json:"status,omitempty"`
}

LREST is the Schema for the lrests API

func (*LREST) DeepCopy

func (in *LREST) DeepCopy() *LREST

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

func (*LREST) DeepCopyInto

func (in *LREST) DeepCopyInto(out *LREST)

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

func (*LREST) DeepCopyObject

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

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

func (*LREST) Default

func (r *LREST) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*LREST) SetupWebhookWithManager

func (r *LREST) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*LREST) ValidateCreate

func (r *LREST) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*LREST) ValidateDelete

func (r *LREST) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*LREST) ValidateUpdate

func (r *LREST) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type LRESTAdminPassword

type LRESTAdminPassword struct {
	Secret LRESTSecret `json:"secret"`
}

LRESTAdminPassword defines the secret containing LREST Administrator Password mapped to key 'lrestAdminPwd' to manage PDB lifecycle

func (*LRESTAdminPassword) DeepCopy

func (in *LRESTAdminPassword) DeepCopy() *LRESTAdminPassword

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

func (*LRESTAdminPassword) DeepCopyInto

func (in *LRESTAdminPassword) DeepCopyInto(out *LRESTAdminPassword)

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

type LRESTAdminUser

type LRESTAdminUser struct {
	Secret LRESTSecret `json:"secret"`
}

LRESTAdminUser defines the secret containing LREST Administrator User mapped to key 'lrestAdminUser' to manage PDB lifecycle

func (*LRESTAdminUser) DeepCopy

func (in *LRESTAdminUser) DeepCopy() *LRESTAdminUser

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

func (*LRESTAdminUser) DeepCopyInto

func (in *LRESTAdminUser) DeepCopyInto(out *LRESTAdminUser)

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

type LRESTList

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

LRESTList contains a list of LREST

func (*LRESTList) DeepCopy

func (in *LRESTList) DeepCopy() *LRESTList

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

func (*LRESTList) DeepCopyInto

func (in *LRESTList) DeepCopyInto(out *LRESTList)

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

func (*LRESTList) DeepCopyObject

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

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

type LRESTPRVKEY

type LRESTPRVKEY struct {
	Secret LRESTSecret `json:"secret"`
}

func (*LRESTPRVKEY) DeepCopy

func (in *LRESTPRVKEY) DeepCopy() *LRESTPRVKEY

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

func (*LRESTPRVKEY) DeepCopyInto

func (in *LRESTPRVKEY) DeepCopyInto(out *LRESTPRVKEY)

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

type LRESTPUBKEY

type LRESTPUBKEY struct {
	Secret LRESTSecret `json:"secret"`
}

func (*LRESTPUBKEY) DeepCopy

func (in *LRESTPUBKEY) DeepCopy() *LRESTPUBKEY

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

func (*LRESTPUBKEY) DeepCopyInto

func (in *LRESTPUBKEY) DeepCopyInto(out *LRESTPUBKEY)

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

type LRESTPassword

type LRESTPassword struct {
	Secret LRESTSecret `json:"secret"`
}

LRESTPassword defines the secret containing LREST_PUBLIC_USER Password mapped to key 'ordsPwd'

func (*LRESTPassword) DeepCopy

func (in *LRESTPassword) DeepCopy() *LRESTPassword

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

func (*LRESTPassword) DeepCopyInto

func (in *LRESTPassword) DeepCopyInto(out *LRESTPassword)

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

type LRESTSecret

type LRESTSecret struct {
	SecretName string `json:"secretName"`
	Key        string `json:"key"`
}

LRESTSecret defines the secretName

func (*LRESTSecret) DeepCopy

func (in *LRESTSecret) DeepCopy() *LRESTSecret

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

func (*LRESTSecret) DeepCopyInto

func (in *LRESTSecret) DeepCopyInto(out *LRESTSecret)

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

type LRESTSpec

type LRESTSpec struct {

	// Name of the LREST
	LRESTName string `json:"cdbName,omitempty"`
	// Name of the LREST Service
	ServiceName string `json:"serviceName,omitempty"`

	// Password for the LREST System Administrator
	SysAdminPwd LRESTSysAdminPassword `json:"sysAdminPwd,omitempty"`
	// User in the root container with sysdba priviledges to manage PDB lifecycle
	LRESTAdminUser LRESTAdminUser `json:"cdbAdminUser,omitempty"`
	// Password for the LREST Administrator to manage PDB lifecycle
	LRESTAdminPwd LRESTAdminPassword `json:"cdbAdminPwd,omitempty"`

	LRESTTlsKey LRESTTLSKEY `json:"cdbTlsKey,omitempty"`
	LRESTTlsCrt LRESTTLSCRT `json:"cdbTlsCrt,omitempty"`
	LRESTPubKey LRESTPUBKEY `json:"cdbPubKey,omitempty"`
	LRESTPriKey LRESTPRVKEY `json:"cdbPrvKey,omitempty"`

	// Password for user LREST_PUBLIC_USER
	LRESTPwd LRESTPassword `json:"lrestPwd,omitempty"`
	// LREST server port. For now, keep it as 8888. TO BE USED IN FUTURE RELEASE.
	LRESTPort int `json:"lrestPort,omitempty"`
	// LREST Image Name
	LRESTImage string `json:"lrestImage,omitempty"`
	// The name of the image pull secret in case of a private docker repository.
	LRESTImagePullSecret string `json:"lrestImagePullSecret,omitempty"`
	// LREST Image Pull Policy
	// +kubebuilder:validation:Enum=Always;Never
	LRESTImagePullPolicy string `json:"lrestImagePullPolicy,omitempty"`
	// Number of LREST Containers to create
	Replicas int `json:"replicas,omitempty"`
	// Web Server User with SQL Administrator role to allow us to authenticate to the PDB Lifecycle Management REST endpoints
	WebLrestServerUser WebLrestServerUser `json:"webServerUser,omitempty"`
	// Password for the Web Server User
	WebLrestServerPwd WebLrestServerPassword `json:"webServerPwd,omitempty"`
	// Name of the DB server
	DBServer string `json:"dbServer,omitempty"`
	// DB server port
	DBPort int `json:"dbPort,omitempty"`
	// Node Selector for running the Pod
	NodeSelector     map[string]string `json:"nodeSelector,omitempty"`
	DBTnsurl         string            `json:"dbTnsurl,omitempty"`
	DeletePDBCascade bool              `json:"deletePdbCascade,omitempty"`
}

LRESTSpec defines the desired state of LREST

func (*LRESTSpec) DeepCopy

func (in *LRESTSpec) DeepCopy() *LRESTSpec

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

func (*LRESTSpec) DeepCopyInto

func (in *LRESTSpec) DeepCopyInto(out *LRESTSpec)

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

type LRESTStatus

type LRESTStatus struct {

	// Phase of the LREST Resource
	Phase string `json:"phase"`
	// LREST Resource Status
	Status bool `json:"status"`
	// Message
	Msg string `json:"msg,omitempty"`
}

LRESTStatus defines the observed state of LREST

func (*LRESTStatus) DeepCopy

func (in *LRESTStatus) DeepCopy() *LRESTStatus

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

func (*LRESTStatus) DeepCopyInto

func (in *LRESTStatus) DeepCopyInto(out *LRESTStatus)

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

type LRESTSysAdminPassword

type LRESTSysAdminPassword struct {
	Secret LRESTSecret `json:"secret"`
}

LRESTSysAdminPassword defines the secret containing SysAdmin Password mapped to key 'sysAdminPwd' for LREST

func (*LRESTSysAdminPassword) DeepCopy

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

func (*LRESTSysAdminPassword) DeepCopyInto

func (in *LRESTSysAdminPassword) DeepCopyInto(out *LRESTSysAdminPassword)

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

type LRESTTLSCRT

type LRESTTLSCRT struct {
	Secret LRESTSecret `json:"secret"`
}

func (*LRESTTLSCRT) DeepCopy

func (in *LRESTTLSCRT) DeepCopy() *LRESTTLSCRT

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

func (*LRESTTLSCRT) DeepCopyInto

func (in *LRESTTLSCRT) DeepCopyInto(out *LRESTTLSCRT)

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

type LRESTTLSKEY

type LRESTTLSKEY struct {
	Secret LRESTSecret `json:"secret"`
}

func (*LRESTTLSKEY) DeepCopy

func (in *LRESTTLSKEY) DeepCopy() *LRESTTLSKEY

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

func (*LRESTTLSKEY) DeepCopyInto

func (in *LRESTTLSKEY) DeepCopyInto(out *LRESTTLSKEY)

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

type LRPDB

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

	Spec   LRPDBSpec   `json:"spec,omitempty"`
	Status LRPDBStatus `json:"status,omitempty"`
}

LRPDB is the Schema for the pdbs API

func (*LRPDB) CheckObjExistence

func (r *LRPDB) CheckObjExistence(action string, allErrs *field.ErrorList, ctx context.Context, pdb LRPDB)

func (*LRPDB) DeepCopy

func (in *LRPDB) DeepCopy() *LRPDB

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

func (*LRPDB) DeepCopyInto

func (in *LRPDB) DeepCopyInto(out *LRPDB)

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

func (*LRPDB) DeepCopyObject

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

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

func (*LRPDB) Default

func (r *LRPDB) Default(ctx context.Context, obj runtime.Object) error

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*LRPDB) SetupWebhookWithManager

func (r *LRPDB) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*LRPDB) ValidateCreate

func (r *LRPDB) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*LRPDB) ValidateDelete

func (r *LRPDB) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*LRPDB) ValidateUpdate

func (r *LRPDB) ValidateUpdate(ctx context.Context, obj runtime.Object, old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type LRPDBAdminName

type LRPDBAdminName struct {
	Secret LRPDBSecret `json:"secret"`
}

LRPDBAdminName defines the secret containing Sys Admin User mapped to key 'adminName' for LRPDB

func (*LRPDBAdminName) DeepCopy

func (in *LRPDBAdminName) DeepCopy() *LRPDBAdminName

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

func (*LRPDBAdminName) DeepCopyInto

func (in *LRPDBAdminName) DeepCopyInto(out *LRPDBAdminName)

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

type LRPDBAdminPassword

type LRPDBAdminPassword struct {
	Secret LRPDBSecret `json:"secret"`
}

LRPDBAdminPassword defines the secret containing Sys Admin Password mapped to key 'adminPwd' for LRPDB

func (*LRPDBAdminPassword) DeepCopy

func (in *LRPDBAdminPassword) DeepCopy() *LRPDBAdminPassword

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

func (*LRPDBAdminPassword) DeepCopyInto

func (in *LRPDBAdminPassword) DeepCopyInto(out *LRPDBAdminPassword)

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

type LRPDBList

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

LRPDBList contains a list of LRPDB

func (*LRPDBList) DeepCopy

func (in *LRPDBList) DeepCopy() *LRPDBList

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

func (*LRPDBList) DeepCopyInto

func (in *LRPDBList) DeepCopyInto(out *LRPDBList)

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

func (*LRPDBList) DeepCopyObject

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

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

type LRPDBPRVKEY

type LRPDBPRVKEY struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*LRPDBPRVKEY) DeepCopy

func (in *LRPDBPRVKEY) DeepCopy() *LRPDBPRVKEY

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

func (*LRPDBPRVKEY) DeepCopyInto

func (in *LRPDBPRVKEY) DeepCopyInto(out *LRPDBPRVKEY)

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

type LRPDBSecret

type LRPDBSecret struct {
	SecretName string `json:"secretName"`
	Key        string `json:"key"`
}

LRPDBSecret defines the secretName

func (*LRPDBSecret) DeepCopy

func (in *LRPDBSecret) DeepCopy() *LRPDBSecret

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

func (*LRPDBSecret) DeepCopyInto

func (in *LRPDBSecret) DeepCopyInto(out *LRPDBSecret)

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

type LRPDBSpec

type LRPDBSpec struct {
	LRPDBTlsKey LRPDBTLSKEY `json:"lrpdbTlsKey,omitempty"`
	LRPDBTlsCrt LRPDBTLSCRT `json:"lrpdbTlsCrt,omitempty"`
	LRPDBTlsCat LRPDBTLSCAT `json:"lrpdbTlsCat,omitempty"`
	LRPDBPriKey LRPDBPRVKEY `json:"cdbPrvKey,omitempty"`

	// Namespace of the rest server
	CDBNamespace string `json:"cdbNamespace,omitempty"`
	// Name of the CDB Custom Resource that runs the LREST container
	CDBResName string `json:"cdbResName,omitempty"`
	// Name of the CDB
	CDBName string `json:"cdbName,omitempty"`
	// The name of the new LRPDB. Relevant for both Create and Plug Actions.
	LRPDBName string `json:"pdbName,omitempty"`
	// Name of the Source LRPDB from which to clone
	SrcLRPDBName string `json:"srcPdbName,omitempty"`
	// The administrator username for the new LRPDB. This property is required when the Action property is Create.
	AdminName LRPDBAdminName `json:"adminName,omitempty"`
	// The administrator password for the new LRPDB. This property is required when the Action property is Create.
	AdminPwd LRPDBAdminPassword `json:"adminPwd,omitempty"`
	// Relevant for Create and Plug operations. As defined in the  Oracle Multitenant Database documentation. Values can be a filename convert pattern or NONE.
	AdminpdbUser AdminpdbUser `json:"adminpdbUser,omitempty"`
	AdminpdbPass AdminpdbPass `json:"adminpdbPass,omitempty"`

	FileNameConversions string `json:"fileNameConversions,omitempty"`
	// This property is required when the Action property is Plug. As defined in the Oracle Multitenant Database documentation. Values can be a source filename convert pattern or NONE.
	SourceFileNameConversions string `json:"sourceFileNameConversions,omitempty"`
	// XML metadata filename to be used for Plug or Unplug operations
	XMLFileName string `json:"xmlFileName,omitempty"`
	// To copy files or not while cloning a LRPDB
	// +kubebuilder:validation:Enum=COPY;NOCOPY;MOVE
	CopyAction string `json:"copyAction,omitempty"`
	// Specify if datafiles should be removed or not. The value can be INCLUDING or KEEP (default).
	// +kubebuilder:validation:Enum=INCLUDING;KEEP
	DropAction string `json:"dropAction,omitempty"`
	// A Path specified for sparse clone snapshot copy. (Optional)
	SparseClonePath string `json:"sparseClonePath,omitempty"`
	// Whether to reuse temp file
	ReuseTempFile *bool `json:"reuseTempFile,omitempty"`
	// Relevant for Create and Plug operations. True for unlimited storage. Even when set to true, totalSize and tempSize MUST be specified in the request if Action is Create.
	UnlimitedStorage *bool `json:"unlimitedStorage,omitempty"`
	// Indicate if 'AS CLONE' option should be used in the command to plug in a LRPDB. This property is applicable when the Action property is PLUG but not required.
	AsClone *bool `json:"asClone,omitempty"`
	// Relevant for create and plug operations. Total size as defined in the Oracle Multitenant Database documentation. See size_clause description in Database SQL Language Reference documentation.
	TotalSize string `json:"totalSize,omitempty"`
	// Relevant for Create and Clone operations. Total size for temporary tablespace as defined in the Oracle Multitenant Database documentation. See size_clause description in Database SQL Language Reference documentation.
	TempSize string `json:"tempSize,omitempty"`
	// Web Server User with SQL Administrator role to allow us to authenticate to the PDB Lifecycle Management REST endpoints
	WebLrpdbServerUser WebLrpdbServerUser `json:"webServerUser,omitempty"`
	// Password for the Web Server User
	WebLrpdbServerPwd WebLrpdbServerPassword `json:"webServerPwd,omitempt"`
	// TDE import for plug operations
	LTDEImport *bool `json:"tdeImport,omitempty"`
	// LTDE export for unplug operations
	LTDEExport *bool `json:"tdeExport,omitempty"`
	// TDE password if the tdeImport or tdeExport flag is set to true. Can be used in create, plug or unplug operations
	LTDEPassword LTDEPwd `json:"tdePassword,omitempty"`
	// LTDE keystore path is required if the tdeImport or tdeExport flag is set to true. Can be used in plug or unplug operations.
	LTDEKeystorePath string `json:"tdeKeystorePath,omitempty"`
	// LTDE secret is required if the tdeImport or tdeExport flag is set to true. Can be used in plug or unplug operations.
	LTDESecret LTDESecret `json:"tdeSecret,omitempty"`
	// Whether you need the script only or execute the script
	GetScript *bool `json:"getScript,omitempty"`
	// Action to be taken: Create/Clone/Plug/Unplug/Delete/Modify/Status/Map/Alter. Map is used to map a Databse LRPDB to a Kubernetes LRPDB CR.
	// +kubebuilder:validation:Enum=Create;Clone;Plug;Unplug;Delete;Modify;Status;Map;Alter;Noaction
	Action string `json:"action"`
	// Extra options for opening and closing a LRPDB
	// +kubebuilder:validation:Enum=IMMEDIATE;NORMAL;READ ONLY;READ WRITE;RESTRICTED
	ModifyOption string `json:"modifyOption,omitempty"`
	// to be used with ALTER option - obsolete do not use
	AlterSystem string `json:"alterSystem,omitempty"`
	// to be used with ALTER option - the name of the parameter
	AlterSystemParameter string `json:"alterSystemParameter"`
	// to be used with ALTER option - the  value of the parameter
	AlterSystemValue string `json:"alterSystemValue"`
	// parameter scope
	ParameterScope string `json:"parameterScope,omitempty"`
	// The target state of the LRPDB
	// +kubebuilder:validation:Enum=OPEN;CLOSE;ALTER
	LRPDBState string `json:"pdbState,omitempty"`
	// turn on the assertive approach to delete pdb resource
	// kubectl delete pdb ..... automatically triggers the pluggable database
	// deletion
	AssertiveLrpdbDeletion bool   `json:"assertiveLrpdbDeletion,omitempty"`
	PDBConfigMap           string `json:"pdbconfigmap,omitempty"`
}

LRPDBSpec defines the desired state of LRPDB

func (*LRPDBSpec) DeepCopy

func (in *LRPDBSpec) DeepCopy() *LRPDBSpec

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

func (*LRPDBSpec) DeepCopyInto

func (in *LRPDBSpec) DeepCopyInto(out *LRPDBSpec)

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

type LRPDBStatus

type LRPDBStatus struct {

	// LRPDB Connect String
	ConnString string `json:"connString,omitempty"`
	// Phase of the LRPDB Resource
	Phase string `json:"phase"`
	// LRPDB Resource Status
	Status bool `json:"status"`
	// Total size of the LRPDB
	TotalSize string `json:"totalSize,omitempty"`
	// Open mode of the LRPDB
	OpenMode string `json:"openMode,omitempty"`
	// Modify Option of the LRPDB
	ModifyOption string `json:"modifyOption,omitempty"`
	// Message
	Msg string `json:"msg,omitempty"`
	// Last Completed Action
	Action string `json:"action,omitempty"`
	// Last Completed alter system
	AlterSystem string `json:"alterSystem,omitempty"`
	// Last ORA-
	SqlCode    int    `json:"sqlCode"`
	Bitstat    int    `json:"bitstat,omitempty"`    /* Bitmask */
	BitStatStr string `json:"bitstatstr,omitempty"` /* Decoded bitmask */
}

LRPDBStatus defines the observed state of LRPDB

func (*LRPDBStatus) DeepCopy

func (in *LRPDBStatus) DeepCopy() *LRPDBStatus

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

func (*LRPDBStatus) DeepCopyInto

func (in *LRPDBStatus) DeepCopyInto(out *LRPDBStatus)

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

type LRPDBTLSCAT

type LRPDBTLSCAT struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*LRPDBTLSCAT) DeepCopy

func (in *LRPDBTLSCAT) DeepCopy() *LRPDBTLSCAT

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

func (*LRPDBTLSCAT) DeepCopyInto

func (in *LRPDBTLSCAT) DeepCopyInto(out *LRPDBTLSCAT)

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

type LRPDBTLSCRT

type LRPDBTLSCRT struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*LRPDBTLSCRT) DeepCopy

func (in *LRPDBTLSCRT) DeepCopy() *LRPDBTLSCRT

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

func (*LRPDBTLSCRT) DeepCopyInto

func (in *LRPDBTLSCRT) DeepCopyInto(out *LRPDBTLSCRT)

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

type LRPDBTLSKEY

type LRPDBTLSKEY struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*LRPDBTLSKEY) DeepCopy

func (in *LRPDBTLSKEY) DeepCopy() *LRPDBTLSKEY

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

func (*LRPDBTLSKEY) DeepCopyInto

func (in *LRPDBTLSKEY) DeepCopyInto(out *LRPDBTLSKEY)

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

type LTDEPwd

type LTDEPwd struct {
	Secret LRPDBSecret `json:"secret"`
}

TDEPwd defines the secret containing TDE Wallet Password mapped to key 'tdePassword' for LRPDB

func (*LTDEPwd) DeepCopy

func (in *LTDEPwd) DeepCopy() *LTDEPwd

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

func (*LTDEPwd) DeepCopyInto

func (in *LTDEPwd) DeepCopyInto(out *LTDEPwd)

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

type LTDESecret

type LTDESecret struct {
	Secret LRPDBSecret `json:"secret"`
}

TDESecret defines the secret containing TDE Secret to key 'tdeSecret' for LRPDB

func (*LTDESecret) DeepCopy

func (in *LTDESecret) DeepCopy() *LTDESecret

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

func (*LTDESecret) DeepCopyInto

func (in *LTDESecret) DeepCopyInto(out *LTDESecret)

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

type LifecycleState

type LifecycleState string
const (
	Available LifecycleState = "AVAILABLE"
	Failed    LifecycleState = "FAILED"
	Update    LifecycleState = "UPDATING"
	Provision LifecycleState = "PROVISIONING"
	Terminate LifecycleState = "TERMINATED"
)

type ORDSPassword

type ORDSPassword struct {
	Secret CDBSecret `json:"secret"`
}

ORDSPassword defines the secret containing ORDS_PUBLIC_USER Password mapped to key 'ordsPwd'

func (*ORDSPassword) DeepCopy

func (in *ORDSPassword) DeepCopy() *ORDSPassword

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

func (*ORDSPassword) DeepCopyInto

func (in *ORDSPassword) DeepCopyInto(out *ORDSPassword)

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

type OciAcdSpec

type OciAcdSpec struct {
	Id *string `json:"id,omitempty"`
}

func (*OciAcdSpec) DeepCopy

func (in *OciAcdSpec) DeepCopy() *OciAcdSpec

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

func (*OciAcdSpec) DeepCopyInto

func (in *OciAcdSpec) DeepCopyInto(out *OciAcdSpec)

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

type OciAdbSpec

type OciAdbSpec struct {
	OCID *string `json:"ocid,omitempty"`
}

func (*OciAdbSpec) DeepCopy

func (in *OciAdbSpec) DeepCopy() *OciAdbSpec

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

func (*OciAdbSpec) DeepCopyInto

func (in *OciAdbSpec) DeepCopyInto(out *OciAdbSpec)

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

type OciConfigSpec

type OciConfigSpec struct {
	ConfigMapName *string `json:"configMapName,omitempty"`
	SecretName    *string `json:"secretName,omitempty"`
}

*********************** * OCI config ***********************

func (*OciConfigSpec) DeepCopy

func (in *OciConfigSpec) DeepCopy() *OciConfigSpec

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

func (*OciConfigSpec) DeepCopyInto

func (in *OciConfigSpec) DeepCopyInto(out *OciConfigSpec)

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

type OciSecretSpec

type OciSecretSpec struct {
	Id *string `json:"id,omitempty"`
}

func (*OciSecretSpec) DeepCopy

func (in *OciSecretSpec) DeepCopy() *OciSecretSpec

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

func (*OciSecretSpec) DeepCopyInto

func (in *OciSecretSpec) DeepCopyInto(out *OciSecretSpec)

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

type OracleRestDataService

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

	Spec   OracleRestDataServiceSpec   `json:"spec,omitempty"`
	Status OracleRestDataServiceStatus `json:"status,omitempty"`
}

OracleRestDataService is the Schema for the oraclerestdataservices API +kubebuilder:storageversion

func (*OracleRestDataService) DeepCopy

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

func (*OracleRestDataService) DeepCopyInto

func (in *OracleRestDataService) DeepCopyInto(out *OracleRestDataService)

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

func (*OracleRestDataService) DeepCopyObject

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

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

func (*OracleRestDataService) Hub

func (*OracleRestDataService) Hub()

Hub defines v1 as the hub version

func (*OracleRestDataService) SetupWebhookWithManager

func (r *OracleRestDataService) SetupWebhookWithManager(mgr ctrl.Manager) error

type OracleRestDataServiceImage

type OracleRestDataServiceImage struct {
	Version     string `json:"version,omitempty"`
	PullFrom    string `json:"pullFrom"`
	PullSecrets string `json:"pullSecrets,omitempty"`
}

OracleRestDataServiceImage defines the Image source and pullSecrets for POD

func (*OracleRestDataServiceImage) DeepCopy

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

func (*OracleRestDataServiceImage) DeepCopyInto

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

type OracleRestDataServiceList

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

OracleRestDataServiceList contains a list of OracleRestDataService

func (*OracleRestDataServiceList) DeepCopy

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

func (*OracleRestDataServiceList) DeepCopyInto

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

func (*OracleRestDataServiceList) DeepCopyObject

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

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

type OracleRestDataServicePassword

type OracleRestDataServicePassword struct {
	SecretName string `json:"secretName"`
	// +kubebuilder:default:="oracle_pwd"
	SecretKey  string `json:"secretKey,omitempty"`
	KeepSecret *bool  `json:"keepSecret,omitempty"`
}

OracleRestDataServicePassword defines the secret containing Password mapped to secretKey

func (*OracleRestDataServicePassword) DeepCopy

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

func (*OracleRestDataServicePassword) DeepCopyInto

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

type OracleRestDataServicePersistence

type OracleRestDataServicePersistence struct {
	Size         string `json:"size,omitempty"`
	StorageClass string `json:"storageClass,omitempty"`

	// +kubebuilder:validation:Enum=ReadWriteOnce;ReadWriteMany
	AccessMode          string `json:"accessMode,omitempty"`
	VolumeName          string `json:"volumeName,omitempty"`
	SetWritePermissions *bool  `json:"setWritePermissions,omitempty"`
}

OracleRestDataServicePersistence defines the storage releated params

func (*OracleRestDataServicePersistence) DeepCopy

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

func (*OracleRestDataServicePersistence) DeepCopyInto

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

type OracleRestDataServiceRestEnableSchemas

type OracleRestDataServiceRestEnableSchemas struct {
	PdbName    string `json:"pdbName,omitempty"`
	SchemaName string `json:"schemaName"`
	UrlMapping string `json:"urlMapping,omitempty"`
	Enable     bool   `json:"enable"`
}

OracleRestDataServicePDBSchemas defines the PDB Schemas to be ORDS Enabled

func (*OracleRestDataServiceRestEnableSchemas) DeepCopy

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

func (*OracleRestDataServiceRestEnableSchemas) DeepCopyInto

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

type OracleRestDataServiceSpec

type OracleRestDataServiceSpec struct {
	DatabaseRef        string                                   `json:"databaseRef"`
	LoadBalancer       bool                                     `json:"loadBalancer,omitempty"`
	ServiceAnnotations map[string]string                        `json:"serviceAnnotations,omitempty"`
	NodeSelector       map[string]string                        `json:"nodeSelector,omitempty"`
	Image              OracleRestDataServiceImage               `json:"image,omitempty"`
	OrdsPassword       OracleRestDataServicePassword            `json:"ordsPassword"`
	AdminPassword      OracleRestDataServicePassword            `json:"adminPassword"`
	OrdsUser           string                                   `json:"ordsUser,omitempty"`
	RestEnableSchemas  []OracleRestDataServiceRestEnableSchemas `json:"restEnableSchemas,omitempty"`
	OracleService      string                                   `json:"oracleService,omitempty"`
	ServiceAccountName string                                   `json:"serviceAccountName,omitempty"`
	Persistence        OracleRestDataServicePersistence         `json:"persistence,omitempty"`
	MongoDbApi         bool                                     `json:"mongoDbApi,omitempty"`

	// +k8s:openapi-gen=true
	// +kubebuilder:validation:Minimum=1
	Replicas             int `json:"replicas,omitempty"`
	ReadinessCheckPeriod int `json:"readinessCheckPeriod,omitempty"`
}

OracleRestDataServiceSpec defines the desired state of OracleRestDataService

func (*OracleRestDataServiceSpec) DeepCopy

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

func (*OracleRestDataServiceSpec) DeepCopyInto

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

type OracleRestDataServiceStatus

type OracleRestDataServiceStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Status              string `json:"status,omitempty"`
	DatabaseApiUrl      string `json:"databaseApiUrl,omitempty"`
	LoadBalancer        string `json:"loadBalancer,omitempty"`
	DatabaseRef         string `json:"databaseRef,omitempty"`
	ServiceIP           string `json:"serviceIP,omitempty"`
	DatabaseActionsUrl  string `json:"databaseActionsUrl,omitempty"`
	MongoDbApiAccessUrl string `json:"mongoDbApiAccessUrl,omitempty"`
	OrdsInstalled       bool   `json:"ordsInstalled,omitempty"`
	ApexConfigured      bool   `json:"apexConfigured,omitempty"`
	ApxeUrl             string `json:"apexUrl,omitempty"`
	MongoDbApi          bool   `json:"mongoDbApi,omitempty"`
	CommonUsersCreated  bool   `json:"commonUsersCreated,omitempty"`
	Replicas            int    `json:"replicas,omitempty"`

	Image OracleRestDataServiceImage `json:"image,omitempty"`
}

OracleRestDataServiceStatus defines the observed state of OracleRestDataService

func (*OracleRestDataServiceStatus) DeepCopy

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

func (*OracleRestDataServiceStatus) DeepCopyInto

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

type OrdsSrvs

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

	Spec   OrdsSrvsSpec   `json:"spec,omitempty"`
	Status OrdsSrvsStatus `json:"status,omitempty"`
}

OrdsSrvs is the Schema for the ordssrvs API

func (*OrdsSrvs) DeepCopy

func (in *OrdsSrvs) DeepCopy() *OrdsSrvs

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

func (*OrdsSrvs) DeepCopyInto

func (in *OrdsSrvs) DeepCopyInto(out *OrdsSrvs)

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

func (*OrdsSrvs) DeepCopyObject

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

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

type OrdsSrvsList

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

OrdsSrvsList contains a list of OrdsSrvs

func (*OrdsSrvsList) DeepCopy

func (in *OrdsSrvsList) DeepCopy() *OrdsSrvsList

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

func (*OrdsSrvsList) DeepCopyInto

func (in *OrdsSrvsList) DeepCopyInto(out *OrdsSrvsList)

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

func (*OrdsSrvsList) DeepCopyObject

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

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

type OrdsSrvsSpec

type OrdsSrvsSpec struct {
	// Specifies the desired Kubernetes Workload
	//+kubebuilder:validation:Enum=Deployment;StatefulSet;DaemonSet
	//+kubebuilder:default=Deployment
	WorkloadType string `json:"workloadType,omitempty"`
	// Defines the number of desired Replicas when workloadType is Deployment or StatefulSet
	//+kubebuilder:validation:Minimum=1
	//+kubebuilder:default=1
	Replicas int32 `json:"replicas,omitempty"`
	// Specifies whether to restart pods when Global or Pool configurations change
	ForceRestart bool `json:"forceRestart,omitempty"`
	// Specifies the ORDS container image
	//+kubecbuilder:default=container-registry.oracle.com/database/ords:latest
	Image string `json:"image"`
	// Specifies the ORDS container image pull policy
	//+kubebuilder:validation:Enum=IfNotPresent;Always;Never
	//+kubebuilder:default=IfNotPresent
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
	// Specifies the Secret Name for pulling the ORDS container image
	ImagePullSecrets string `json:"imagePullSecrets,omitempty"`
	// Contains settings that are configured across the entire ORDS instance.
	GlobalSettings GlobalSettings `json:"globalSettings"`
	// Contains settings for individual pools/databases
	// Private key
	EncPrivKey   PasswordSecret  `json:"encPrivKey,omitempty"`
	PoolSettings []*PoolSettings `json:"poolSettings,omitempty"`
}

OrdsSrvsSpec defines the desired state of OrdsSrvs +kubebuilder:resource:shortName="ords"

func (*OrdsSrvsSpec) DeepCopy

func (in *OrdsSrvsSpec) DeepCopy() *OrdsSrvsSpec

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

func (*OrdsSrvsSpec) DeepCopyInto

func (in *OrdsSrvsSpec) DeepCopyInto(out *OrdsSrvsSpec)

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

type OrdsSrvsStatus

type OrdsSrvsStatus struct {
	//** PLACE HOLDER
	OrdsInstalled bool `json:"ordsInstalled,omitempty"`
	//** PLACE HOLDER
	// Indicates the current status of the resource
	Status string `json:"status,omitempty"`
	// Indicates the current Workload type of the resource
	WorkloadType string `json:"workloadType,omitempty"`
	// Indicates the ORDS version
	ORDSVersion string `json:"ordsVersion,omitempty"`
	// Indicates the HTTP port of the resource exposed by the pods
	HTTPPort *int32 `json:"httpPort,omitempty"`
	// Indicates the HTTPS port of the resource exposed by the pods
	HTTPSPort *int32 `json:"httpsPort,omitempty"`
	// Indicates the MongoAPI port of the resource exposed by the pods (if enabled)
	MongoPort int32 `json:"mongoPort,omitempty"`
	// Indicates if the resource is out-of-sync with the configuration
	RestartRequired bool `json:"restartRequired"`

	// +operator-sdk:csv:customresourcedefinitions:type=status
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

OrdsSrvsStatus defines the observed state of OrdsSrvs

func (*OrdsSrvsStatus) DeepCopy

func (in *OrdsSrvsStatus) DeepCopy() *OrdsSrvsStatus

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

func (*OrdsSrvsStatus) DeepCopyInto

func (in *OrdsSrvsStatus) DeepCopyInto(out *OrdsSrvsStatus)

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

type PDB

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

	Spec   PDBSpec   `json:"spec,omitempty"`
	Status PDBStatus `json:"status,omitempty"`
}

PDB is the Schema for the pdbs API

func (*PDB) CheckObjExistence

func (r *PDB) CheckObjExistence(action string, allErrs *field.ErrorList, pdb *PDB)

func (*PDB) DeepCopy

func (in *PDB) DeepCopy() *PDB

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

func (*PDB) DeepCopyInto

func (in *PDB) DeepCopyInto(out *PDB)

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

func (*PDB) DeepCopyObject

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

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

func (*PDB) Default

func (r *PDB) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*PDB) SetupWebhookWithManager

func (r *PDB) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*PDB) ValidateCreate

func (r *PDB) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*PDB) ValidateDelete

func (r *PDB) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*PDB) ValidateUpdate

func (r *PDB) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type PDBAdminName

type PDBAdminName struct {
	Secret PDBSecret `json:"secret"`
}

PDBAdminName defines the secret containing Sys Admin User mapped to key 'adminName' for PDB

func (*PDBAdminName) DeepCopy

func (in *PDBAdminName) DeepCopy() *PDBAdminName

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

func (*PDBAdminName) DeepCopyInto

func (in *PDBAdminName) DeepCopyInto(out *PDBAdminName)

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

type PDBAdminPassword

type PDBAdminPassword struct {
	Secret PDBSecret `json:"secret"`
}

PDBAdminPassword defines the secret containing Sys Admin Password mapped to key 'adminPwd' for PDB

func (*PDBAdminPassword) DeepCopy

func (in *PDBAdminPassword) DeepCopy() *PDBAdminPassword

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

func (*PDBAdminPassword) DeepCopyInto

func (in *PDBAdminPassword) DeepCopyInto(out *PDBAdminPassword)

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

type PDBConfig

type PDBConfig struct {
	// The name for the pluggable database (PDB). The name is unique in the context of a Database. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name.
	PdbName *string `mandatory:"true" json:"pdbName"`

	// // A strong password for PDB Admin. The password must be at least nine characters and contain at least two uppercase, two lowercase, two numbers, and two special characters. The special characters must be _, \#, or -.
	PdbAdminPassword *string `mandatory:"false" json:"pdbAdminPassword"`

	// // The existing TDE wallet password of the CDB.
	TdeWalletPassword *string `mandatory:"false" json:"tdeWalletPassword"`

	// // The locked mode of the pluggable database admin account. If false, the user needs to provide the PDB Admin Password to connect to it.
	// // If true, the pluggable database will be locked and user cannot login to it.
	ShouldPdbAdminAccountBeLocked *bool `mandatory:"false" json:"shouldPdbAdminAccountBeLocked"`

	// // Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
	// // For more information, see Resource Tags (https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm).
	// // Example: `{"Department": "Finance"}`
	FreeformTags map[string]string `mandatory:"false" json:"freeformTags"`

	// To specify whether to delete the PDB
	IsDelete *bool `mandatory:"false" json:"isDelete,omitempty"`

	// The OCID of the PDB for deletion purposes.
	PluggableDatabaseId *string `mandatory:"false" json:"pluggableDatabaseId,omitempty"`
}

PDBConfig defines details of PDB struct for DBCS systems

func (*PDBConfig) DeepCopy

func (in *PDBConfig) DeepCopy() *PDBConfig

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

func (*PDBConfig) DeepCopyInto

func (in *PDBConfig) DeepCopyInto(out *PDBConfig)

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

type PDBConfigStatus

type PDBConfigStatus struct {
	PdbName                       *string           `mandatory:"false" json:"pdbName,omitempty"`
	ShouldPdbAdminAccountBeLocked *bool             `mandatory:"false" json:"shouldPdbAdminAccountBeLocked,omitempty"`
	FreeformTags                  map[string]string `mandatory:"false" json:"freeformTags,omitempty"`
	PluggableDatabaseId           *string           `mandatory:"false" json:"pluggableDatabaseId,omitempty"`
	PdbLifecycleState             LifecycleState    `json:"pdbState,omitempty"`
}

func (*PDBConfigStatus) DeepCopy

func (in *PDBConfigStatus) DeepCopy() *PDBConfigStatus

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

func (*PDBConfigStatus) DeepCopyInto

func (in *PDBConfigStatus) DeepCopyInto(out *PDBConfigStatus)

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

type PDBDetailsStatus

type PDBDetailsStatus struct {
	PDBConfigStatus []PDBConfigStatus `json:"pdbConfigStatus,omitempty"`
}

func (*PDBDetailsStatus) DeepCopy

func (in *PDBDetailsStatus) DeepCopy() *PDBDetailsStatus

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

func (*PDBDetailsStatus) DeepCopyInto

func (in *PDBDetailsStatus) DeepCopyInto(out *PDBDetailsStatus)

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

type PDBList

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

PDBList contains a list of PDB

func (*PDBList) DeepCopy

func (in *PDBList) DeepCopy() *PDBList

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

func (*PDBList) DeepCopyInto

func (in *PDBList) DeepCopyInto(out *PDBList)

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

func (*PDBList) DeepCopyObject

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

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

type PDBPRIVKEY

type PDBPRIVKEY struct {
	Secret PDBSecret `json:"secret"`
}

func (*PDBPRIVKEY) DeepCopy

func (in *PDBPRIVKEY) DeepCopy() *PDBPRIVKEY

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

func (*PDBPRIVKEY) DeepCopyInto

func (in *PDBPRIVKEY) DeepCopyInto(out *PDBPRIVKEY)

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

type PDBPUBKEY

type PDBPUBKEY struct {
	Secret PDBSecret `json:"secret"`
}

func (*PDBPUBKEY) DeepCopy

func (in *PDBPUBKEY) DeepCopy() *PDBPUBKEY

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

func (*PDBPUBKEY) DeepCopyInto

func (in *PDBPUBKEY) DeepCopyInto(out *PDBPUBKEY)

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

type PDBSecret

type PDBSecret struct {
	SecretName string `json:"secretName"`
	Key        string `json:"key"`
}

PDBSecret defines the secretName

func (*PDBSecret) DeepCopy

func (in *PDBSecret) DeepCopy() *PDBSecret

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

func (*PDBSecret) DeepCopyInto

func (in *PDBSecret) DeepCopyInto(out *PDBSecret)

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

type PDBSpec

type PDBSpec struct {
	PDBTlsKey PDBTLSKEY `json:"pdbTlsKey,omitempty"`
	PDBTlsCrt PDBTLSCRT `json:"pdbTlsCrt,omitempty"`
	PDBTlsCat PDBTLSCAT `json:"pdbTlsCat,omitempty"`

	// CDB Namespace
	CDBNamespace string `json:"cdbNamespace,omitempty"`
	// Name of the CDB Custom Resource that runs the ORDS container
	CDBResName string `json:"cdbResName,omitempty"`
	// Name of the CDB
	CDBName string `json:"cdbName,omitempty"`
	// The name of the new PDB. Relevant for both Create and Plug Actions.
	PDBName string `json:"pdbName,omitempty"`
	// Name of the Source PDB from which to clone
	SrcPDBName string `json:"srcPdbName,omitempty"`
	// The administrator username for the new PDB. This property is required when the Action property is Create.
	AdminName PDBAdminName `json:"adminName,omitempty"`
	// The administrator password for the new PDB. This property is required when the Action property is Create.
	AdminPwd PDBAdminPassword `json:"adminPwd,omitempty"`
	// Web Server User with SQL Administrator role to allow us to authenticate to the PDB Lifecycle Management REST endpoints
	WebServerUsr WebServerUserPDB `json:"webServerUser,omitempty"`
	// Password for the Web ServerPDB User
	WebServerPwd WebServerPasswordPDB `json:"webServerPwd,omitempty"`
	// Relevant for Create and Plug operations. As defined in the  Oracle Multitenant Database documentation. Values can be a filename convert pattern or NONE.
	FileNameConversions string `json:"fileNameConversions,omitempty"`
	// This property is required when the Action property is Plug. As defined in the Oracle Multitenant Database documentation. Values can be a source filename convert pattern or NONE.
	SourceFileNameConversions string `json:"sourceFileNameConversions,omitempty"`
	// XML metadata filename to be used for Plug or Unplug operations
	XMLFileName string `json:"xmlFileName,omitempty"`
	// To copy files or not while cloning a PDB
	// +kubebuilder:validation:Enum=COPY;NOCOPY;MOVE
	CopyAction string `json:"copyAction,omitempty"`
	// Specify if datafiles should be removed or not. The value can be INCLUDING or KEEP (default).
	// +kubebuilder:validation:Enum=INCLUDING;KEEP
	DropAction string `json:"dropAction,omitempty"`
	// A Path specified for sparse clone snapshot copy. (Optional)
	SparseClonePath string `json:"sparseClonePath,omitempty"`
	// Whether to reuse temp file
	ReuseTempFile *bool `json:"reuseTempFile,omitempty"`
	// Relevant for Create and Plug operations. True for unlimited storage. Even when set to true, totalSize and tempSize MUST be specified in the request if Action is Create.
	UnlimitedStorage *bool `json:"unlimitedStorage,omitempty"`
	// Indicate if 'AS CLONE' option should be used in the command to plug in a PDB. This property is applicable when the Action property is PLUG but not required.
	AsClone *bool `json:"asClone,omitempty"`
	// Relevant for create and plug operations. Total size as defined in the Oracle Multitenant Database documentation. See size_clause description in Database SQL Language Reference documentation.
	TotalSize string `json:"totalSize,omitempty"`
	// Relevant for Create and Clone operations. Total size for temporary tablespace as defined in the Oracle Multitenant Database documentation. See size_clause description in Database SQL Language Reference documentation.
	TempSize string `json:"tempSize,omitempty"`
	// TDE import for plug operations
	TDEImport *bool `json:"tdeImport,omitempty"`
	// TDE export for unplug operations
	TDEExport *bool `json:"tdeExport,omitempty"`
	// TDE password if the tdeImport or tdeExport flag is set to true. Can be used in create, plug or unplug operations
	TDEPassword TDEPwd `json:"tdePassword,omitempty"`
	// TDE keystore path is required if the tdeImport or tdeExport flag is set to true. Can be used in plug or unplug operations.
	TDEKeystorePath string `json:"tdeKeystorePath,omitempty"`
	// TDE secret is required if the tdeImport or tdeExport flag is set to true. Can be used in plug or unplug operations.
	TDESecret TDESecret `json:"tdeSecret,omitempty"`
	// Whether you need the script only or execute the script
	GetScript *bool `json:"getScript,omitempty"`
	// Action to be taken: Create/Clone/Plug/Unplug/Delete/Modify/Status/Map. Map is used to map a Databse PDB to a Kubernetes PDB CR.
	// +kubebuilder:validation:Enum=Create;Clone;Plug;Unplug;Delete;Modify;Status;Map
	Action string `json:"action"`
	// Extra options for opening and closing a PDB
	// +kubebuilder:validation:Enum=IMMEDIATE;NORMAL;READ ONLY;READ WRITE;RESTRICTED
	ModifyOption string `json:"modifyOption,omitempty"`
	// The target state of the PDB
	// +kubebuilder:validation:Enum=OPEN;CLOSE
	PDBState string `json:"pdbState,omitempty"`
	// turn on the assertive approach to delete pdb resource
	// kubectl delete pdb ..... automatically triggers the pluggable database
	// deletion
	AssertivePdbDeletion bool       `json:"assertivePdbDeletion,omitempty"`
	PDBPubKey            PDBPUBKEY  `json:"pdbOrdsPubKey,omitempty"`
	PDBPriKey            PDBPRIVKEY `json:"pdbOrdsPrvKey,omitempty"`
}

PDBSpec defines the desired state of PDB

func (*PDBSpec) DeepCopy

func (in *PDBSpec) DeepCopy() *PDBSpec

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

func (*PDBSpec) DeepCopyInto

func (in *PDBSpec) DeepCopyInto(out *PDBSpec)

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

type PDBStatus

type PDBStatus struct {

	// PDB Connect String
	ConnString string `json:"connString,omitempty"`
	// Phase of the PDB Resource
	Phase string `json:"phase"`
	// PDB Resource Status
	Status bool `json:"status"`
	// Total size of the PDB
	TotalSize string `json:"totalSize,omitempty"`
	// Open mode of the PDB
	OpenMode string `json:"openMode,omitempty"`
	// Modify Option of the PDB
	ModifyOption string `json:"modifyOption,omitempty"`
	// Message
	Msg string `json:"msg,omitempty"`
	// Last Completed Action
	Action string `json:"action,omitempty"`
}

PDBStatus defines the observed state of PDB

func (*PDBStatus) DeepCopy

func (in *PDBStatus) DeepCopy() *PDBStatus

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

func (*PDBStatus) DeepCopyInto

func (in *PDBStatus) DeepCopyInto(out *PDBStatus)

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

type PDBTLSCAT

type PDBTLSCAT struct {
	Secret PDBSecret `json:"secret"`
}

func (*PDBTLSCAT) DeepCopy

func (in *PDBTLSCAT) DeepCopy() *PDBTLSCAT

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

func (*PDBTLSCAT) DeepCopyInto

func (in *PDBTLSCAT) DeepCopyInto(out *PDBTLSCAT)

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

type PDBTLSCRT

type PDBTLSCRT struct {
	Secret PDBSecret `json:"secret"`
}

func (*PDBTLSCRT) DeepCopy

func (in *PDBTLSCRT) DeepCopy() *PDBTLSCRT

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

func (*PDBTLSCRT) DeepCopyInto

func (in *PDBTLSCRT) DeepCopyInto(out *PDBTLSCRT)

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

type PDBTLSKEY

type PDBTLSKEY struct {
	Secret PDBSecret `json:"secret"`
}

func (*PDBTLSKEY) DeepCopy

func (in *PDBTLSKEY) DeepCopy() *PDBTLSKEY

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

func (*PDBTLSKEY) DeepCopyInto

func (in *PDBTLSKEY) DeepCopyInto(out *PDBTLSKEY)

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

type PITSpec

type PITSpec struct {
	// The timestamp must follow this format: YYYY-MM-DD HH:MM:SS GMT
	Timestamp *string `json:"timestamp,omitempty"`
}

func (*PITSpec) DeepCopy

func (in *PITSpec) DeepCopy() *PITSpec

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

func (*PITSpec) DeepCopyInto

func (in *PITSpec) DeepCopyInto(out *PITSpec)

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

type PasswordSecret

type PasswordSecret struct {
	// Specifies the name of the password Secret
	SecretName string `json:"secretName"`
	// Specifies the key holding the value of the Secret
	//+kubebuilder:default:="password"
	PasswordKey string `json:"passwordKey,omitempty"`
}

Defines the secret containing Password mapped to secretKey

func (*PasswordSecret) DeepCopy

func (in *PasswordSecret) DeepCopy() *PasswordSecret

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

func (*PasswordSecret) DeepCopyInto

func (in *PasswordSecret) DeepCopyInto(out *PasswordSecret)

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

type PasswordSpec

type PasswordSpec struct {
	K8sSecret K8sSecretSpec `json:"k8sSecret,omitempty"`
	OciSecret OciSecretSpec `json:"ociSecret,omitempty"`
}

func (*PasswordSpec) DeepCopy

func (in *PasswordSpec) DeepCopy() *PasswordSpec

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

func (*PasswordSpec) DeepCopyInto

func (in *PasswordSpec) DeepCopyInto(out *PasswordSpec)

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

type PoolSettings

type PoolSettings struct {
	// Specifies the Pool Name
	PoolName string `json:"poolName"`

	// Specify whether to perform ORDS installation/upgrades automatically
	// The db.adminUser and db.adminUser.secret must be set, otherwise setting is ignored
	// This setting will be ignored for ADB
	//+kubebuilder:default:=false
	AutoUpgradeORDS bool `json:"autoUpgradeORDS,omitempty"`

	// Specify whether to perform APEX installation/upgrades automatically
	// The db.adminUser and db.adminUser.secret must be set, otherwise setting is ignored
	// This setting will be ignored for ADB
	//+kubebuilder:default:=false
	AutoUpgradeAPEX bool `json:"autoUpgradeAPEX,omitempty"`

	// Specifies the name of the database user for the connection.
	// For non-ADB this will default to ORDS_PUBLIC_USER
	// For ADBs this must be specified and not ORDS_PUBLIC_USER
	// If ORDS_PUBLIC_USER is specified for an ADB, the workload will fail
	//+kubebuilder:default:="ORDS_PUBLIC_USER"
	DBUsername string `json:"db.username,omitempty"`

	// Specifies the Secret with the dbUsername and dbPassword values
	// for the connection.
	DBSecret PasswordSecret `json:"db.secret"`

	// Specifies the username for the database account that ORDS uses for administration operations in the database.
	DBAdminUser string `json:"db.adminUser,omitempty"`

	// Specifies the Secret with the dbAdminUser (SYS) and dbAdminPassword values
	// for the database account that ORDS uses for administration operations in the database.
	// replaces: db.adminUser.password
	DBAdminUserSecret PasswordSecret `json:"db.adminUser.secret,omitempty"`

	// Specifies the username for the database account that ORDS uses for the Pluggable Database Lifecycle Management.
	DBCDBAdminUser string `json:"db.cdb.adminUser,omitempty"`

	// Specifies the Secret with the dbCdbAdminUser (SYS) and dbCdbAdminPassword values
	// Specifies the username for the database account that ORDS uses for the Pluggable Database Lifecycle Management.
	// Replaces: db.cdb.adminUser.password
	DBCDBAdminUserSecret PasswordSecret `json:"db.cdb.adminUser.secret,omitempty"`

	// Specifies the comma delimited list of additional roles to assign authenticated APEX administrator type users.
	ApexSecurityAdministratorRoles string `json:"apex.security.administrator.roles,omitempty"`

	// Specifies the comma delimited list of additional roles to assign authenticated regular APEX users.
	ApexSecurityUserRoles string `json:"apex.security.user.roles,omitempty"`

	// Specifies the source for database credentials when creating a direct connection for running SQL statements.
	// Value can be one of pool or request.
	// If the value is pool, then the credentials defined in this pool is used to create a JDBC connection.
	// If the value request is used, then the credentials in the request is used to create a JDBC connection and if successful, grants the requestor SQL Developer role.
	//+kubebuilder:validation:Enum=pool;request
	DBCredentialsSource string `json:"db.credentialsSource,omitempty"`

	// Indicates how long to wait to gracefully destroy a pool before moving to forcefully destroy all connections including borrowed ones.
	DBPoolDestroyTimeout *time.Duration `json:"db.poolDestroyTimeout,omitempty"`

	// Specifies to enable tracking of JDBC resources.
	// If not released causes in resource leaks or exhaustion in the database.
	// Tracking imposes a performance overhead.
	DebugTrackResources *bool `json:"debug.trackResources,omitempty"`

	// Specifies to disable the Open Service Broker services available for the pool.
	FeatureOpenservicebrokerExclude *bool `json:"feature.openservicebroker.exclude,omitempty"`

	// Specifies to enable the Database Actions feature.
	FeatureSDW *bool `json:"feature.sdw,omitempty"`

	// Specifies a comma separated list of HTTP Cookies to exclude when initializing an Oracle Web Agent environment.
	HttpCookieFilter string `json:"http.cookie.filter,omitempty"`

	// Identifies the database role that indicates that the database user must get the SQL Administrator role.
	JDBCAuthAdminRole string `json:"jdbc.auth.admin.role,omitempty"`

	// Specifies how a pooled JDBC connection and corresponding database session, is released when a request has been processed.
	JDBCCleanupMode string `json:"jdbc.cleanup.mode,omitempty"`

	// If it is true, then it causes a trace of the SQL statements performed by Oracle Web Agent to be echoed to the log.
	OwaTraceSql *bool `json:"owa.trace.sql,omitempty"`

	// Indicates if the PL/SQL Gateway functionality should be available for a pool or not.
	// Value can be one of disabled, direct, or proxied.
	// If the value is direct, then the pool serves the PL/SQL Gateway requests directly.
	// If the value is proxied, the PLSQL_GATEWAY_CONFIG view is used to determine the user to whom to proxy.
	//+kubebuilder:validation:Enum=disabled;direct;proxied
	PlsqlGatewayMode string `json:"plsql.gateway.mode,omitempty"`

	// Specifies whether the JWT Profile authentication is available. Supported values:
	SecurityJWTProfileEnabled *bool `json:"security.jwt.profile.enabled,omitempty"`

	// Specifies the maximum number of bytes read from the JWK url.
	SecurityJWKSSize *int32 `json:"security.jwks.size,omitempty"`

	// Specifies the maximum amount of time before timing-out when accessing a JWK url.
	SecurityJWKSConnectionTimeout *time.Duration `json:"security.jwks.connection.timeout,omitempty"`

	// Specifies the maximum amount of time reading a response from the JWK url before timing-out.
	SecurityJWKSReadTimeout *time.Duration `json:"security.jwks.read.timeout,omitempty"`

	// Specifies the minimum interval between refreshing the JWK cached value.
	SecurityJWKSRefreshInterval *time.Duration `json:"security.jwks.refresh.interval,omitempty"`

	// Specifies the maximum skew the JWT time claims are accepted.
	// This is useful if the clock on the JWT issuer and ORDS differs by a few seconds.
	SecurityJWTAllowedSkew *time.Duration `json:"security.jwt.allowed.skew,omitempty"`

	// Specifies the maximum allowed age of a JWT in seconds, regardless of expired claim.
	// The age of the JWT is taken from the JWT issued at claim.
	SecurityJWTAllowedAge *time.Duration `json:"security.jwt.allowed.age,omitempty"`

	// Indicates the type of security.requestValidationFunction: javascript or plsql.
	//+kubebuilder:validation:Enum=plsql;javascript
	SecurityValidationFunctionType string `json:"security.validationFunctionType,omitempty"`

	// The type of connection.
	//+kubebuilder:validation:Enum=basic;tns;customurl
	DBConnectionType string `json:"db.connectionType,omitempty"`

	// Specifies the JDBC URL connection to connect to the database.
	DBCustomURL string `json:"db.customURL,omitempty"`

	// Specifies the host system for the Oracle database.
	DBHostname string `json:"db.hostname,omitempty"`

	// Specifies the database listener port.
	DBPort *int32 `json:"db.port,omitempty"`

	// Specifies the network service name of the database.
	DBServicename string `json:"db.servicename,omitempty"`

	// Specifies the name of the database.
	DBSid string `json:"db.sid,omitempty"`

	// Specifies the TNS alias name that matches the name in the tnsnames.ora file.
	DBTnsAliasName string `json:"db.tnsAliasName,omitempty"`

	// Specifies the service name in the wallet archive for the pool.
	DBWalletZipService string `json:"db.wallet.zip.service,omitempty"`

	// Specifies the JDBC driver type.
	//+kubebuilder:validation:Enum=thin;oci8
	JDBCDriverType string `json:"jdbc.DriverType,omitempty"`

	// Specifies how long an available connection can remain idle before it is closed. The inactivity connection timeout is in seconds.
	JDBCInactivityTimeout *int32 `json:"jdbc.InactivityTimeout,omitempty"`

	// Specifies the initial size for the number of connections that will be created.
	// The default is low, and should probably be set higher in most production environments.
	JDBCInitialLimit *int32 `json:"jdbc.InitialLimit,omitempty"`

	// Specifies the maximum number of times to reuse a connection before it is discarded and replaced with a new connection.
	JDBCMaxConnectionReuseCount *int32 `json:"jdbc.MaxConnectionReuseCount,omitempty"`

	// Sets the maximum connection reuse time property.
	JDBCMaxConnectionReuseTime *int32 `json:"jdbc.MaxConnectionReuseTime,omitempty"`

	// Sets the time in seconds to trust an idle connection to skip a validation test.
	JDBCSecondsToTrustIdleConnection *int32 `json:"jdbc.SecondsToTrustIdleConnection,omitempty"`

	// Specifies the maximum number of connections.
	// Might be too low for some production environments.
	JDBCMaxLimit *int32 `json:"jdbc.MaxLimit,omitempty"`

	// Specifies if the PL/SQL Gateway calls can be authenticated using database users.
	// If the value is true then this feature is enabled. If the value is false, then this feature is disabled.
	// Oracle recommends not to use this feature.
	// This feature used only to facilitate customers migrating from mod_plsql.
	JDBCAuthEnabled *bool `json:"jdbc.auth.enabled,omitempty"`

	// Specifies the maximum number of statements to cache for each connection.
	JDBCMaxStatementsLimit *int32 `json:"jdbc.MaxStatementsLimit,omitempty"`

	// Specifies the minimum number of connections.
	JDBCMinLimit *int32 `json:"jdbc.MinLimit,omitempty"`

	// Specifies a timeout period on a statement.
	// An abnormally long running query or script, executed by a request, may leave it in a hanging state unless a timeout is
	// set on the statement. Setting a timeout on the statement ensures that all the queries automatically timeout if
	// they are not completed within the specified time period.
	JDBCStatementTimeout *int32 `json:"jdbc.statementTimeout,omitempty"`

	// Specifies the default page to display. The Oracle REST Data Services Landing Page.
	MiscDefaultPage string `json:"misc.defaultPage,omitempty"`

	// Specifies the maximum number of rows that will be returned from a query when processing a RESTful service
	// and that will be returned from a nested cursor in a result set.
	// Affects all RESTful services generated through a SQL query, regardless of whether the resource is paginated.
	MiscPaginationMaxRows *int32 `json:"misc.pagination.maxRows,omitempty"`

	// Specifies the procedure name(s) to execute after executing the procedure specified on the URL.
	// Multiple procedure names must be separated by commas.
	ProcedurePostProcess string `json:"procedurePostProcess,omitempty"`

	// Specifies the procedure name(s) to execute prior to executing the procedure specified on the URL.
	// Multiple procedure names must be separated by commas.
	ProcedurePreProcess string `json:"procedure.preProcess,omitempty"`

	// Specifies the function to be invoked prior to dispatching each Oracle REST Data Services based REST Service.
	// The function can perform configuration of the database session, perform additional validation or authorization of the request.
	// If the function returns true, then processing of the request continues.
	// If the function returns false, then processing of the request is aborted and an HTTP 403 Forbidden status is returned.
	ProcedureRestPreHook string `json:"procedure.rest.preHook,omitempty"`

	// Specifies an authentication function to determine if the requested procedure in the URL should be allowed or disallowed for processing.
	// The function should return true if the procedure is allowed; otherwise, it should return false.
	// If it returns false, Oracle REST Data Services will return WWW-Authenticate in the response header.
	SecurityRequestAuthenticationFunction string `json:"security.requestAuthenticationFunction,omitempty"`

	// Specifies a validation function to determine if the requested procedure in the URL should be allowed or disallowed for processing.
	// The function should return true if the procedure is allowed; otherwise, return false.
	//+kubebuilder:default:="ords_util.authorize_plsql_gateway"
	SecurityRequestValidationFunction string `json:"security.requestValidationFunction,omitempty"`

	// When using the SODA REST API, specifies the default number of documents returned for a GET request on a collection when a
	// limit is not specified in the URL. Must be a positive integer, or "unlimited" for no limit.
	SODADefaultLimit string `json:"soda.defaultLimit,omitempty"`

	// When using the SODA REST API, specifies the maximum number of documents that will be returned for a GET request on a collection URL,
	// regardless of any limit specified in the URL. Must be a positive integer, or "unlimited" for no limit.
	SODAMaxLimit string `json:"soda.maxLimit,omitempty"`

	// Specifies whether the REST-Enabled SQL service is active.
	RestEnabledSqlActive *bool `json:"restEnabledSql.active,omitempty"`

	// Specifies the Secret containing the wallet archive containing connection details for the pool.
	// Replaces: db.wallet.zip
	DBWalletSecret *DBWalletSecret `json:"dbWalletSecret,omitempty"`

	// Specifies the Secret containing the TNS_ADMIN directory
	// Replaces: db.tnsDirectory
	TNSAdminSecret *TNSAdminSecret `json:"tnsAdminSecret,omitempty"`
}

func (*PoolSettings) DeepCopy

func (in *PoolSettings) DeepCopy() *PoolSettings

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

func (*PoolSettings) DeepCopyInto

func (in *PoolSettings) DeepCopyInto(out *PoolSettings)

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

type PortMapping

type PortMapping struct {
	Port       int32           `json:"port"`       // Port that will be exposed on the service.
	TargetPort int32           `json:"targetPort"` // Docker image port for the application.
	Protocol   corev1.Protocol `json:"protocol"`   // IP protocol for the mapping, e.g., "TCP" or "UDP".
}

PortMapping is a specification of port mapping for an application deployment. +k8s:openapi-gen=true

func (*PortMapping) DeepCopy

func (in *PortMapping) DeepCopy() *PortMapping

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

func (*PortMapping) DeepCopyInto

func (in *PortMapping) DeepCopyInto(out *PortMapping)

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

type PriVKey

type PriVKey struct {
	Secret PasswordSecret `json:"secret"`
}

func (*PriVKey) DeepCopy

func (in *PriVKey) DeepCopy() *PriVKey

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

func (*PriVKey) DeepCopyInto

func (in *PriVKey) DeepCopyInto(out *PriVKey)

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

type SecretDetails

type SecretDetails struct {
	Name                 string `json:"name"`                  // Name of the secret.
	KeyFileName          string `json:"keyFileName,omitempty"` // Name of the key.
	NsConfigMap          string `json:"nsConfigMap,omitempty"`
	NsSecret             string `json:"nsSecret,omitempty"`
	PwdFileName          string `json:"pwdFileName"`
	PwdFileMountLocation string `json:"pwdFileMountLocation,omitempty"`
	KeyFileMountLocation string `json:"keyFileMountLocation,omitempty"`
	KeySecretName        string `json:"keySecretName,omitempty"`
	EncryptionType       string `json:"encryptionType,omitempty"`
}

Secret Details

func (*SecretDetails) DeepCopy

func (in *SecretDetails) DeepCopy() *SecretDetails

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

func (*SecretDetails) DeepCopyInto

func (in *SecretDetails) DeepCopyInto(out *SecretDetails)

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

type SfsetLabel

type SfsetLabel string
const (
	ShardingDelLabelKey        SfsetLabel = "sharding.oracle.com/delflag"
	ShardingDelLabelTrueValue  SfsetLabel = "true"
	ShardingDelLabelFalseValue SfsetLabel = "false"
)

type ShardLifecycleState

type ShardLifecycleState string
const (
	AvailableState        ShardLifecycleState = "AVAILABLE"
	FailedState           ShardLifecycleState = "FAILED"
	UpdateState           ShardLifecycleState = "UPDATING"
	ProvisionState        ShardLifecycleState = "PROVISIONING"
	PodNotReadyState      ShardLifecycleState = "PODNOTREADY"
	PodFailureState       ShardLifecycleState = "PODFAILURE"
	PodNotFound           ShardLifecycleState = "PODNOTFOUND"
	StatefulSetFailure    ShardLifecycleState = "STATEFULSETFAILURE"
	StatefulSetNotFound   ShardLifecycleState = "STATEFULSETNOTFOUND"
	DeletingState         ShardLifecycleState = "DELETING"
	DeleteErrorState      ShardLifecycleState = "DELETE_ERROR"
	ChunkMoveError        ShardLifecycleState = "CHUNK_MOVE_ERROR_IN_GSM"
	Terminated            ShardLifecycleState = "TERMINATED"
	LabelPatchingError    ShardLifecycleState = "LABELPATCHINGERROR"
	DeletePVCError        ShardLifecycleState = "DELETEPVCERROR"
	AddingShardState      ShardLifecycleState = "SHARD_ADDITION"
	AddingShardErrorState ShardLifecycleState = "SHARD_ADDITION_ERROR_IN_GSM"
	ShardOnlineErrorState ShardLifecycleState = "SHARD_ONLINE_ERROR_IN_GSM"
	ShardOnlineState      ShardLifecycleState = "ONLINE_SHARD"
	ShardRemoveError      ShardLifecycleState = "SHARD_DELETE_ERROR_FROM_GSM"
)

type ShardSpec

type ShardSpec struct {
	Name            string                       `json:"name"`                                                      // Shard name that will be used deploy StatefulSet
	StorageSizeInGb int32                        `json:"storageSizeInGb,omitempty"`                                 // Optional Shard Storage Size
	EnvVars         []EnvironmentVariable        `json:"envVars,omitempty"`                                         //Optional Env variables for Shards
	Resources       *corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,1,opt,name=resources"` //Optional resource requirement for the container.
	PvcName         string                       `json:"pvcName,omitempty"`
	Label           string                       `json:"label,omitempty"`
	// +kubebuilder:validation:Enum=enable;disable;failed;force
	IsDelete         string             `json:"isDelete,omitempty"`
	NodeSelector     map[string]string  `json:"nodeSelector,omitempty"`
	PvAnnotations    map[string]string  `json:"pvAnnotations,omitempty"`
	PvMatchLabels    map[string]string  `json:"pvMatchLabels,omitempty"`
	ImagePulllPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
	ShardSpace       string             `json:"shardSpace,omitempty"`
	ShardGroup       string             `json:"shardGroup,omitempty"`
	ShardRegion      string             `json:"shardRegion,omitempty"`
	DeployAs         string             `json:"deployAs,omitempty"`
}

ShardSpec is a specification of Shards for an application deployment. +k8s:openapi-gen=true

func (*ShardSpec) DeepCopy

func (in *ShardSpec) DeepCopy() *ShardSpec

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

func (*ShardSpec) DeepCopyInto

func (in *ShardSpec) DeepCopyInto(out *ShardSpec)

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

type ShardStatusMapKeys

type ShardStatusMapKeys string
const (
	Name             ShardStatusMapKeys = "Name"
	K8sInternalSvc   ShardStatusMapKeys = "K8sInternalSvc"
	K8sExternalSvc   ShardStatusMapKeys = "K8sExternalSvc"
	K8sInternalSvcIP ShardStatusMapKeys = "K8sInternalSvcIP"
	K8sExternalSvcIP ShardStatusMapKeys = "K8sExternalSvcIP"
	OracleSid        ShardStatusMapKeys = "OracleSid"
	OraclePdb        ShardStatusMapKeys = "OraclePdb"
	Role             ShardStatusMapKeys = "Role"
	DbPasswordSecret ShardStatusMapKeys = "DbPasswordSecret"
	State            ShardStatusMapKeys = "State"
	OpenMode         ShardStatusMapKeys = "OpenMode"
)

type ShardingDatabase

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

	Spec   ShardingDatabaseSpec   `json:"spec,omitempty"`
	Status ShardingDatabaseStatus `json:"status,omitempty"`
}

ShardingDatabase is the Schema for the shardingdatabases API +kubebuilder:resource:path=shardingdatabases,scope=Namespaced +kubebuilder:storageversion

func (*ShardingDatabase) DeepCopy

func (in *ShardingDatabase) DeepCopy() *ShardingDatabase

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

func (*ShardingDatabase) DeepCopyInto

func (in *ShardingDatabase) DeepCopyInto(out *ShardingDatabase)

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

func (*ShardingDatabase) DeepCopyObject

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

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

func (*ShardingDatabase) Default

func (r *ShardingDatabase) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*ShardingDatabase) GetLastSuccessfulOnsInfo

func (shardingv1 *ShardingDatabase) GetLastSuccessfulOnsInfo() ([]byte, error)

GetLastSuccessfulOnsInfo returns spec from the lass successful reconciliation. Returns nil, nil if there is no lastSuccessfulSpec.

func (*ShardingDatabase) GetLastSuccessfulSpec

func (shardingv1 *ShardingDatabase) GetLastSuccessfulSpec() (*ShardingDatabaseSpec, error)

GetLastSuccessfulSpec returns spec from the lass successful reconciliation. Returns nil, nil if there is no lastSuccessfulSpec.

func (*ShardingDatabase) Hub

func (*ShardingDatabase) Hub()

Hub defines v1 as the hub version

func (*ShardingDatabase) SetupWebhookWithManager

func (r *ShardingDatabase) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ShardingDatabase) UpdateLastSuccessfulSpec

func (shardingv1 *ShardingDatabase) UpdateLastSuccessfulSpec(kubeClient client.Client) error

UpdateLastSuccessfulSpec updates lastSuccessfulSpec with the current spec.

func (*ShardingDatabase) UpdateLastSuccessfulSpecOnsInfo

func (shardingv1 *ShardingDatabase) UpdateLastSuccessfulSpecOnsInfo(kubeClient client.Client, specBytes []byte) error

UpdateLastSuccessfulSpec updates lastSuccessfulSpec with the current spec.

func (*ShardingDatabase) ValidateCreate

func (r *ShardingDatabase) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ShardingDatabase) ValidateDelete

func (r *ShardingDatabase) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ShardingDatabase) ValidateUpdate

func (r *ShardingDatabase) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ShardingDatabaseList

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

ShardingDatabaseList contains a list of ShardingDatabase

func (*ShardingDatabaseList) DeepCopy

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

func (*ShardingDatabaseList) DeepCopyInto

func (in *ShardingDatabaseList) DeepCopyInto(out *ShardingDatabaseList)

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

func (*ShardingDatabaseList) DeepCopyObject

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

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

type ShardingDatabaseSpec

type ShardingDatabaseSpec struct {
	// INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Shard                     []ShardSpec         `json:"shard"`
	Catalog                   []CatalogSpec       `json:"catalog"`                      // The catalogSpes accept all the catalog parameters
	Gsm                       []GsmSpec           `json:"gsm"`                          // The GsmSpec will accept all the Gsm parameter
	StorageClass              string              `json:"storageClass,omitempty"`       // Optional Accept storage class name
	DbImage                   string              `json:"dbImage"`                      // Accept DB Image name
	DbImagePullSecret         string              `json:"dbImagePullSecret,omitempty"`  // Optional The name of an image pull secret in case of a private docker repository.
	GsmImage                  string              `json:"gsmImage"`                     // Acccept the GSM image name
	GsmImagePullSecret        string              `json:"gsmImagePullSecret,omitempty"` // Optional  The name of an image pull secret in case of a private docker repository.
	StagePvcName              string              `json:"stagePvcName,omitempty"`       // the Stagepvc  for the backup of cluster
	PortMappings              []PortMapping       `json:"portMappings,omitempty"`       // Port mappings for the service that is created. The service is created if there is at least
	IsDebug                   bool                `json:"isDebug,omitempty"`            // Optional parameter to enable logining
	IsExternalSvc             bool                `json:"isExternalSvc,omitempty"`
	IsClone                   bool                `json:"isClone,omitempty"`
	IsDataGuard               bool                `json:"isDataGuard,omitempty"`
	ScriptsLocation           string              `json:"scriptsLocation,omitempty"`
	IsDeleteOraPvc            bool                `json:"isDeleteOraPvc,omitempty"`
	ReadinessCheckPeriod      int                 `json:"readinessCheckPeriod,omitempty"`
	LivenessCheckPeriod       int                 `json:"liveinessCheckPeriod,omitempty"`
	ReplicationType           string              `json:"replicationType,omitempty"`
	IsDownloadScripts         bool                `json:"isDownloadScripts,omitempty"`
	InvitedNodeSubnetFlag     string              `json:"invitedNodeSubnetFlag,omitempty"`
	InvitedNodeSubnet         string              `json:"InvitedNodeSubnet,omitempty"`
	ShardingType              string              `json:"shardingType,omitempty"`
	GsmShardSpace             []GsmShardSpaceSpec `json:"gsmShardSpace,omitempty"`
	GsmShardGroup             []GsmShardGroupSpec `json:"gsmShardGroup,omitempty"`
	ShardRegion               []string            `json:"shardRegion,omitempty"`
	ShardBuddyRegion          string              `json:"shardBuddyRegion,omitempty"`
	GsmService                []GsmServiceSpec    `json:"gsmService,omitempty"`
	ShardConfigName           string              `json:"shardConfigName,omitempty"`
	GsmDevMode                string              `json:"gsmDevMode,omitempty"`
	DbSecret                  *SecretDetails      `json:"dbSecret,omitempty"` //  Secret Name to be used with Shard
	IsTdeWallet               string              `json:"isTdeWallet,omitempty"`
	TdeWalletPvc              string              `json:"tdeWalletPvc,omitempty"`
	FssStorageClass           string              `json:"fssStorageClass,omitempty"`
	TdeWalletPvcMountLocation string              `json:"tdeWalletPvcMountLocation,omitempty"`
	DbEdition                 string              `json:"dbEdition,omitempty"`
	TopicId                   string              `json:"topicId,omitempty"`
}

ShardingDatabaseSpec defines the desired state of ShardingDatabase

func (*ShardingDatabaseSpec) DeepCopy

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

func (*ShardingDatabaseSpec) DeepCopyInto

func (in *ShardingDatabaseSpec) DeepCopyInto(out *ShardingDatabaseSpec)

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

type ShardingDatabaseStatus

type ShardingDatabaseStatus struct {
	Shard   map[string]string `json:"shards,omitempty"`
	Catalog map[string]string `json:"catalogs,omitempty"`

	Gsm GsmStatus `json:"gsm,omitempty"`

	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	CrdStatus []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}

To understand Metav1.Condition, please refer the link https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1 ShardingDatabaseStatus defines the observed state of ShardingDatabase

func (*ShardingDatabaseStatus) DeepCopy

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

func (*ShardingDatabaseStatus) DeepCopyInto

func (in *ShardingDatabaseStatus) DeepCopyInto(out *ShardingDatabaseStatus)

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

type SingleInstanceDatabase

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

	Spec   SingleInstanceDatabaseSpec   `json:"spec,omitempty"`
	Status SingleInstanceDatabaseStatus `json:"status,omitempty"`
}

SingleInstanceDatabase is the Schema for the singleinstancedatabases API +kubebuilder:storageversion

func (*SingleInstanceDatabase) DeepCopy

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

func (*SingleInstanceDatabase) DeepCopyInto

func (in *SingleInstanceDatabase) DeepCopyInto(out *SingleInstanceDatabase)

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

func (*SingleInstanceDatabase) DeepCopyObject

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

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

func (*SingleInstanceDatabase) Hub

func (*SingleInstanceDatabase) Hub()

Hub defines v1 as the hub version

func (*SingleInstanceDatabase) SetupWebhookWithManager

func (r *SingleInstanceDatabase) SetupWebhookWithManager(mgr ctrl.Manager) error

type SingleInstanceDatabaseAdminPassword

type SingleInstanceDatabaseAdminPassword struct {
	SecretName string `json:"secretName"`
	// +kubebuilder:default:="oracle_pwd"
	SecretKey  string `json:"secretKey,omitempty"`
	KeepSecret *bool  `json:"keepSecret,omitempty"`
}

SingleInsatnceAdminPassword defines the secret containing Admin Password mapped to secretKey for Database

func (*SingleInstanceDatabaseAdminPassword) DeepCopy

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

func (*SingleInstanceDatabaseAdminPassword) DeepCopyInto

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

type SingleInstanceDatabaseImage

type SingleInstanceDatabaseImage struct {
	Version     string `json:"version,omitempty"`
	PullFrom    string `json:"pullFrom"`
	PullSecrets string `json:"pullSecrets,omitempty"`
	PrebuiltDB  bool   `json:"prebuiltDB,omitempty"`
}

SingleInstanceDatabaseImage defines the Image source and pullSecrets for POD

func (*SingleInstanceDatabaseImage) DeepCopy

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

func (*SingleInstanceDatabaseImage) DeepCopyInto

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

type SingleInstanceDatabaseInitParams

type SingleInstanceDatabaseInitParams struct {
	SgaTarget          int `json:"sgaTarget,omitempty"`
	PgaAggregateTarget int `json:"pgaAggregateTarget,omitempty"`
	CpuCount           int `json:"cpuCount,omitempty"`
	Processes          int `json:"processes,omitempty"`
}

SingleInstanceDatabaseInitParams defines the Init Parameters

func (*SingleInstanceDatabaseInitParams) DeepCopy

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

func (*SingleInstanceDatabaseInitParams) DeepCopyInto

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

type SingleInstanceDatabaseList

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

SingleInstanceDatabaseList contains a list of SingleInstanceDatabase

func (*SingleInstanceDatabaseList) DeepCopy

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

func (*SingleInstanceDatabaseList) DeepCopyInto

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

func (*SingleInstanceDatabaseList) DeepCopyObject

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

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

type SingleInstanceDatabasePersistence

type SingleInstanceDatabasePersistence struct {
	Size         string `json:"size,omitempty"`
	StorageClass string `json:"storageClass,omitempty"`
	// +kubebuilder:validation:Enum=ReadWriteOnce;ReadWriteMany
	AccessMode            string `json:"accessMode,omitempty"`
	DatafilesVolumeName   string `json:"datafilesVolumeName,omitempty"`
	ScriptsVolumeName     string `json:"scriptsVolumeName,omitempty"`
	VolumeClaimAnnotation string `json:"volumeClaimAnnotation,omitempty"`
	SetWritePermissions   *bool  `json:"setWritePermissions,omitempty"`
}

SingleInstanceDatabasePersistence defines the storage size and class for PVC

func (*SingleInstanceDatabasePersistence) DeepCopy

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

func (*SingleInstanceDatabasePersistence) DeepCopyInto

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

type SingleInstanceDatabaseResource

type SingleInstanceDatabaseResource struct {
	Cpu    string `json:"cpu,omitempty"`
	Memory string `json:"memory,omitempty"`
}

func (*SingleInstanceDatabaseResource) DeepCopy

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

func (*SingleInstanceDatabaseResource) DeepCopyInto

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

type SingleInstanceDatabaseResources

type SingleInstanceDatabaseResources struct {
	Requests *SingleInstanceDatabaseResource `json:"requests,omitempty"`
	Limits   *SingleInstanceDatabaseResource `json:"limits,omitempty"`
}

func (*SingleInstanceDatabaseResources) DeepCopy

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

func (*SingleInstanceDatabaseResources) DeepCopyInto

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

type SingleInstanceDatabaseSpec

type SingleInstanceDatabaseSpec struct {

	// +kubebuilder:validation:Enum=standard;enterprise;express;free
	Edition string `json:"edition,omitempty"`

	// SID must be alphanumeric (no special characters, only a-z, A-Z, 0-9), and no longer than 12 characters.
	// +k8s:openapi-gen=true
	// +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]+$`
	// +kubebuilder:validation:MaxLength:=12
	Sid                   string            `json:"sid,omitempty"`
	Charset               string            `json:"charset,omitempty"`
	Pdbname               string            `json:"pdbName,omitempty"`
	LoadBalancer          bool              `json:"loadBalancer,omitempty"`
	ListenerPort          int               `json:"listenerPort,omitempty"`
	TcpsListenerPort      int               `json:"tcpsListenerPort,omitempty"`
	ServiceAnnotations    map[string]string `json:"serviceAnnotations,omitempty"`
	FlashBack             *bool             `json:"flashBack,omitempty"`
	ArchiveLog            *bool             `json:"archiveLog,omitempty"`
	ForceLogging          *bool             `json:"forceLog,omitempty"`
	EnableTCPS            bool              `json:"enableTCPS,omitempty"`
	TcpsCertRenewInterval string            `json:"tcpsCertRenewInterval,omitempty"`
	TcpsTlsSecret         string            `json:"tcpsTlsSecret,omitempty"`

	PrimaryDatabaseRef string `json:"primaryDatabaseRef,omitempty"`
	// +kubebuilder:validation:Enum=primary;standby;clone;truecache
	CreateAs             string   `json:"createAs,omitempty"`
	ReadinessCheckPeriod int      `json:"readinessCheckPeriod,omitempty"`
	ServiceAccountName   string   `json:"serviceAccountName,omitempty"`
	TrueCacheServices    []string `json:"trueCacheServices,omitempty"`

	// +k8s:openapi-gen=true
	Replicas int `json:"replicas,omitempty"`

	NodeSelector  map[string]string                   `json:"nodeSelector,omitempty"`
	AdminPassword SingleInstanceDatabaseAdminPassword `json:"adminPassword,omitempty"`
	Image         SingleInstanceDatabaseImage         `json:"image"`
	Persistence   SingleInstanceDatabasePersistence   `json:"persistence,omitempty"`
	InitParams    *SingleInstanceDatabaseInitParams   `json:"initParams,omitempty"`
	Resources     SingleInstanceDatabaseResources     `json:"resources,omitempty"`

	ConvertToSnapshotStandby bool `json:"convertToSnapshotStandby,omitempty"`
}

SingleInstanceDatabaseSpec defines the desired state of SingleInstanceDatabase

func (*SingleInstanceDatabaseSpec) DeepCopy

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

func (*SingleInstanceDatabaseSpec) DeepCopyInto

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

type SingleInstanceDatabaseStatus

type SingleInstanceDatabaseStatus struct {
	Nodes         []string `json:"nodes,omitempty"`
	Role          string   `json:"role,omitempty"`
	Status        string   `json:"status,omitempty"`
	Replicas      int      `json:"replicas,omitempty"`
	ReleaseUpdate string   `json:"releaseUpdate,omitempty"`
	DgBroker      *string  `json:"dgBroker,omitempty"`
	// +kubebuilder:default:="false"
	DatafilesPatched     string            `json:"datafilesPatched,omitempty"`
	ConnectString        string            `json:"connectString,omitempty"`
	ClusterConnectString string            `json:"clusterConnectString,omitempty"`
	TcpsConnectString    string            `json:"tcpsConnectString,omitempty"`
	StandbyDatabases     map[string]string `json:"standbyDatabases,omitempty"`
	// +kubebuilder:default:="false"
	DatafilesCreated     string `json:"datafilesCreated,omitempty"`
	Sid                  string `json:"sid,omitempty"`
	Edition              string `json:"edition,omitempty"`
	Charset              string `json:"charset,omitempty"`
	Pdbname              string `json:"pdbName,omitempty"`
	InitSgaSize          int    `json:"initSgaSize,omitempty"`
	InitPgaSize          int    `json:"initPgaSize,omitempty"`
	CreatedAs            string `json:"createdAs,omitempty"`
	FlashBack            string `json:"flashBack,omitempty"`
	ArchiveLog           string `json:"archiveLog,omitempty"`
	ForceLogging         string `json:"forceLog,omitempty"`
	OemExpressUrl        string `json:"oemExpressUrl,omitempty"`
	OrdsReference        string `json:"ordsReference,omitempty"`
	PdbConnectString     string `json:"pdbConnectString,omitempty"`
	TcpsPdbConnectString string `json:"tcpsPdbConnectString,omitempty"`
	ApexInstalled        bool   `json:"apexInstalled,omitempty"`
	PrebuiltDB           bool   `json:"prebuiltDB,omitempty"`
	// +kubebuilder:default:=false
	IsTcpsEnabled         bool   `json:"isTcpsEnabled"`
	CertCreationTimestamp string `json:"certCreationTimestamp,omitempty"`
	CertRenewInterval     string `json:"certRenewInterval,omitempty"`
	ClientWalletLoc       string `json:"clientWalletLoc,omitempty"`
	PrimaryDatabase       string `json:"primaryDatabase,omitempty"`
	// +kubebuilder:default:=""
	TcpsTlsSecret string `json:"tcpsTlsSecret"`

	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`

	InitParams  SingleInstanceDatabaseInitParams  `json:"initParams,omitempty"`
	Persistence SingleInstanceDatabasePersistence `json:"persistence"`

	ConvertToSnapshotStandby bool `json:"convertToSnapshotStandby,omitempty"`
}

SingleInstanceDatabaseStatus defines the observed state of SingleInstanceDatabase

func (*SingleInstanceDatabaseStatus) DeepCopy

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

func (*SingleInstanceDatabaseStatus) DeepCopyInto

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

type SourceSpec

type SourceSpec struct {
	K8sAdbBackup K8sADBBackupSpec `json:"k8sADBBackup,omitempty"`
	PointInTime  PITSpec          `json:"pointInTime,omitempty"`
}

func (*SourceSpec) DeepCopy

func (in *SourceSpec) DeepCopy() *SourceSpec

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

func (*SourceSpec) DeepCopyInto

func (in *SourceSpec) DeepCopyInto(out *SourceSpec)

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

type TDEPwd

type TDEPwd struct {
	Secret PDBSecret `json:"secret"`
}

TDEPwd defines the secret containing TDE Wallet Password mapped to key 'tdePassword' for PDB

func (*TDEPwd) DeepCopy

func (in *TDEPwd) DeepCopy() *TDEPwd

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

func (*TDEPwd) DeepCopyInto

func (in *TDEPwd) DeepCopyInto(out *TDEPwd)

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

type TDESecret

type TDESecret struct {
	Secret PDBSecret `json:"secret"`
}

TDESecret defines the secret containing TDE Secret to key 'tdeSecret' for PDB

func (*TDESecret) DeepCopy

func (in *TDESecret) DeepCopy() *TDESecret

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

func (*TDESecret) DeepCopyInto

func (in *TDESecret) DeepCopyInto(out *TDESecret)

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

type TLSAuthenticationEnum

type TLSAuthenticationEnum string

func GetTLSAuthenticationEnumFromString

func GetTLSAuthenticationEnumFromString(val string) (TLSAuthenticationEnum, bool)

type TNSAdminSecret

type TNSAdminSecret struct {
	// Specifies the name of the TNS_ADMIN Secret
	SecretName string `json:"secretName"`
}

Defines the secret containing Certificates

func (*TNSAdminSecret) DeepCopy

func (in *TNSAdminSecret) DeepCopy() *TNSAdminSecret

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

func (*TNSAdminSecret) DeepCopyInto

func (in *TNSAdminSecret) DeepCopyInto(out *TNSAdminSecret)

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

type TargetSpec

type TargetSpec struct {
	K8sAdb K8sAdbSpec `json:"k8sADB,omitempty"`
	OciAdb OciAdbSpec `json:"ociADB,omitempty"`
}

TargetSpec defines the spec of the target for backup/restore runs.

func (*TargetSpec) DeepCopy

func (in *TargetSpec) DeepCopy() *TargetSpec

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

func (*TargetSpec) DeepCopyInto

func (in *TargetSpec) DeepCopyInto(out *TargetSpec)

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

type VmNetworkDetails

type VmNetworkDetails struct {
	VcnName      *string `json:"vcnName,omitempty"`
	SubnetName   *string `json:"clientSubnet,omitempty"`
	ScanDnsName  *string `json:"scanDnsName,omitempty"`
	HostName     string  `json:"hostName,omitempty"`
	DomainName   string  `json:"domainName,omitempty"`
	ListenerPort *int    `json:"listenerPort,omitempty"`
	NetworkSG    string  `json:"networkSG,omitempty"`
}

func (*VmNetworkDetails) DeepCopy

func (in *VmNetworkDetails) DeepCopy() *VmNetworkDetails

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

func (*VmNetworkDetails) DeepCopyInto

func (in *VmNetworkDetails) DeepCopyInto(out *VmNetworkDetails)

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

type WalletSpec

type WalletSpec struct {
	Name     *string      `json:"name,omitempty"`
	Password PasswordSpec `json:"password,omitempty"`
}

func (*WalletSpec) DeepCopy

func (in *WalletSpec) DeepCopy() *WalletSpec

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

func (*WalletSpec) DeepCopyInto

func (in *WalletSpec) DeepCopyInto(out *WalletSpec)

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

type WebLrestServerPassword

type WebLrestServerPassword struct {
	Secret LRESTSecret `json:"secret"`
}

WebLrestServerPassword defines the secret containing password for Web Server User mapped to key 'webServerPwd' to manage PDB lifecycle

func (*WebLrestServerPassword) DeepCopy

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

func (*WebLrestServerPassword) DeepCopyInto

func (in *WebLrestServerPassword) DeepCopyInto(out *WebLrestServerPassword)

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

type WebLrestServerUser

type WebLrestServerUser struct {
	Secret LRESTSecret `json:"secret"`
}

WebLrestServerUser defines the secret containing Web Server User mapped to key 'webServerUser' to manage PDB lifecycle

func (*WebLrestServerUser) DeepCopy

func (in *WebLrestServerUser) DeepCopy() *WebLrestServerUser

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

func (*WebLrestServerUser) DeepCopyInto

func (in *WebLrestServerUser) DeepCopyInto(out *WebLrestServerUser)

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

type WebLrpdbServerPassword

type WebLrpdbServerPassword struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*WebLrpdbServerPassword) DeepCopy

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

func (*WebLrpdbServerPassword) DeepCopyInto

func (in *WebLrpdbServerPassword) DeepCopyInto(out *WebLrpdbServerPassword)

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

type WebLrpdbServerUser

type WebLrpdbServerUser struct {
	Secret LRPDBSecret `json:"secret"`
}

func (*WebLrpdbServerUser) DeepCopy

func (in *WebLrpdbServerUser) DeepCopy() *WebLrpdbServerUser

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

func (*WebLrpdbServerUser) DeepCopyInto

func (in *WebLrpdbServerUser) DeepCopyInto(out *WebLrpdbServerUser)

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

type WebServerPassword

type WebServerPassword struct {
	Secret CDBSecret `json:"secret"`
}

WebServerPassword defines the secret containing password for Web Server User mapped to key 'webServerPwd' to manage PDB lifecycle

func (*WebServerPassword) DeepCopy

func (in *WebServerPassword) DeepCopy() *WebServerPassword

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

func (*WebServerPassword) DeepCopyInto

func (in *WebServerPassword) DeepCopyInto(out *WebServerPassword)

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

type WebServerPasswordPDB

type WebServerPasswordPDB struct {
	Secret PDBSecret `json:"secret"`
}

WebServerPassword defines the secret containing password for Web Server User mapped to key 'webServerPwd' to manage PDB lifecycle

func (*WebServerPasswordPDB) DeepCopy

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

func (*WebServerPasswordPDB) DeepCopyInto

func (in *WebServerPasswordPDB) DeepCopyInto(out *WebServerPasswordPDB)

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

type WebServerUser

type WebServerUser struct {
	Secret CDBSecret `json:"secret"`
}

WebServerUser defines the secret containing Web Server User mapped to key 'webServerUser' to manage PDB lifecycle

func (*WebServerUser) DeepCopy

func (in *WebServerUser) DeepCopy() *WebServerUser

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

func (*WebServerUser) DeepCopyInto

func (in *WebServerUser) DeepCopyInto(out *WebServerUser)

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

type WebServerUserPDB

type WebServerUserPDB struct {
	Secret PDBSecret `json:"secret"`
}

func (*WebServerUserPDB) DeepCopy

func (in *WebServerUserPDB) DeepCopy() *WebServerUserPDB

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

func (*WebServerUserPDB) DeepCopyInto

func (in *WebServerUserPDB) DeepCopyInto(out *WebServerUserPDB)

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