Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the gitbackup v1beta1 API group +kubebuilder:object:generate=true +groupName=gitbackup.ebiiim.com
Index ¶
- Constants
- Variables
- func CycleCronByMinuteInSameHour(cronStr string) (string, error)
- func ToRFC1123(s string, def string) string
- type Collection
- func (in *Collection) DeepCopy() *Collection
- func (in *Collection) DeepCopyInto(out *Collection)
- func (in *Collection) DeepCopyObject() runtime.Object
- func (r *Collection) Default()
- func (r Collection) GetOwnedConfigMapName() string
- func (r Collection) GetOwnedRepositoryNames() []string
- func (r *Collection) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Collection) ValidateCreate() error
- func (r *Collection) ValidateDelete() error
- func (r *Collection) ValidateUpdate(old runtime.Object) error
- type CollectionList
- type CollectionRepoURL
- type CollectionSpec
- type CollectionStatus
- type Repository
- func (in *Repository) DeepCopy() *Repository
- func (in *Repository) DeepCopyInto(out *Repository)
- func (in *Repository) DeepCopyObject() runtime.Object
- func (r *Repository) Default()
- func (r Repository) GetOwnedConfigMapName() string
- func (r Repository) GetOwnedCronJobName() string
- func (r *Repository) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Repository) ValidateCreate() error
- func (r *Repository) ValidateDelete() error
- func (r *Repository) ValidateUpdate(old runtime.Object) error
- type RepositoryList
- type RepositorySpec
- type RepositoryStatus
Constants ¶
const ( OperatorName = "gitbackup" DefaultGitImage = "alpine/git:2.36.2" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "gitbackup.ebiiim.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 ¶
func CycleCronByMinuteInSameHour ¶ added in v0.2.0
CycleCronByMinuteInSameHour cycles cron minute. Assumes cronStr is "1 2 3 4 5" format. "30 6 * * *" -> "31 6 * * *" -> ... "59 6 * * *" -> "0 6 * * *" -> "1 6 * * *" -> ...
Types ¶
type Collection ¶ added in v0.2.0
type Collection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CollectionSpec `json:"spec,omitempty"` Status CollectionStatus `json:"status,omitempty"` }
Collection is the Schema for the collections API
func (*Collection) DeepCopy ¶ added in v0.2.0
func (in *Collection) DeepCopy() *Collection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Collection.
func (*Collection) DeepCopyInto ¶ added in v0.2.0
func (in *Collection) DeepCopyInto(out *Collection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Collection) DeepCopyObject ¶ added in v0.2.0
func (in *Collection) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Collection) Default ¶ added in v0.2.0
func (r *Collection) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (Collection) GetOwnedConfigMapName ¶ added in v0.2.0
func (r Collection) GetOwnedConfigMapName() string
GetOwnedConfigMapName returns "gitbackup-collection-{r.Name}-gitconfig"
func (Collection) GetOwnedRepositoryNames ¶ added in v0.2.0
func (r Collection) GetOwnedRepositoryNames() []string
GetOwnedRepositoryNames returns ["{r.Name}-{r.Repos[i].Name}", ...]
func (*Collection) SetupWebhookWithManager ¶ added in v0.2.0
func (r *Collection) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*Collection) ValidateCreate ¶ added in v0.2.0
func (r *Collection) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Collection) ValidateDelete ¶ added in v0.2.0
func (r *Collection) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type NOTE: nothing to validate upon object deletion.
func (*Collection) ValidateUpdate ¶ added in v0.2.0
func (r *Collection) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type CollectionList ¶ added in v0.2.0
type CollectionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Collection `json:"items"` }
CollectionList contains a list of Collection
func (*CollectionList) DeepCopy ¶ added in v0.2.0
func (in *CollectionList) DeepCopy() *CollectionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectionList.
func (*CollectionList) DeepCopyInto ¶ added in v0.2.0
func (in *CollectionList) DeepCopyInto(out *CollectionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CollectionList) DeepCopyObject ¶ added in v0.2.0
func (in *CollectionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CollectionRepoURL ¶ added in v0.2.0
type CollectionRepoURL struct { // Name specifies the name for the repository. (default: the last element of `Src`) // +optional Name *string `json:"name,omitempty"` // Src specifies the source repository in URL format. Src string `json:"src"` // Dst specifies the destination repository in URL format. Dst string `json:"dst"` }
func (*CollectionRepoURL) DeepCopy ¶ added in v0.2.0
func (in *CollectionRepoURL) DeepCopy() *CollectionRepoURL
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectionRepoURL.
func (*CollectionRepoURL) DeepCopyInto ¶ added in v0.2.0
func (in *CollectionRepoURL) DeepCopyInto(out *CollectionRepoURL)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CollectionSpec ¶ added in v0.2.0
type CollectionSpec struct { // Schedule in Cron format. Schedule string `json:"schedule"` // TimeZone in TZ database name. // See also: https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#time-zones // +optional TimeZone *string `json:"timeZone,omitempty"` // GitImage specifies the container image to run. // +optional GitImage *string `json:"gitImage,omitempty"` // ImagePullSecret specifies the name of the Secret in the same namespace used to pull the GitImage. // +optional ImagePullSecret *corev1.LocalObjectReference `json:"imagePullSecret,omitempty"` // GitConfig specifies the name of the configmap resource in the same namespace used to mount .git-config // Note that "[credential]\nhelper=store" is required to use GitCredentials. // +optional GitConfig *corev1.LocalObjectReference `json:"gitConfig,omitempty"` // GitCredentials specifies the name of the Secret in the same namespace used to mount .git-credentials // +optional GitCredentials *corev1.LocalObjectReference `json:"gitCredentials,omitempty"` // Repos specifies repositories to backup. Repos []CollectionRepoURL `json:"repos"` }
CollectionSpec defines the desired state of Collection
func (*CollectionSpec) DeepCopy ¶ added in v0.2.0
func (in *CollectionSpec) DeepCopy() *CollectionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectionSpec.
func (*CollectionSpec) DeepCopyInto ¶ added in v0.2.0
func (in *CollectionSpec) DeepCopyInto(out *CollectionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CollectionStatus ¶ added in v0.2.0
type CollectionStatus struct { }
CollectionStatus defines the observed state of Collection
func (*CollectionStatus) DeepCopy ¶ added in v0.2.0
func (in *CollectionStatus) DeepCopy() *CollectionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CollectionStatus.
func (*CollectionStatus) DeepCopyInto ¶ added in v0.2.0
func (in *CollectionStatus) DeepCopyInto(out *CollectionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Repository ¶
type Repository struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RepositorySpec `json:"spec,omitempty"` Status RepositoryStatus `json:"status,omitempty"` }
Repository is the Schema for the repositories API
func (*Repository) DeepCopy ¶
func (in *Repository) DeepCopy() *Repository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Repository.
func (*Repository) DeepCopyInto ¶
func (in *Repository) DeepCopyInto(out *Repository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Repository) DeepCopyObject ¶
func (in *Repository) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Repository) Default ¶
func (r *Repository) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (Repository) GetOwnedConfigMapName ¶
func (r Repository) GetOwnedConfigMapName() string
GetOwnedConfigMapName returns "gitbackup-repository-{r.Name}-gitconfig"
func (Repository) GetOwnedCronJobName ¶
func (r Repository) GetOwnedCronJobName() string
GetOwnedCronJobName returns "gitbackup-{r.Name}"
func (*Repository) SetupWebhookWithManager ¶
func (r *Repository) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*Repository) ValidateCreate ¶
func (r *Repository) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Repository) ValidateDelete ¶
func (r *Repository) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type NOTE: nothing to validate upon object deletion.
func (*Repository) ValidateUpdate ¶
func (r *Repository) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type RepositoryList ¶
type RepositoryList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Repository `json:"items"` }
RepositoryList contains a list of Repository
func (*RepositoryList) DeepCopy ¶
func (in *RepositoryList) DeepCopy() *RepositoryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryList.
func (*RepositoryList) DeepCopyInto ¶
func (in *RepositoryList) DeepCopyInto(out *RepositoryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RepositoryList) DeepCopyObject ¶
func (in *RepositoryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RepositorySpec ¶
type RepositorySpec struct { // Src specifies the source repository in URL format. Src string `json:"src"` // Dst specifies the destination repository in URL format. Dst string `json:"dst"` // Schedule in Cron format. Schedule string `json:"schedule"` // TimeZone in TZ database name. // See also: https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#time-zones // +optional TimeZone *string `json:"timeZone,omitempty"` // GitImage specifies the container image to run. // +optional GitImage *string `json:"gitImage,omitempty"` // ImagePullSecret specifies the name of the Secret in the same namespace used to pull the GitImage. // +optional ImagePullSecret *corev1.LocalObjectReference `json:"imagePullSecret,omitempty"` // GitConfig specifies the name of the configmap resource in the same namespace used to mount .git-config // Note that "[credential]\nhelper=store" is required to use GitCredentials. // +optional GitConfig *corev1.LocalObjectReference `json:"gitConfig,omitempty"` // GitCredentials specifies the name of the Secret in the same namespace used to mount .git-credentials // +optional GitCredentials *corev1.LocalObjectReference `json:"gitCredentials,omitempty"` }
RepositorySpec defines the desired state of Repository
func (*RepositorySpec) DeepCopy ¶
func (in *RepositorySpec) DeepCopy() *RepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositorySpec.
func (*RepositorySpec) DeepCopyInto ¶
func (in *RepositorySpec) DeepCopyInto(out *RepositorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RepositoryStatus ¶
type RepositoryStatus struct { }
RepositoryStatus defines the observed state of Repository
func (*RepositoryStatus) DeepCopy ¶
func (in *RepositoryStatus) DeepCopy() *RepositoryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryStatus.
func (*RepositoryStatus) DeepCopyInto ¶
func (in *RepositoryStatus) DeepCopyInto(out *RepositoryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.