v1beta1

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Sep 29, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the neo4j.infra.doodle.com v1beta1 API group +kubebuilder:object:generate=true +groupName=neo4j.infra.doodle.com

Index

Constants

View Source
const (
	ConditionReady        = "Ready"
	ConditionReconciling  = "Reconciling"
	ConditionScaledToZero = "ScaledToZero"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "neo4j.infra.doodle.com", Version: "v1beta1"}

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

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

Functions

This section is empty.

Types

type AuraInstance

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

	Spec   AuraInstanceSpec   `json:"spec,omitempty"`
	Status AuraInstanceStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status

func AuraInstanceReady

func AuraInstanceReady(set AuraInstance, status metav1.ConditionStatus, reason, message string) AuraInstance

func AuraInstanceReconciling

func AuraInstanceReconciling(set AuraInstance, status metav1.ConditionStatus, reason, message string) AuraInstance

func (*AuraInstance) DeepCopy

func (in *AuraInstance) DeepCopy() *AuraInstance

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

func (*AuraInstance) DeepCopyInto

func (in *AuraInstance) DeepCopyInto(out *AuraInstance)

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

func (*AuraInstance) DeepCopyObject

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

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

func (*AuraInstance) GetConditions

func (in *AuraInstance) GetConditions() []metav1.Condition

func (*AuraInstance) GetStatusConditions

func (in *AuraInstance) GetStatusConditions() *[]metav1.Condition

GetStatusConditions returns a pointer to the Status.Conditions slice

func (*AuraInstance) SetConditions

func (in *AuraInstance) SetConditions(conditions []metav1.Condition)

type AuraInstanceList

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

AuraInstanceList contains a list of AuraInstance. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*AuraInstanceList) DeepCopy

func (in *AuraInstanceList) DeepCopy() *AuraInstanceList

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

func (*AuraInstanceList) DeepCopyInto

func (in *AuraInstanceList) DeepCopyInto(out *AuraInstanceList)

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

func (*AuraInstanceList) DeepCopyObject

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

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

type AuraInstanceSpec

type AuraInstanceSpec struct {
	// Tier specifies the Neo4j Aura instance tier
	// +kubebuilder:validation:Required
	Tier AuraInstanceTier `json:"tier"`

	// Region specifies the cloud region for the instance
	// +kubebuilder:validation:Required
	Region string `json:"region"`

	// CloudProvider specifies the cloud provider
	// +kubebuilder:validation:Required
	CloudProvider CloudProvider `json:"cloudProvider"`

	// Memory specifies the memory allocation (e.g., "1GB", "8GB", "16GB")
	// +optional
	Memory string `json:"memory,omitempty"`

	// Neo4jVersion specifies the Neo4j version
	// +kubebuilder:validation:Required
	Neo4jVersion string `json:"neo4jVersion"`

	// TenantID specifies the Aura tenant/project ID
	// +kubebuilder:validation:Required
	TenantID string `json:"tenantID"`

	// Secret is a reference to a secret containing Aura API credentials
	// By default expects keys: clientID, clientSecret
	// Use clientIDKey and clientSecretKey fields to override the default keys
	Secret SecretReference `json:"secret"`

	// ConnectionSecret is a reference to a secret which will contain the connection details.
	// By default this will be ${metadataname}-connection
	ConnectionSecret LocalObjectReference `json:"connectionSecret,omitempty"`

	// VectorOptimized specifies the vector optimization configuration of the instance
	// +optional
	VectorOptimized bool `json:"vectorOptimized,omitempty"`

	// GraphAnalyticsPlugin specifies the graph analytics plugin configuration of the instance
	// +optional
	GraphAnalyticsPlugin bool `json:"graphAnalyticsPlugin,omitempty"`

	// Suspend tells the controller to suspend reconciliation for this instance
	// +optional
	Suspend bool `json:"suspend,omitempty"`

	// Timeout used for upstream http requests
	// +optional
	Timeout *metav1.Duration `json:"timeout,omitempty"`

	// Interval at which the controller should reconcile the instance
	// +optional
	Interval *metav1.Duration `json:"interval,omitempty"`
}

func (*AuraInstanceSpec) DeepCopy

func (in *AuraInstanceSpec) DeepCopy() *AuraInstanceSpec

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

func (*AuraInstanceSpec) DeepCopyInto

func (in *AuraInstanceSpec) DeepCopyInto(out *AuraInstanceSpec)

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

type AuraInstanceStatus

type AuraInstanceStatus struct {
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// ObservedGeneration is the last generation reconciled by the controller
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// InstanceID is the Aura instance ID
	// +optional
	InstanceID string `json:"instanceId,omitempty"`

	// ConnectionSecret is the secret name which contains the connection details
	// +optional
	ConnectionSecret string `json:"connectionUri,omitempty"`

	// Status represents the current status of the Aura instance
	// +optional
	InstanceStatus string `json:"instanceStatus,omitempty"`
}

func (*AuraInstanceStatus) DeepCopy

func (in *AuraInstanceStatus) DeepCopy() *AuraInstanceStatus

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

func (*AuraInstanceStatus) DeepCopyInto

func (in *AuraInstanceStatus) DeepCopyInto(out *AuraInstanceStatus)

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

type AuraInstanceTier

type AuraInstanceTier string

AuraInstanceTier represents the Neo4j Aura instance tier +kubebuilder:validation:Enum=free-db;professional-db;business-critical;enterprise-db

const (
	AuraInstanceTierFreeDb           AuraInstanceTier = "free-db"
	AuraInstanceTierProfessionalDb   AuraInstanceTier = "professional-db"
	AuraInstanceTierBusinessCritical AuraInstanceTier = "business-critical"
	AuraInstanceTierEnterpriseDb     AuraInstanceTier = "enterprise-db"
)

type CloudProvider

type CloudProvider string

CloudProvider represents supported cloud providers +kubebuilder:validation:Enum=aws;gcp;azure

const (
	CloudProviderAWS   CloudProvider = "aws"
	CloudProviderGCP   CloudProvider = "gcp"
	CloudProviderAzure CloudProvider = "azure"
)

type LocalObjectReference

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

func (*LocalObjectReference) DeepCopy

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

func (*LocalObjectReference) DeepCopyInto

func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference)

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

type SecretReference added in v0.0.2

type SecretReference struct {
	Name            string `json:"name"`
	ClientIDKey     string `json:"clientIDKey,omitempty"`
	ClientSecretKey string `json:"clientSecretKey,omitempty"`
}

SecretReference extends LocalObjectReference with optional secret key mappings

func (*SecretReference) DeepCopy added in v0.0.2

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto added in v0.0.2

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