v1alpha1

package
v0.0.228 Latest Latest
Warning

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

Go to latest
Published: Aug 16, 2025 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the sv v1alpha1 API group. +kubebuilder:object:generate=true +groupName=sv.sharedvolume.io

Index

Constants

This section is empty.

Variables

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

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

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

Functions

This section is empty.

Types

type ClusterSharedVolume

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

	Spec   ClusterSharedVolumeSpec   `json:"spec,omitempty"`
	Status ClusterSharedVolumeStatus `json:"status,omitempty"`
}

ClusterSharedVolume is the Schema for the clustersharedvolumes API

func (*ClusterSharedVolume) DeepCopy

func (in *ClusterSharedVolume) DeepCopy() *ClusterSharedVolume

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

func (*ClusterSharedVolume) DeepCopyInto

func (in *ClusterSharedVolume) DeepCopyInto(out *ClusterSharedVolume)

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

func (*ClusterSharedVolume) DeepCopyObject

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

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

func (*ClusterSharedVolume) GetMessage

func (csv *ClusterSharedVolume) GetMessage() string

GetMessage returns the current message

func (*ClusterSharedVolume) GetNfsServerAddress

func (csv *ClusterSharedVolume) GetNfsServerAddress() string

GetNfsServerAddress returns the NFS server address

func (*ClusterSharedVolume) GetPersistentVolumeClaimName

func (csv *ClusterSharedVolume) GetPersistentVolumeClaimName() string

GetPersistentVolumeClaimName returns the PVC name

func (*ClusterSharedVolume) GetPersistentVolumeName

func (csv *ClusterSharedVolume) GetPersistentVolumeName() string

GetPersistentVolumeName returns the PV name

func (*ClusterSharedVolume) GetPhase

func (csv *ClusterSharedVolume) GetPhase() string

GetPhase returns the current phase

func (*ClusterSharedVolume) GetServiceName

func (csv *ClusterSharedVolume) GetServiceName() string

GetServiceName returns the service name

func (*ClusterSharedVolume) GetVolumeSpec

func (csv *ClusterSharedVolume) GetVolumeSpec() *VolumeSpecBase

GetVolumeSpec returns the common volume specification

func (*ClusterSharedVolume) SetMessage

func (csv *ClusterSharedVolume) SetMessage(message string)

SetMessage sets the current message

func (*ClusterSharedVolume) SetNfsServerAddress

func (csv *ClusterSharedVolume) SetNfsServerAddress(address string)

SetNfsServerAddress sets the NFS server address

func (*ClusterSharedVolume) SetPersistentVolumeClaimName

func (csv *ClusterSharedVolume) SetPersistentVolumeClaimName(name string)

SetPersistentVolumeClaimName sets the PVC name

func (*ClusterSharedVolume) SetPersistentVolumeName

func (csv *ClusterSharedVolume) SetPersistentVolumeName(name string)

SetPersistentVolumeName sets the PV name

func (*ClusterSharedVolume) SetPhase

func (csv *ClusterSharedVolume) SetPhase(phase string)

SetPhase sets the current phase

func (*ClusterSharedVolume) SetServiceName

func (csv *ClusterSharedVolume) SetServiceName(name string)

SetServiceName sets the service name

type ClusterSharedVolumeList

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

ClusterSharedVolumeList contains a list of ClusterSharedVolume

func (*ClusterSharedVolumeList) DeepCopy

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

func (*ClusterSharedVolumeList) DeepCopyInto

func (in *ClusterSharedVolumeList) DeepCopyInto(out *ClusterSharedVolumeList)

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

func (*ClusterSharedVolumeList) DeepCopyObject

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

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

type ClusterSharedVolumeSpec

type ClusterSharedVolumeSpec struct {
	// VolumeSpecBase contains the common volume specification
	VolumeSpecBase `json:",inline"`
}

ClusterSharedVolumeSpec defines the desired state of ClusterSharedVolume

func (*ClusterSharedVolumeSpec) DeepCopy

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

func (*ClusterSharedVolumeSpec) DeepCopyInto

func (in *ClusterSharedVolumeSpec) DeepCopyInto(out *ClusterSharedVolumeSpec)

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

type ClusterSharedVolumeStatus

type ClusterSharedVolumeStatus struct {
	// Phase represents the current phase of the ClusterSharedVolume
	Phase string `json:"phase,omitempty"`

	// Message provides additional information about the current state
	Message string `json:"message,omitempty"`

	// NfsServerAddress is the address of the NFS server
	NfsServerAddress string `json:"nfsServerAddress,omitempty"`

	// PersistentVolumeClaimName is the name of the created PVC
	PersistentVolumeClaimName string `json:"persistentVolumeClaimName,omitempty"`

	// PersistentVolumeName is the name of the created PV
	PersistentVolumeName string `json:"persistentVolumeName,omitempty"`

	// ServiceName is the name of the service exposing the NFS server
	ServiceName string `json:"serviceName,omitempty"`
}

ClusterSharedVolumeStatus defines the observed state of ClusterSharedVolume

func (*ClusterSharedVolumeStatus) DeepCopy

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

func (*ClusterSharedVolumeStatus) DeepCopyInto

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

type GitSourceSpec

type GitSourceSpec struct {
	URL                  string             `json:"url"`
	User                 string             `json:"user,omitempty"`
	Password             string             `json:"password,omitempty"`
	PrivateKey           string             `json:"privateKey,omitempty"`
	Branch               string             `json:"branch,omitempty"`
	PrivateKeyFromSecret *SecretKeySelector `json:"privateKeyFromSecret,omitempty"`
	PasswordFromSecret   *SecretKeySelector `json:"passwordFromSecret,omitempty"`
}

GitSourceSpec defines Git source configuration.

func (*GitSourceSpec) DeepCopy

func (in *GitSourceSpec) DeepCopy() *GitSourceSpec

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

func (*GitSourceSpec) DeepCopyInto

func (in *GitSourceSpec) DeepCopyInto(out *GitSourceSpec)

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

type HTTPSourceSpec

type HTTPSourceSpec struct {
	URL string `json:"url"`
}

HTTPSourceSpec defines HTTP source configuration.

func (*HTTPSourceSpec) DeepCopy

func (in *HTTPSourceSpec) DeepCopy() *HTTPSourceSpec

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

func (*HTTPSourceSpec) DeepCopyInto

func (in *HTTPSourceSpec) DeepCopyInto(out *HTTPSourceSpec)

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

type NfsServerSpec

type NfsServerSpec struct {
	Name      string `json:"name,omitempty"`
	Namespace string `json:"namespace,omitempty"`
	URL       string `json:"url,omitempty"`
	Image     string `json:"image,omitempty"` // Docker image for the NFS server
	Path      string `json:"path,omitempty"`  // Path on the NFS server to mount
}

NfsServerSpec defines the NFS server configuration.

func (*NfsServerSpec) DeepCopy

func (in *NfsServerSpec) DeepCopy() *NfsServerSpec

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

func (*NfsServerSpec) DeepCopyInto

func (in *NfsServerSpec) DeepCopyInto(out *NfsServerSpec)

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

type S3SourceSpec

type S3SourceSpec struct {
	EndpointURL         string             `json:"endpointUrl"`
	BucketName          string             `json:"bucketName"`
	Path                string             `json:"path,omitempty"`
	AccessKey           string             `json:"accessKey,omitempty"`
	SecretKey           string             `json:"secretKey,omitempty"`
	Region              string             `json:"region"`
	AccessKeyFromSecret *SecretKeySelector `json:"accessKeyFromSecret,omitempty"`
	SecretKeyFromSecret *SecretKeySelector `json:"secretKeyFromSecret,omitempty"`
}

S3SourceSpec defines S3 source configuration.

func (*S3SourceSpec) DeepCopy

func (in *S3SourceSpec) DeepCopy() *S3SourceSpec

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

func (*S3SourceSpec) DeepCopyInto

func (in *S3SourceSpec) DeepCopyInto(out *S3SourceSpec)

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

type SSHSourceSpec

type SSHSourceSpec struct {
	Host                 string             `json:"host"`
	Port                 int                `json:"port,omitempty"`
	User                 string             `json:"user,omitempty"`
	Password             string             `json:"password,omitempty"`
	PrivateKey           string             `json:"privateKey,omitempty"`
	Path                 string             `json:"path,omitempty"`
	PrivateKeyFromSecret *SecretKeySelector `json:"privateKeyFromSecret,omitempty"`
	PasswordFromSecret   *SecretKeySelector `json:"passwordFromSecret,omitempty"`
}

SSHSourceSpec defines SSH source configuration.

func (*SSHSourceSpec) DeepCopy

func (in *SSHSourceSpec) DeepCopy() *SSHSourceSpec

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

func (*SSHSourceSpec) DeepCopyInto

func (in *SSHSourceSpec) DeepCopyInto(out *SSHSourceSpec)

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

type SecretKeySelector

type SecretKeySelector struct {
	Name      string `json:"name"`
	Namespace string `json:"namespace,omitempty"` // Optional for SharedVolume, required for ClusterSharedVolume
	Key       string `json:"key"`
}

func (*SecretKeySelector) DeepCopy

func (in *SecretKeySelector) DeepCopy() *SecretKeySelector

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

func (*SecretKeySelector) DeepCopyInto

func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector)

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

type SharedVolume

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

	Spec   SharedVolumeSpec   `json:"spec,omitempty"`
	Status SharedVolumeStatus `json:"status,omitempty"`
}

SharedVolume is the Schema for the sharedvolumes API.

func (*SharedVolume) DeepCopy

func (in *SharedVolume) DeepCopy() *SharedVolume

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

func (*SharedVolume) DeepCopyInto

func (in *SharedVolume) DeepCopyInto(out *SharedVolume)

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

func (*SharedVolume) DeepCopyObject

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

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

func (*SharedVolume) GetMessage

func (sv *SharedVolume) GetMessage() string

GetMessage returns the current message

func (*SharedVolume) GetNfsServerAddress

func (sv *SharedVolume) GetNfsServerAddress() string

GetNfsServerAddress returns the NFS server address

func (*SharedVolume) GetPersistentVolumeClaimName

func (sv *SharedVolume) GetPersistentVolumeClaimName() string

GetPersistentVolumeClaimName returns the PVC name

func (*SharedVolume) GetPersistentVolumeName

func (sv *SharedVolume) GetPersistentVolumeName() string

GetPersistentVolumeName returns the PV name

func (*SharedVolume) GetPhase

func (sv *SharedVolume) GetPhase() string

GetPhase returns the current phase

func (*SharedVolume) GetServiceName

func (sv *SharedVolume) GetServiceName() string

GetServiceName returns the service name

func (*SharedVolume) GetVolumeSpec

func (sv *SharedVolume) GetVolumeSpec() *VolumeSpecBase

GetVolumeSpec returns the common volume specification

func (*SharedVolume) SetMessage

func (sv *SharedVolume) SetMessage(message string)

SetMessage sets the current message

func (*SharedVolume) SetNfsServerAddress

func (sv *SharedVolume) SetNfsServerAddress(address string)

SetNfsServerAddress sets the NFS server address

func (*SharedVolume) SetPersistentVolumeClaimName

func (sv *SharedVolume) SetPersistentVolumeClaimName(name string)

SetPersistentVolumeClaimName sets the PVC name

func (*SharedVolume) SetPersistentVolumeName

func (sv *SharedVolume) SetPersistentVolumeName(name string)

SetPersistentVolumeName sets the PV name

func (*SharedVolume) SetPhase

func (sv *SharedVolume) SetPhase(phase string)

SetPhase sets the current phase

func (*SharedVolume) SetServiceName

func (sv *SharedVolume) SetServiceName(name string)

SetServiceName sets the service name

type SharedVolumeList

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

SharedVolumeList contains a list of SharedVolume.

func (*SharedVolumeList) DeepCopy

func (in *SharedVolumeList) DeepCopy() *SharedVolumeList

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

func (*SharedVolumeList) DeepCopyInto

func (in *SharedVolumeList) DeepCopyInto(out *SharedVolumeList)

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

func (*SharedVolumeList) DeepCopyObject

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

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

type SharedVolumeSpec

type SharedVolumeSpec struct {
	VolumeSpecBase `json:",inline"`
}

SharedVolumeSpec defines the desired state of SharedVolume.

func (*SharedVolumeSpec) DeepCopy

func (in *SharedVolumeSpec) DeepCopy() *SharedVolumeSpec

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

func (*SharedVolumeSpec) DeepCopyInto

func (in *SharedVolumeSpec) DeepCopyInto(out *SharedVolumeSpec)

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

type SharedVolumeStatus

type SharedVolumeStatus struct {
	// Phase indicates the current phase of the SharedVolume (Pending, Preparing, Ready)
	Phase string `json:"phase,omitempty"`
	// Message provides additional information about the current phase
	Message string `json:"message,omitempty"`
	// NfsServerAddress is the address where the NFS server can be accessed
	NfsServerAddress string `json:"nfsServerAddress,omitempty"`
	// PersistentVolumeClaimName is the name of the associated PVC
	PersistentVolumeClaimName string `json:"persistentVolumeClaimName,omitempty"`
	// PersistentVolumeName is the name of the associated PV
	PersistentVolumeName string `json:"persistentVolumeName,omitempty"`
	// ServiceName is the name of the associated Service
	ServiceName string `json:"serviceName,omitempty"`
}

SharedVolumeStatus defines the observed state of SharedVolume.

func (*SharedVolumeStatus) DeepCopy

func (in *SharedVolumeStatus) DeepCopy() *SharedVolumeStatus

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

func (*SharedVolumeStatus) DeepCopyInto

func (in *SharedVolumeStatus) DeepCopyInto(out *SharedVolumeStatus)

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

type StorageSpec

type StorageSpec struct {
	Capacity   string `json:"capacity"`
	AccessMode string `json:"accessMode,omitempty"` // ReadWrite or ReadOnly
}

StorageSpec defines storage configuration.

func (*StorageSpec) DeepCopy

func (in *StorageSpec) DeepCopy() *StorageSpec

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

func (*StorageSpec) DeepCopyInto

func (in *StorageSpec) DeepCopyInto(out *StorageSpec)

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

type VolumeSourceSpec

type VolumeSourceSpec struct {
	SSH  *SSHSourceSpec  `json:"ssh,omitempty"`
	HTTP *HTTPSourceSpec `json:"http,omitempty"`
	Git  *GitSourceSpec  `json:"git,omitempty"`
	S3   *S3SourceSpec   `json:"s3,omitempty"`
}

VolumeSourceSpec defines the source for the shared volume.

func (*VolumeSourceSpec) DeepCopy

func (in *VolumeSourceSpec) DeepCopy() *VolumeSourceSpec

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

func (*VolumeSourceSpec) DeepCopyInto

func (in *VolumeSourceSpec) DeepCopyInto(out *VolumeSourceSpec)

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

type VolumeSpecBase

type VolumeSpecBase struct {
	NfsServer         *NfsServerSpec    `json:"nfsServer,omitempty"`
	MountPath         string            `json:"mountPath"`
	SyncInterval      string            `json:"syncInterval,omitempty"` // Sync interval like 30s, 5m, 2h, 1d
	SyncTimeout       string            `json:"syncTimeout,omitempty"`  // Timeout for sync operations like 120s
	Storage           *StorageSpec      `json:"storage,omitempty"`
	Source            *VolumeSourceSpec `json:"source,omitempty"`
	StorageClassName  string            `json:"storageClassName,omitempty"`
	ResourceNamespace string            `json:"resourceNamespace,omitempty"` // Namespace for the resource
	ReferenceValue    string            `json:"referenceValue,omitempty"`    // Shared reference value for related resources
}

VolumeSpecBase contains common fields for SharedVolume.

func (*VolumeSpecBase) DeepCopy

func (in *VolumeSpecBase) DeepCopy() *VolumeSpecBase

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

func (*VolumeSpecBase) DeepCopyInto

func (in *VolumeSpecBase) DeepCopyInto(out *VolumeSpecBase)

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