v1alpha1

package
v0.5.5 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2026 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the ndb v1alpha1 API group +kubebuilder:object:generate=true +groupName=ndb.nutanix.com

Index

Constants

This section is empty.

Variables

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

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

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

Functions

func ApplyDefaultsFromConfigMap added in v0.5.4

func ApplyDefaultsFromConfigMap(ctx context.Context, database *Database, defaults map[string]string)

ApplyDefaultsFromConfigMap applies defaults from ConfigMap to Database resource. Called by the defaulter webhook before validation so the CR is fully populated.

func FetchConfigMapDefaults added in v0.5.4

func FetchConfigMapDefaults(ctx context.Context, k8sClient client.Reader, namespace, configMapName string) (map[string]string, error)

FetchConfigMapDefaults fetches a ConfigMap and returns its data as a map. Used by the defaulter webhook to inject values before validation.

Types

type Clone added in v0.0.8

type Clone struct {
	// Name of the clone instance
	Name string `json:"name"`
	// Description of the clone instance
	// +optional
	Description string `json:"description"`
	// Type of parent clone
	Type string `json:"type"`
	// Id of the cluster to clone the database on
	// Either clusterId or clusterName must be provided
	// +optional
	ClusterId string `json:"clusterId,omitempty"`
	// Name of the cluster to clone the database on
	// Either clusterId or clusterName must be provided
	// +optional
	ClusterName string `json:"clusterName,omitempty"`
	// +optional
	Profiles *Profiles `json:"profiles"`
	// Name of the secret holding the credentials for the database instance (password and ssh key)
	CredentialSecret string `json:"credentialSecret"`
	// +optional
	// default UTC
	TimeZone string `json:"timezone"`
	// Id of the source database on NDB to clone from
	// Either sourceDatabaseId or sourceDatabaseName must be provided
	// +optional
	SourceDatabaseId string `json:"sourceDatabaseId,omitempty"`
	// Name of the source database on NDB to clone from
	// Either sourceDatabaseId or sourceDatabaseName must be provided
	// +optional
	SourceDatabaseName string `json:"sourceDatabaseName,omitempty"`
	// Id of the snapshot to create a clone from
	// Either snapshotId or snapshotName must be provided
	// +optional
	SnapshotId string `json:"snapshotId,omitempty"`
	// Name of the snapshot to create a clone from
	// Either snapshotId or snapshotName must be provided
	// +optional
	SnapshotName string `json:"snapshotName,omitempty"`
	// +optional
	// Additional database engine specific arguments
	AdditionalArguments map[string]string `json:"additionalArguments"`
}

func (*Clone) DeepCopy added in v0.0.8

func (in *Clone) DeepCopy() *Clone

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

func (*Clone) DeepCopyInto added in v0.0.8

func (in *Clone) DeepCopyInto(out *Clone)

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

type CloningWebhookHandler added in v0.0.8

type CloningWebhookHandler struct{}

+kubebuilder:object:generate:=false Implements admission.CustomValidator, admission.CustomDefaulter

type DBTimeMachineInfo added in v0.0.6

type DBTimeMachineInfo struct {
	// +optional
	Name string `json:"name"`
	// +optional
	Description string `json:"description"`
	// +optional
	// Name of the SLA to be used, default NONE
	SLAName string `json:"sla"`
	// +optional
	// Daily snapshot time in HH:MM:SS (24 hour format)
	DailySnapshotTime string `json:"dailySnapshotTime"`
	// +optional
	// Number of snapshots per day
	SnapshotsPerDay int `json:"snapshotsPerDay"`
	// +optional
	// Log catch up frequency in minutes
	LogCatchUpFrequency int `json:"logCatchUpFrequency"`
	// +optional
	// Day of the week for weekly snapshot
	WeeklySnapshotDay string `json:"weeklySnapshotDay"`
	// +optional
	// Day of the month for monthly snapshot
	MonthlySnapshotDay int `json:"monthlySnapshotDay"`
	// +optional
	// Start month for the quarterly snapshot
	// Jan => Jan, Apr, Jul, Oct.
	// Feb => Feb, May, Aug, Nov.
	// Mar => Mar, Jun, Sep, Dec.
	QuarterlySnapshotMonth string `json:"quarterlySnapshotMonth"`
}

Time Machine details

func (*DBTimeMachineInfo) DeepCopy added in v0.0.6

func (in *DBTimeMachineInfo) DeepCopy() *DBTimeMachineInfo

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

func (*DBTimeMachineInfo) DeepCopyInto added in v0.0.6

func (in *DBTimeMachineInfo) DeepCopyInto(out *DBTimeMachineInfo)

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

type Database

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

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

Database is the Schema for the databases API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName={"db","dbs"} +kubebuilder:printcolumn:name="IP Address",type=string,JSONPath=`.status.ipAddress` +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.status` +kubebuilder:printcolumn:name="Type",type=string,JSONPath=`.status.type`

func (*Database) DeepCopy

func (in *Database) DeepCopy() *Database

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

func (*Database) DeepCopyInto

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

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

func (*Database) DeepCopyObject

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

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

func (*Database) SetupWebhookWithManager added in v0.0.6

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

func (*Database) ValidateCreate added in v0.0.6

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

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

func (*Database) ValidateDelete added in v0.0.6

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

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

func (*Database) ValidateUpdate added in v0.0.6

func (r *Database) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)

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

type DatabaseCustomDefaulter added in v0.5.4

type DatabaseCustomDefaulter struct {
	Client client.Reader
}

+kubebuilder:object:generate=false DatabaseCustomDefaulter injects ConfigMap defaults into the Database CR before validation. This ensures validation sees the fully populated CR and we don't need to relax validation. Client is a client.Reader (not client.Client) so that a direct API reader can be injected, avoiding a cluster-wide ConfigMap watch just to serve occasional webhook admission calls.

func (*DatabaseCustomDefaulter) Default added in v0.5.4

Default implements admission.CustomDefaulter. Fetches ConfigMap if defaultsConfigMapRef is set, applies defaults to the CR, then runs standard defaulter. Validation runs on the fully populated CR.

type DatabaseList

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

+kubebuilder:object:root=true DatabaseList contains a list of Database

func (*DatabaseList) DeepCopy

func (in *DatabaseList) DeepCopy() *DatabaseList

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

func (*DatabaseList) DeepCopyInto

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

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

func (*DatabaseList) DeepCopyObject

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

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

type DatabaseSpec

type DatabaseSpec struct {
	// +kubebuilder:validation:Required
	NDBRef string `json:"ndbRef"`
	// +optional
	// DefaultsConfigMapRef references a ConfigMap containing default values
	// for database configuration. Values explicitly set in this spec take
	// precedence over ConfigMap defaults. The ConfigMap should be in the same
	// namespace as the Database resource.
	DefaultsConfigMapRef string `json:"defaultsConfigMapRef,omitempty"`
	// +optional
	IsClone bool `json:"isClone"`
	// +optional
	Instance *Instance `json:"databaseInstance"`
	// +optional
	Clone *Clone `json:"clone"`
}

DatabaseSpec defines the desired state of Database

func (*DatabaseSpec) DeepCopy

func (in *DatabaseSpec) DeepCopy() *DatabaseSpec

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

func (*DatabaseSpec) DeepCopyInto

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

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

type DatabaseStatus

type DatabaseStatus struct {
	IPAddress                 string `json:"ipAddress"`
	Id                        string `json:"id"`
	Status                    string `json:"status"`
	DatabaseServerId          string `json:"dbServerId"`
	Type                      string `json:"type"`
	CreationOperationId       string `json:"creationOperationId"`
	DeregistrationOperationId string `json:"deregistrationOperationId"`
	// DBServerDeletionOperationIds holds the NDB operation ID returned by the DPC (DBServerCluster) deletion.
	// Populated when HA deletion starts; polled until the operation completes before the finalizer is removed.
	DBServerDeletionOperationIds []string `json:"dbServerDeletionOperationIds,omitempty"`
}

DatabaseStatus defines the observed state of Database

func (*DatabaseStatus) DeepCopy

func (in *DatabaseStatus) DeepCopy() *DatabaseStatus

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

func (*DatabaseStatus) DeepCopyInto

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

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

type DatabaseWebhookHandler added in v0.0.8

type DatabaseWebhookHandler interface {
	// contains filtered or unexported methods
}

+kubebuilder:object:generate:=false

type HAParamsValidator added in v0.5.5

type HAParamsValidator interface {
	// Validate checks engine-specific fields (e.g. patroniClusterName for Postgres)
	// and engine-specific node constraints (e.g. valid nodeType values, Primary count).
	Validate(haConfig *InstanceHAConfig, haPath *field.Path, errors *field.ErrorList)
}

HAParamsValidator validates engine-specific constraints within an InstanceHAConfig. Each database engine that supports HA provides its own implementation. +kubebuilder:object:generate=false

type Instance

type Instance struct {
	// Name of the database instance
	Name string `json:"name"`
	// +optional
	// Description of the database instance
	Description string `json:"description"`
	// Id of the cluster to provision the database on
	// Either clusterId or clusterName must be provided
	// +optional
	ClusterId string `json:"clusterId,omitempty"`
	// Name of the cluster to provision the database on
	// Either clusterId or clusterName must be provided
	// +optional
	ClusterName string `json:"clusterName,omitempty"`
	// +optional
	Profiles *Profiles `json:"profiles"`
	// Name of the secret holding the credentials for the database instance (password and ssh key)
	CredentialSecret string `json:"credentialSecret"`
	// +optional
	// default UTC
	TimeZone string `json:"timezone"`
	// +optional
	// Name(s) of the database(s) to be provisioned inside the database instance
	// default [ "database_one", "database_two", "database_three" ]
	DatabaseNames []string `json:"databaseNames"`
	// Size of the database instance, minimum 10 (GBs)
	Size int    `json:"size"`
	Type string `json:"type"`
	// +optional
	// Information related to time machine that is to be associated with this database
	TMInfo *DBTimeMachineInfo `json:"timeMachine"`
	// +optional
	// Additional database engine specific arguments
	AdditionalArguments map[string]string `json:"additionalArguments"`
	// +optional
	// HA configuration for Postgres HA instances (multi-cluster topology).
	// When set, provisions a clustered Postgres instance with HAProxy and Patroni.
	HAConfig *InstanceHAConfig `json:"haConfig,omitempty"`
}

Database instance specific details

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

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

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

type InstanceHAConfig added in v0.5.5

type InstanceHAConfig struct {
	// Display name for the NDB HA cluster
	// +kubebuilder:validation:Required
	ClusterName string `json:"clusterName"`
	// Enable synchronous replication mode
	// +optional
	EnableSynchronousMode bool `json:"enableSynchronousMode,omitempty"`
	// Node placement and role definitions for all VMs in the HA cluster
	// +kubebuilder:validation:Required
	Nodes []InstanceHANode `json:"nodes"`
	// Postgres contains Patroni and HAProxy settings specific to Postgres HA.
	// Required when the database type is "postgres".
	// +optional
	Postgres *PostgresHAConfig `json:"postgres,omitempty"`
}

InstanceHAConfig holds the HA provisioning configuration for a database instance. Generic fields (ClusterName, EnableSynchronousMode, Nodes) apply to all HA engines. Engine-specific settings are nested under the corresponding engine field (e.g. Postgres). Exactly one engine field must be set, matching the instance.type.

func (*InstanceHAConfig) DeepCopy added in v0.5.5

func (in *InstanceHAConfig) DeepCopy() *InstanceHAConfig

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

func (*InstanceHAConfig) DeepCopyInto added in v0.5.5

func (in *InstanceHAConfig) DeepCopyInto(out *InstanceHAConfig)

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

type InstanceHANode added in v0.5.5

type InstanceHANode struct {
	// Name of the VM to be created
	// +kubebuilder:validation:Required
	VmName string `json:"vmName"`
	// Type of this node: "haproxy" or "database"
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Enum=haproxy;database
	NodeType string `json:"nodeType"`
	// Role of this node (database nodes only): "Primary" or "Secondary"
	// +optional
	Role string `json:"role,omitempty"`
	// Id of the PE cluster this node should be placed on.
	// Either clusterId or clusterName must be provided.
	// +optional
	ClusterId string `json:"clusterId,omitempty"`
	// Name of the PE cluster this node should be placed on.
	// Either clusterId or clusterName must be provided.
	// +optional
	ClusterName string `json:"clusterName,omitempty"`
	// Failover mode for database nodes (default "Automatic")
	// +optional
	FailoverMode string `json:"failoverMode,omitempty"`
}

InstanceHANode describes the placement and role of a single VM in an HA cluster.

func (*InstanceHANode) DeepCopy added in v0.5.5

func (in *InstanceHANode) DeepCopy() *InstanceHANode

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

func (*InstanceHANode) DeepCopyInto added in v0.5.5

func (in *InstanceHANode) DeepCopyInto(out *InstanceHANode)

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

type NDBServer added in v0.0.7

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

	Spec   NDBServerSpec   `json:"spec,omitempty"`
	Status NDBServerStatus `json:"status,omitempty"`
}

NDBServer is the Schema for the ndbservers API (cluster-scoped).

func (*NDBServer) DeepCopy added in v0.0.7

func (in *NDBServer) DeepCopy() *NDBServer

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

func (*NDBServer) DeepCopyInto added in v0.0.7

func (in *NDBServer) DeepCopyInto(out *NDBServer)

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

func (*NDBServer) DeepCopyObject added in v0.0.7

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

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

type NDBServerDatabaseInfo added in v0.0.7

type NDBServerDatabaseInfo struct {
	Name          string `json:"name"`
	Id            string `json:"id"`
	Status        string `json:"status"`
	DBServerId    string `json:"dbServerId"`
	TimeMachineId string `json:"timeMachineId"`
	IPAddress     string `json:"ipAddress"`
	Type          string `json:"type"`
}

Database related info to be stored in the status field of the NDB CR

func (*NDBServerDatabaseInfo) DeepCopy added in v0.0.7

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

func (*NDBServerDatabaseInfo) DeepCopyInto added in v0.0.7

func (in *NDBServerDatabaseInfo) DeepCopyInto(out *NDBServerDatabaseInfo)

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

type NDBServerList added in v0.0.7

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

NDBServerList contains a list of NDBServer

func (*NDBServerList) DeepCopy added in v0.0.7

func (in *NDBServerList) DeepCopy() *NDBServerList

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

func (*NDBServerList) DeepCopyInto added in v0.0.7

func (in *NDBServerList) DeepCopyInto(out *NDBServerList)

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

func (*NDBServerList) DeepCopyObject added in v0.0.7

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

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

type NDBServerSpec added in v0.0.7

type NDBServerSpec struct {
	// +kubebuilder:validation:Required
	Server string `json:"server"`
	// Reference to the secret holding NDB API credentials. The secret can live in a restricted namespace
	// so that developers with access to NDBServer do not need access to the secret.
	// +kubebuilder:validation:Required
	CredentialSecretRef SecretReference `json:"credentialSecretRef"`
	// +kubebuilder:default:=false
	// +optional
	// Skip server's certificate and hostname verification
	SkipCertificateVerification bool `json:"skipCertificateVerification"`
}

NDBServerSpec defines the desired state of NDBServer

func (*NDBServerSpec) DeepCopy added in v0.0.7

func (in *NDBServerSpec) DeepCopy() *NDBServerSpec

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

func (*NDBServerSpec) DeepCopyInto added in v0.0.7

func (in *NDBServerSpec) DeepCopyInto(out *NDBServerSpec)

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

type NDBServerStatus added in v0.0.7

type NDBServerStatus struct {
	Status           string                           `json:"status"`
	LastUpdated      string                           `json:"lastUpdated"`
	Databases        map[string]NDBServerDatabaseInfo `json:"databases"`
	ReconcileCounter ReconcileCounter                 `json:"reconcileCounter"`
}

NDBServerStatus defines the observed state of NDBServer

func (*NDBServerStatus) DeepCopy added in v0.0.7

func (in *NDBServerStatus) DeepCopy() *NDBServerStatus

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

func (*NDBServerStatus) DeepCopyInto added in v0.0.7

func (in *NDBServerStatus) DeepCopyInto(out *NDBServerStatus)

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

type PostgresHAConfig added in v0.5.5

type PostgresHAConfig struct {
	// Name used by Patroni for DCS cluster coordination
	// +kubebuilder:validation:Required
	PatroniClusterName string `json:"patroniClusterName"`
	// HAProxy write (primary) port. Defaults to 5000.
	// +optional
	// +kubebuilder:default=5000
	WritePort int32 `json:"writePort,omitempty"`
	// HAProxy read (replica) port. Defaults to 5001.
	// +optional
	// +kubebuilder:default=5001
	ReadPort int32 `json:"readPort,omitempty"`
	// ProvisionVirtualIP controls whether NDB provisions a Virtual IP for the HAProxy layer.
	// Set to true only when all HAProxy VMs are on the same Nutanix cluster (non-stretched VLAN).
	// Defaults to false; use false when HAProxy nodes span multiple PE clusters.
	// +optional
	ProvisionVirtualIP bool `json:"provisionVirtualIP,omitempty"`
}

PostgresHAConfig holds Patroni and HAProxy settings specific to a Postgres HA instance.

func (*PostgresHAConfig) DeepCopy added in v0.5.5

func (in *PostgresHAConfig) DeepCopy() *PostgresHAConfig

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

func (*PostgresHAConfig) DeepCopyInto added in v0.5.5

func (in *PostgresHAConfig) DeepCopyInto(out *PostgresHAConfig)

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

type PostgresHAParamsValidator added in v0.5.5

type PostgresHAParamsValidator struct{}

PostgresHAParamsValidator validates Patroni and HAProxy specific fields for Postgres HA. +kubebuilder:object:generate=false

func (*PostgresHAParamsValidator) Validate added in v0.5.5

func (v *PostgresHAParamsValidator) Validate(haConfig *InstanceHAConfig, haPath *field.Path, errors *field.ErrorList)

Validate checks Postgres-specific HA constraints. Fields validated:

  • haConfig.postgres — must be present (required)
  • haConfig.postgres.patroniClusterName — must be non-empty
  • haConfig.nodes[*].nodeType — must be "haproxy" or "database"
  • haConfig.nodes — exactly one database node must have role "Primary"

type Profile

type Profile struct {
	// +optional
	Id string `json:"id"`
	// +optional
	Name string `json:"name"`
}

func (*Profile) DeepCopy

func (in *Profile) DeepCopy() *Profile

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

func (*Profile) DeepCopyInto

func (in *Profile) DeepCopyInto(out *Profile)

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

type Profiles

type Profiles struct {
	// +optional
	Software Profile `json:"software"`
	// +optional
	Compute Profile `json:"compute"`
	// +optional
	Network Profile `json:"network"`
	// +optional
	DbParam Profile `json:"dbParam"`
	// +optional
	DbParamInstance Profile `json:"dbParamInstance"`
}

func (*Profiles) DeepCopy

func (in *Profiles) DeepCopy() *Profiles

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

func (*Profiles) DeepCopyInto

func (in *Profiles) DeepCopyInto(out *Profiles)

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

type ProvisioningWebhookHandler added in v0.0.8

type ProvisioningWebhookHandler struct{}

+kubebuilder:object:generate:=false Implements admission.CustomValidator, admission.CustomDefaulter

type ReconcileCounter added in v0.0.7

type ReconcileCounter struct {
	Database int `json:"database"`
}

func (*ReconcileCounter) DeepCopy added in v0.0.7

func (in *ReconcileCounter) DeepCopy() *ReconcileCounter

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

func (*ReconcileCounter) DeepCopyInto added in v0.0.7

func (in *ReconcileCounter) DeepCopyInto(out *ReconcileCounter)

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

type SecretReference added in v0.5.3

type SecretReference struct {
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// +kubebuilder:validation:Required
	Namespace string `json:"namespace"`
}

SecretReference references a Secret by name and namespace (e.g. for NDB API credentials in a restricted namespace).

func (*SecretReference) DeepCopy added in v0.5.3

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto added in v0.5.3

func (in *SecretReference) DeepCopyInto(out *SecretReference)

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