Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the etcd v1alpha1 API group +kubebuilder:object:generate=true +groupName=etcd.improbable.io
Index ¶
- Variables
- type Bootstrap
- type EtcdBackup
- type EtcdBackupList
- type EtcdBackupSchedule
- type EtcdBackupScheduleList
- type EtcdBackupScheduleSpec
- type EtcdBackupScheduleStatus
- type EtcdBackupSpec
- type EtcdBackupStatus
- type EtcdCluster
- func (in *EtcdCluster) DeepCopy() *EtcdCluster
- func (in *EtcdCluster) DeepCopyInto(out *EtcdCluster)
- func (in *EtcdCluster) DeepCopyObject() runtime.Object
- func (o *EtcdCluster) Default()
- func (o *EtcdCluster) ValidateCreate() error
- func (o *EtcdCluster) ValidateDelete() error
- func (o *EtcdCluster) ValidateUpdate(old runtime.Object) error
- type EtcdClusterList
- type EtcdClusterSpec
- type EtcdClusterStatus
- type EtcdMember
- type EtcdPeer
- func (in *EtcdPeer) DeepCopy() *EtcdPeer
- func (in *EtcdPeer) DeepCopyInto(out *EtcdPeer)
- func (in *EtcdPeer) DeepCopyObject() runtime.Object
- func (o *EtcdPeer) Default()
- func (o *EtcdPeer) ValidateCreate() error
- func (o *EtcdPeer) ValidateDelete() error
- func (o *EtcdPeer) ValidateUpdate(old runtime.Object) error
- type EtcdPeerList
- type EtcdPeerSpec
- type EtcdPeerStatus
- type EtcdPeerStorage
- type InitialClusterMember
- type StaticBootstrap
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "etcd.improbable.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 Bootstrap ¶
type Bootstrap struct {
// Static boostrapping requires that we know the network names of the
// other peers ahead of time.
// +optional
Static *StaticBootstrap `json:"static,omitempty"`
}
Bootstrap contains bootstrap infromation for the peer to use.
func (*Bootstrap) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bootstrap.
func (*Bootstrap) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdBackup ¶
type EtcdBackup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EtcdBackupSpec `json:"spec,omitempty"`
Status EtcdBackupStatus `json:"status,omitempty"`
}
EtcdBackup is the Schema for the etcdbackups API
func (*EtcdBackup) DeepCopy ¶
func (in *EtcdBackup) DeepCopy() *EtcdBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackup.
func (*EtcdBackup) DeepCopyInto ¶
func (in *EtcdBackup) DeepCopyInto(out *EtcdBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdBackup) DeepCopyObject ¶
func (in *EtcdBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdBackupList ¶
type EtcdBackupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EtcdBackup `json:"items"`
}
EtcdBackupList contains a list of EtcdBackup
func (*EtcdBackupList) DeepCopy ¶
func (in *EtcdBackupList) DeepCopy() *EtcdBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupList.
func (*EtcdBackupList) DeepCopyInto ¶
func (in *EtcdBackupList) DeepCopyInto(out *EtcdBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdBackupList) DeepCopyObject ¶
func (in *EtcdBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdBackupSchedule ¶
type EtcdBackupSchedule struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EtcdBackupScheduleSpec `json:"spec,omitempty"`
Status EtcdBackupScheduleStatus `json:"status,omitempty"`
}
EtcdBackupSchedule is the Schema for the etcdbackupschedules API
func (*EtcdBackupSchedule) DeepCopy ¶
func (in *EtcdBackupSchedule) DeepCopy() *EtcdBackupSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupSchedule.
func (*EtcdBackupSchedule) DeepCopyInto ¶
func (in *EtcdBackupSchedule) DeepCopyInto(out *EtcdBackupSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdBackupSchedule) DeepCopyObject ¶
func (in *EtcdBackupSchedule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdBackupScheduleList ¶
type EtcdBackupScheduleList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EtcdBackupSchedule `json:"items"`
}
EtcdBackupScheduleList contains a list of EtcdBackupSchedule
func (*EtcdBackupScheduleList) DeepCopy ¶
func (in *EtcdBackupScheduleList) DeepCopy() *EtcdBackupScheduleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupScheduleList.
func (*EtcdBackupScheduleList) DeepCopyInto ¶
func (in *EtcdBackupScheduleList) DeepCopyInto(out *EtcdBackupScheduleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdBackupScheduleList) DeepCopyObject ¶
func (in *EtcdBackupScheduleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdBackupScheduleSpec ¶
type EtcdBackupScheduleSpec struct {
}
EtcdBackupScheduleSpec defines the desired state of EtcdBackupSchedule
func (*EtcdBackupScheduleSpec) DeepCopy ¶
func (in *EtcdBackupScheduleSpec) DeepCopy() *EtcdBackupScheduleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupScheduleSpec.
func (*EtcdBackupScheduleSpec) DeepCopyInto ¶
func (in *EtcdBackupScheduleSpec) DeepCopyInto(out *EtcdBackupScheduleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdBackupScheduleStatus ¶
type EtcdBackupScheduleStatus struct {
}
EtcdBackupScheduleStatus defines the observed state of EtcdBackupSchedule
func (*EtcdBackupScheduleStatus) DeepCopy ¶
func (in *EtcdBackupScheduleStatus) DeepCopy() *EtcdBackupScheduleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupScheduleStatus.
func (*EtcdBackupScheduleStatus) DeepCopyInto ¶
func (in *EtcdBackupScheduleStatus) DeepCopyInto(out *EtcdBackupScheduleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdBackupSpec ¶
type EtcdBackupSpec struct {
}
EtcdBackupSpec defines the desired state of EtcdBackup
func (*EtcdBackupSpec) DeepCopy ¶
func (in *EtcdBackupSpec) DeepCopy() *EtcdBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupSpec.
func (*EtcdBackupSpec) DeepCopyInto ¶
func (in *EtcdBackupSpec) DeepCopyInto(out *EtcdBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdBackupStatus ¶
type EtcdBackupStatus struct {
}
EtcdBackupStatus defines the observed state of EtcdBackup
func (*EtcdBackupStatus) DeepCopy ¶
func (in *EtcdBackupStatus) DeepCopy() *EtcdBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdBackupStatus.
func (*EtcdBackupStatus) DeepCopyInto ¶
func (in *EtcdBackupStatus) DeepCopyInto(out *EtcdBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdCluster ¶
type EtcdCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EtcdClusterSpec `json:"spec,omitempty"`
Status EtcdClusterStatus `json:"status,omitempty"`
}
EtcdCluster is the Schema for the etcdclusters API
func (*EtcdCluster) DeepCopy ¶
func (in *EtcdCluster) DeepCopy() *EtcdCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdCluster.
func (*EtcdCluster) DeepCopyInto ¶
func (in *EtcdCluster) DeepCopyInto(out *EtcdCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdCluster) DeepCopyObject ¶
func (in *EtcdCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*EtcdCluster) Default ¶
func (o *EtcdCluster) Default()
Default sets default values for optional EtcdPeer fields. This is used in webhooks and in the Reconciler to ensure that nil pointers have been replaced with concrete pointers. This avoids nil pointer panics later on.
func (*EtcdCluster) ValidateCreate ¶
func (o *EtcdCluster) ValidateCreate() error
ValidateCreate validates that all required fields are present and valid.
func (*EtcdCluster) ValidateDelete ¶
func (o *EtcdCluster) ValidateDelete() error
ValidateCreate validates that deletion is allowed TODO: Not yet implemented
func (*EtcdCluster) ValidateUpdate ¶
func (o *EtcdCluster) ValidateUpdate(old runtime.Object) error
ValidateUpdate validates that only supported fields are changed
type EtcdClusterList ¶
type EtcdClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EtcdCluster `json:"items"`
}
EtcdClusterList contains a list of EtcdCluster
func (*EtcdClusterList) DeepCopy ¶
func (in *EtcdClusterList) DeepCopy() *EtcdClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdClusterList.
func (*EtcdClusterList) DeepCopyInto ¶
func (in *EtcdClusterList) DeepCopyInto(out *EtcdClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdClusterList) DeepCopyObject ¶
func (in *EtcdClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdClusterSpec ¶
type EtcdClusterSpec struct {
// Number of instances of etcd to assemble into this cluster
//+kubebuilder:validation:Required
//+kubebuilder:validation:Minimum=1
Replicas *int32 `json:"replicas"`
// Storage is the configuration of the disks and mount points of the Etcd
// peers.
Storage *EtcdPeerStorage `json:"storage,omitempty"`
}
EtcdClusterSpec defines the desired state of EtcdCluster
func (*EtcdClusterSpec) DeepCopy ¶
func (in *EtcdClusterSpec) DeepCopy() *EtcdClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdClusterSpec.
func (*EtcdClusterSpec) DeepCopyInto ¶
func (in *EtcdClusterSpec) DeepCopyInto(out *EtcdClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdClusterStatus ¶
type EtcdClusterStatus struct {
// Members contains information about each member from the etcd cluster.
// +optional
Members []EtcdMember `json:"members"`
}
EtcdClusterStatus defines the observed state of EtcdCluster
func (*EtcdClusterStatus) DeepCopy ¶
func (in *EtcdClusterStatus) DeepCopy() *EtcdClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdClusterStatus.
func (*EtcdClusterStatus) DeepCopyInto ¶
func (in *EtcdClusterStatus) DeepCopyInto(out *EtcdClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdMember ¶
type EtcdMember struct {
// Name is a human-readable name for the member. Will *typically* match the name we gave the peer that manages this
// member.
Name string `json:"name"`
// ID is the internal unique identifier for the member that defines its identity with the etcd cluster. We do not
// define this.
ID string `json:"id"`
}
func (*EtcdMember) DeepCopy ¶
func (in *EtcdMember) DeepCopy() *EtcdMember
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdMember.
func (*EtcdMember) DeepCopyInto ¶
func (in *EtcdMember) DeepCopyInto(out *EtcdMember)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdPeer ¶
type EtcdPeer struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EtcdPeerSpec `json:"spec,omitempty"`
Status EtcdPeerStatus `json:"status,omitempty"`
}
EtcdPeer is the Schema for the etcdpeers API
func (*EtcdPeer) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdPeer.
func (*EtcdPeer) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdPeer) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*EtcdPeer) Default ¶
func (o *EtcdPeer) Default()
Default sets default values for optional EtcdPeer fields. This is used in webhooks and in the Reconciler to ensure that nil pointers have been replaced with concrete pointers. This avoids nil pointer panics later on.
func (*EtcdPeer) ValidateCreate ¶
ValidateCreate validates that all required fields are present and valid.
func (*EtcdPeer) ValidateDelete ¶
ValidateCreate validates that deletion is allowed TODO: Not yet implemented
type EtcdPeerList ¶
type EtcdPeerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EtcdPeer `json:"items"`
}
EtcdPeerList contains a list of EtcdPeer
func (*EtcdPeerList) DeepCopy ¶
func (in *EtcdPeerList) DeepCopy() *EtcdPeerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdPeerList.
func (*EtcdPeerList) DeepCopyInto ¶
func (in *EtcdPeerList) DeepCopyInto(out *EtcdPeerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EtcdPeerList) DeepCopyObject ¶
func (in *EtcdPeerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EtcdPeerSpec ¶
type EtcdPeerSpec struct {
// The name of the etcd cluster that this peer should join. This will be
// used to set the `spec.subdomain` field and the
// `etcd.improbable.io/cluster-name` label on the Pod running etcd.
// +kubebuilder:validation:MaxLength:=64
ClusterName string `json:"clusterName"`
// Bootstrap is the bootstrap configuration to pass down into the etcd
// pods. As per the etcd documentation, etcd will ignore bootstrap
// instructions if it already knows where it's peers are.
// +optional
Bootstrap *Bootstrap `json:"bootstrap,omitempty"`
// Storage is the configuration of the disks and mount points of the Etcd
// pod.
Storage *EtcdPeerStorage `json:"storage,omitempty"`
}
EtcdPeerSpec defines the desired state of EtcdPeer
func (*EtcdPeerSpec) DeepCopy ¶
func (in *EtcdPeerSpec) DeepCopy() *EtcdPeerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdPeerSpec.
func (*EtcdPeerSpec) DeepCopyInto ¶
func (in *EtcdPeerSpec) DeepCopyInto(out *EtcdPeerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdPeerStatus ¶
type EtcdPeerStatus struct {
}
EtcdPeerStatus defines the observed state of EtcdPeer
func (*EtcdPeerStatus) DeepCopy ¶
func (in *EtcdPeerStatus) DeepCopy() *EtcdPeerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdPeerStatus.
func (*EtcdPeerStatus) DeepCopyInto ¶
func (in *EtcdPeerStatus) DeepCopyInto(out *EtcdPeerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EtcdPeerStorage ¶
type EtcdPeerStorage struct {
// VolumeClaimTemplates is a claim that pods are allowed to reference.
// The EtcdPeer controller will create a new PersistentVolumeClaim using the
// StorageClass and the Storage Resource Request in this template.
// That PVC will then be mounted in the Pod for this EtcdPeer and the Etcd
// process when it starts will persist its data to the PV bound to that PVC.
VolumeClaimTemplate *corev1.PersistentVolumeClaimSpec `json:"volumeClaimTemplate,omitempty"`
}
EtcdPeerStorage defines the desired storage for an EtcdPeer
func (*EtcdPeerStorage) DeepCopy ¶
func (in *EtcdPeerStorage) DeepCopy() *EtcdPeerStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdPeerStorage.
func (*EtcdPeerStorage) DeepCopyInto ¶
func (in *EtcdPeerStorage) DeepCopyInto(out *EtcdPeerStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InitialClusterMember ¶
type InitialClusterMember struct {
// Name is a friendly name for the peer, used as a means to identify the
// peer once it has joined a cluster. This should match the `name` field
// of the `EtcdPeer` resource representing that peer.
Name string `json:"name"`
// Host forms part of the Advertise URL - the URL at which this peer can
// be contacted. The port and scheme are hardcoded to 2380 and http
// respectively.
Host string `json:"host"`
}
InitialClusterMemeber describes a single member of the initial cluster.
func (*InitialClusterMember) DeepCopy ¶
func (in *InitialClusterMember) DeepCopy() *InitialClusterMember
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitialClusterMember.
func (*InitialClusterMember) DeepCopyInto ¶
func (in *InitialClusterMember) DeepCopyInto(out *InitialClusterMember)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaticBootstrap ¶
type StaticBootstrap struct {
// InitialCluster provides details of all initial cluster members,
// and should include ourselves.
// +kubebuilder:validation:MinItems:=1
InitialCluster []InitialClusterMember `json:"initialCluster,omitempty"`
}
StaticBootstrap provides static contact information for initial members of the cluster.
func (*StaticBootstrap) DeepCopy ¶
func (in *StaticBootstrap) DeepCopy() *StaticBootstrap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticBootstrap.
func (*StaticBootstrap) DeepCopyInto ¶
func (in *StaticBootstrap) DeepCopyInto(out *StaticBootstrap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.