Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the svn v1alpha1 API group +kubebuilder:object:generate=true +groupName=svn.k8s.oyasumi.club
Index ¶
- Constants
- Variables
- type Condition
- type ConditionType
- type GroupRef
- type Permission
- type PodTemplate
- type SVNGroup
- type SVNGroupList
- type SVNGroupSpec
- type SVNGroupStatus
- type SVNRepository
- type SVNRepositoryList
- type SVNRepositorySpec
- type SVNRepositoryStatus
- type SVNServer
- type SVNServerList
- type SVNServerSpec
- type SVNServerStatus
- type SVNUser
- type SVNUserList
- type SVNUserSpec
- type SVNUserStatus
Constants ¶
const ( // PermissionNone means the group have no permission to the repository. PermissionNone = "" // PermissionR means the group only can read from the repository. PermissionR = "r" // PermissionRW means the group can both read from and write to the repository. PermissionRW = "rw" )
Here is a list of allowed permissions. We do not define types like Permission because currently kubebuilder seems to not support kubebuilder:validation:Pattern with named types.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "svn.k8s.oyasumi.club", 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 Condition ¶
type Condition struct { Type ConditionType `json:"type"` Reason string `json:"reason,omitempty"` // The time when the SVNServer's condition changed in RFC3339 format. TransitionTime string `json:"transitionTime"` }
func (*Condition) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.
func (*Condition) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionType ¶
type ConditionType string
const ( ConditionTypeNone ConditionType = "" ConditionTypeSynced ConditionType = "Synced" ConditionTypeFailed ConditionType = "Failed" )
type GroupRef ¶
type GroupRef struct { // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9][a-zA-Z0-9.-]*$" // Name is the name of the SVNGroup. Name string `json:"name,omitempty"` }
GroupRef is a reference to SVNGroups.
func (*GroupRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupRef.
func (*GroupRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Permission ¶
type Permission struct { // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9][a-zA-Z0-9.-]*$" // The name of the SVNRepository to give access to. // The SVNRepository must reside in the same namespace as the SVNGroup. Repository string `json:"repository,omitempty"` // +kubebuilder:validation:Pattern="^(?:r|rw|)$" // The permission to access to the repository. Permission string `json:"permission,omitempty"` }
func (*Permission) DeepCopy ¶
func (in *Permission) DeepCopy() *Permission
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Permission.
func (*Permission) DeepCopyInto ¶
func (in *Permission) DeepCopyInto(out *Permission)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodTemplate ¶
type PodTemplate struct { // +kubebuilder:validation:Optional // Image specifies a container image of SVN server. // If not specified, the default value will be used. Image string `json:"image,omitempty"` // +kubebuilder:validation:Optional // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 // ServiceAccountName is the name of the ServiceAccount to use to run this pod. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ ServiceAccountName string `json:"serviceAccountName,omitempty"` // +kubebuilder:validation:Optional // ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. // If specified, these secrets will be passed to individual puller implementations for them to use. For example, // in the case of docker, only DockerConfig type secrets are honored. // More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` // +kubebuilder:validation:Optional // If specified, the pod's scheduling constraints Affinity *corev1.Affinity `json:"affinity,omitempty"` // +kubebuilder:validation:Optional // If specified, the pod's tolerations. Tolerations []corev1.Toleration `json:"tolerations,omitempty"` }
PodTemplate is an optional template to create SVN server pods.
func (*PodTemplate) DeepCopy ¶
func (in *PodTemplate) DeepCopy() *PodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplate.
func (*PodTemplate) DeepCopyInto ¶
func (in *PodTemplate) DeepCopyInto(out *PodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNGroup ¶
type SVNGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SVNGroupSpec `json:"spec,omitempty"` Status SVNGroupStatus `json:"status,omitempty"` }
SVNGroup is the Schema for the svngroups API
func (*SVNGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNGroup.
func (*SVNGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNGroup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNGroupList ¶
type SVNGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SVNGroup `json:"items"` }
SVNGroupList contains a list of SVNGroup
func (*SVNGroupList) DeepCopy ¶
func (in *SVNGroupList) DeepCopy() *SVNGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNGroupList.
func (*SVNGroupList) DeepCopyInto ¶
func (in *SVNGroupList) DeepCopyInto(out *SVNGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNGroupList) DeepCopyObject ¶
func (in *SVNGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNGroupSpec ¶
type SVNGroupSpec struct { // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9][a-zA-Z0-9.-]*$" // The name of the SVNServer SVNServer string `json:"svnServer,omitempty"` // +kubebuilder:validation:Required // The permissions that the group have. Permissions []Permission `json:"permissions,omitempty"` }
SVNGroupSpec defines the desired state of SVNGroup
func (*SVNGroupSpec) DeepCopy ¶
func (in *SVNGroupSpec) DeepCopy() *SVNGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNGroupSpec.
func (*SVNGroupSpec) DeepCopyInto ¶
func (in *SVNGroupSpec) DeepCopyInto(out *SVNGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNGroupStatus ¶
type SVNGroupStatus struct { // +Kubebuilder:validation:Optional Conditions []Condition `json:"conditions"` }
SVNGroupStatus defines the observed state of SVNGroup
func (*SVNGroupStatus) DeepCopy ¶
func (in *SVNGroupStatus) DeepCopy() *SVNGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNGroupStatus.
func (*SVNGroupStatus) DeepCopyInto ¶
func (in *SVNGroupStatus) DeepCopyInto(out *SVNGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNRepository ¶
type SVNRepository struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SVNRepositorySpec `json:"spec,omitempty"` Status SVNRepositoryStatus `json:"status,omitempty"` }
SVNRepository is the Schema for the svnrepositories API
The svn-operator does not delete actual repositories if SVNRepository resources are deleted. In such case, you can restore repositories by recreating SVNRepository resources. Currently we do not provide methods to configure this behavior.
func (*SVNRepository) DeepCopy ¶
func (in *SVNRepository) DeepCopy() *SVNRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNRepository.
func (*SVNRepository) DeepCopyInto ¶
func (in *SVNRepository) DeepCopyInto(out *SVNRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNRepository) DeepCopyObject ¶
func (in *SVNRepository) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNRepositoryList ¶
type SVNRepositoryList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SVNRepository `json:"items"` }
SVNRepositoryList contains a list of SVNRepository
func (*SVNRepositoryList) DeepCopy ¶
func (in *SVNRepositoryList) DeepCopy() *SVNRepositoryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNRepositoryList.
func (*SVNRepositoryList) DeepCopyInto ¶
func (in *SVNRepositoryList) DeepCopyInto(out *SVNRepositoryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNRepositoryList) DeepCopyObject ¶
func (in *SVNRepositoryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNRepositorySpec ¶
type SVNRepositorySpec struct { // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9][a-zA-Z0-9.-]*$" // The name of the SVNServer SVNServer string `json:"svnServer,omitempty"` }
SVNRepositorySpec defines the desired state of SVNRepository
func (*SVNRepositorySpec) DeepCopy ¶
func (in *SVNRepositorySpec) DeepCopy() *SVNRepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNRepositorySpec.
func (*SVNRepositorySpec) DeepCopyInto ¶
func (in *SVNRepositorySpec) DeepCopyInto(out *SVNRepositorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNRepositoryStatus ¶
type SVNRepositoryStatus struct { // +Kubebuilder:validation:Optional Conditions []Condition `json:"conditions"` }
SVNRepositoryStatus defines the observed state of SVNRepository
func (*SVNRepositoryStatus) DeepCopy ¶
func (in *SVNRepositoryStatus) DeepCopy() *SVNRepositoryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNRepositoryStatus.
func (*SVNRepositoryStatus) DeepCopyInto ¶
func (in *SVNRepositoryStatus) DeepCopyInto(out *SVNRepositoryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNServer ¶
type SVNServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SVNServerSpec `json:"spec,omitempty"` Status SVNServerStatus `json:"status,omitempty"` }
SVNServer is the Schema for the svnservers API
func (*SVNServer) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNServer.
func (*SVNServer) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNServer) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNServerList ¶
type SVNServerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SVNServer `json:"items"` }
SVNServerList contains a list of SVNServer
func (*SVNServerList) DeepCopy ¶
func (in *SVNServerList) DeepCopy() *SVNServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNServerList.
func (*SVNServerList) DeepCopyInto ¶
func (in *SVNServerList) DeepCopyInto(out *SVNServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNServerList) DeepCopyObject ¶
func (in *SVNServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNServerSpec ¶
type SVNServerSpec struct { // +kubebuilder:validation:Required // PodTemplate is a template to create Pods. PodTemplate PodTemplate `json:"podTemplate,omitempty"` // +kubebuilder:validation:Required // VolumeClaimTemplate is a PVC to store SVN repositories and configuration files in. VolumeClaimTemplate corev1.PersistentVolumeClaim `json:"volumeClaimTemplate,omitempty"` }
SVNServerSpec defines the desired state of SVNServer
func (*SVNServerSpec) DeepCopy ¶
func (in *SVNServerSpec) DeepCopy() *SVNServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNServerSpec.
func (*SVNServerSpec) DeepCopyInto ¶
func (in *SVNServerSpec) DeepCopyInto(out *SVNServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNServerStatus ¶
type SVNServerStatus struct { // +kubebuilder:validation:Optional Conditions []Condition `json:"conditions"` }
SVNServerStatus defines the observed state of SVNServer
func (*SVNServerStatus) DeepCopy ¶
func (in *SVNServerStatus) DeepCopy() *SVNServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNServerStatus.
func (*SVNServerStatus) DeepCopyInto ¶
func (in *SVNServerStatus) DeepCopyInto(out *SVNServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNUser ¶
type SVNUser struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SVNUserSpec `json:"spec,omitempty"` Status SVNUserStatus `json:"status,omitempty"` }
SVNUser is the Schema for the svnusers API
func (*SVNUser) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNUser.
func (*SVNUser) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNUser) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNUserList ¶
type SVNUserList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SVNUser `json:"items"` }
SVNUserList contains a list of SVNUser
func (*SVNUserList) DeepCopy ¶
func (in *SVNUserList) DeepCopy() *SVNUserList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNUserList.
func (*SVNUserList) DeepCopyInto ¶
func (in *SVNUserList) DeepCopyInto(out *SVNUserList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SVNUserList) DeepCopyObject ¶
func (in *SVNUserList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SVNUserSpec ¶
type SVNUserSpec struct { // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9][a-zA-Z0-9.-]*$" // The name of the SVNServer SVNServer string `json:"svnServer,omitempty"` // Groups is a list of SVNGroups that the user belongs to. Groups []GroupRef `json:"groups,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern="^[a-zA-Z0-9+/=.${}]+$" // EncryptedPassword is a password encrypted by `htpasswd`. // This must be computed elsewhere in order to avoid additional complexity of // letting controllers manage sensitive values. // // This field can be computed by the following command: // $ htpasswd -nB USERNAME | cut -d : -f 2- // New password: (TYPE YOUR PASSWORD HERE) // Re-type new password: (TYPE YOUR PASSWORD HERE) // $2y$05$Z9loUIkf0DynjbD0UMEpneKCSKYfkTCaE/pwY8wt7MtKQILxKRwjG (example output) // // See https://httpd.apache.org/docs/2.4/misc/password_encryptions.html for more information. EncryptedPassword string `json:"encryptedPassword,omitempty"` }
SVNUserSpec defines the desired state of SVNUser
func (*SVNUserSpec) DeepCopy ¶
func (in *SVNUserSpec) DeepCopy() *SVNUserSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNUserSpec.
func (*SVNUserSpec) DeepCopyInto ¶
func (in *SVNUserSpec) DeepCopyInto(out *SVNUserSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SVNUserStatus ¶
type SVNUserStatus struct { // +Kubebuilder:validation:Optional Conditions []Condition `json:"conditions"` }
SVNUserStatus defines the observed state of SVNUser
func (*SVNUserStatus) DeepCopy ¶
func (in *SVNUserStatus) DeepCopy() *SVNUserStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SVNUserStatus.
func (*SVNUserStatus) DeepCopyInto ¶
func (in *SVNUserStatus) DeepCopyInto(out *SVNUserStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.