Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group +kubebuilder:object:generate=true +groupName=config.kubestash.com +k8s:openapi-gen=true
Index ¶
- Constants
- Variables
- type BackendMeta
- type ControllerConfigurationSpec
- type ControllerHealth
- type ControllerManagerConfiguration
- type ControllerManagerConfigurationSpec
- type ControllerMetrics
- type ControllerWebhook
- type Docker
- type GenericWebhookInfo
- type KubeStashConfig
- type LicenseOptions
- type NetVolAccessor
- type WebhookInfo
Constants ¶
const (
ResourceKindBackendMeta = "BackendMeta"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "config.kubestash.com", 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 BackendMeta ¶
type BackendMeta struct { metav1.TypeMeta `json:",inline"` // CreationTimestamp is a timestamp representing the server time when this object was created. CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty"` // OperatorVersion represents the version of the Operator when this object was created. OperatorVersion string `json:"operatorVersion,omitempty"` // Repositories holds the information of all Repositories using the BackupStorage. Repositories []v1alpha1.RepositoryInfo `json:"repositories,omitempty"` }
BackendMeta specifies the metadata for the BackupStorage
func (*BackendMeta) DeepCopy ¶
func (in *BackendMeta) DeepCopy() *BackendMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendMeta.
func (*BackendMeta) DeepCopyInto ¶
func (in *BackendMeta) DeepCopyInto(out *BackendMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerConfigurationSpec ¶ added in v0.9.0
type ControllerConfigurationSpec struct { // GroupKindConcurrency is a map from a Kind to the number of concurrent reconciliation // allowed for that controller. // // When a controller is registered within this manager using the builder utilities, // users have to specify the type the controller reconciles in the For(...) call. // If the object's kind passed matches one of the keys in this map, the concurrency // for that controller is set to the number specified. // // The key is expected to be consistent in form with GroupKind.String(), // e.g. ReplicaSet in apps group (regardless of version) would be `ReplicaSet.apps`. // // +optional GroupKindConcurrency map[string]int `json:"groupKindConcurrency,omitempty"` // CacheSyncTimeout refers to the time limit set to wait for syncing caches. // Defaults to 2 minutes if not set. // +optional CacheSyncTimeout *time.Duration `json:"cacheSyncTimeout,omitempty"` // RecoverPanic indicates if panics should be recovered. // +optional RecoverPanic *bool `json:"recoverPanic,omitempty"` }
ControllerConfigurationSpec defines the global configuration for controllers registered with the manager.
func (*ControllerConfigurationSpec) DeepCopy ¶ added in v0.9.0
func (in *ControllerConfigurationSpec) DeepCopy() *ControllerConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfigurationSpec.
func (*ControllerConfigurationSpec) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerConfigurationSpec) DeepCopyInto(out *ControllerConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerHealth ¶ added in v0.9.0
type ControllerHealth struct { // HealthProbeBindAddress is the TCP address that the controller should bind to // for serving health probes // It can be set to "0" or "" to disable serving the health probe. // +optional HealthProbeBindAddress string `json:"healthProbeBindAddress,omitempty"` // ReadinessEndpointName, defaults to "readyz" // +optional ReadinessEndpointName string `json:"readinessEndpointName,omitempty"` // LivenessEndpointName, defaults to "healthz" // +optional LivenessEndpointName string `json:"livenessEndpointName,omitempty"` }
ControllerHealth defines the health configs.
func (*ControllerHealth) DeepCopy ¶ added in v0.9.0
func (in *ControllerHealth) DeepCopy() *ControllerHealth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerHealth.
func (*ControllerHealth) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerHealth) DeepCopyInto(out *ControllerHealth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerManagerConfiguration ¶ added in v0.9.0
type ControllerManagerConfiguration struct { metav1.TypeMeta `json:",inline"` // ControllerManagerConfiguration returns the contfigurations for controllers ControllerManagerConfigurationSpec `json:",inline"` }
ControllerManagerConfiguration is the Schema for the GenericControllerManagerConfigurations API.
func (*ControllerManagerConfiguration) DeepCopy ¶ added in v0.9.0
func (in *ControllerManagerConfiguration) DeepCopy() *ControllerManagerConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerManagerConfiguration.
func (*ControllerManagerConfiguration) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerManagerConfiguration) DeepCopyInto(out *ControllerManagerConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControllerManagerConfiguration) DeepCopyObject ¶ added in v0.9.0
func (in *ControllerManagerConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControllerManagerConfigurationSpec ¶ added in v0.9.0
type ControllerManagerConfigurationSpec struct { // SyncPeriod determines the minimum frequency at which watched resources are // reconciled. A lower period will correct entropy more quickly, but reduce // responsiveness to change if there are many watched resources. Change this // value only if you know what you are doing. Defaults to 10 hours if unset. // there will a 10 percent jitter between the SyncPeriod of all controllers // so that all controllers will not send list requests simultaneously. // +optional SyncPeriod *metav1.Duration `json:"syncPeriod,omitempty"` // LeaderElection is the LeaderElection config to be used when configuring // the manager.Manager leader election // +optional LeaderElection *configv1alpha1.LeaderElectionConfiguration `json:"leaderElection,omitempty"` // CacheNamespace if specified restricts the manager's cache to watch objects in // the desired namespace Defaults to all namespaces // // Note: If a namespace is specified, controllers can still Watch for a // cluster-scoped resource (e.g Node). For namespaced resources the cache // will only hold objects from the desired namespace. // +optional CacheNamespace string `json:"cacheNamespace,omitempty"` // GracefulShutdownTimeout is the duration given to runnable to stop before the manager actually returns on stop. // To disable graceful shutdown, set to time.Duration(0) // To use graceful shutdown without timeout, set to a negative duration, e.G. time.Duration(-1) // The graceful shutdown is skipped for safety reasons in case the leader election lease is lost. GracefulShutdownTimeout *metav1.Duration `json:"gracefulShutDown,omitempty"` // Controller contains global configuration options for controllers // registered within this manager. // +optional Controller *ControllerConfigurationSpec `json:"controller,omitempty"` // Metrics contains the controller metrics configuration // +optional Metrics ControllerMetrics `json:"metrics,omitempty"` // Health contains the controller health configuration // +optional Health ControllerHealth `json:"health,omitempty"` // Webhook contains the controllers webhook configuration // +optional Webhook ControllerWebhook `json:"webhook,omitempty"` }
ControllerManagerConfigurationSpec defines the desired state of GenericControllerManagerConfiguration.
func (*ControllerManagerConfigurationSpec) Complete ¶ added in v0.9.0
func (c *ControllerManagerConfigurationSpec) Complete() (ControllerManagerConfigurationSpec, error)
Complete returns the configuration for controller-runtime.
func (*ControllerManagerConfigurationSpec) DeepCopy ¶ added in v0.9.0
func (in *ControllerManagerConfigurationSpec) DeepCopy() *ControllerManagerConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerManagerConfigurationSpec.
func (*ControllerManagerConfigurationSpec) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerManagerConfigurationSpec) DeepCopyInto(out *ControllerManagerConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerMetrics ¶ added in v0.9.0
type ControllerMetrics struct { // BindAddress is the TCP address that the controller should bind to // for serving prometheus metrics. // It can be set to "0" to disable the metrics serving. // +optional BindAddress string `json:"bindAddress,omitempty"` }
ControllerMetrics defines the metrics configs.
func (*ControllerMetrics) DeepCopy ¶ added in v0.9.0
func (in *ControllerMetrics) DeepCopy() *ControllerMetrics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerMetrics.
func (*ControllerMetrics) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerMetrics) DeepCopyInto(out *ControllerMetrics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerWebhook ¶ added in v0.9.0
type ControllerWebhook struct { // Port is the port that the webhook server serves at. // It is used to set webhook.Server.Port. // +optional Port *int `json:"port,omitempty"` // Host is the hostname that the webhook server binds to. // It is used to set webhook.Server.Host. // +optional Host string `json:"host,omitempty"` // CertDir is the directory that contains the server key and certificate. // if not set, webhook server would look up the server key and certificate in // {TempDir}/k8s-webhook-server/serving-certs. The server key and certificate // must be named tls.key and tls.crt, respectively. // +optional CertDir string `json:"certDir,omitempty"` }
ControllerWebhook defines the webhook server for the controller.
func (*ControllerWebhook) DeepCopy ¶ added in v0.9.0
func (in *ControllerWebhook) DeepCopy() *ControllerWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerWebhook.
func (*ControllerWebhook) DeepCopyInto ¶ added in v0.9.0
func (in *ControllerWebhook) DeepCopyInto(out *ControllerWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Docker ¶
type Docker struct { // Registry specifies the name of a Docker registry Registry string `json:"registry,omitempty"` // Image specifies the name of a Docker image Image string `json:"image,omitempty"` // Tag specifies the Docker image tag Tag string `json:"tag,omitempty"` }
func (*Docker) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Docker.
func (*Docker) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Docker) ToContainerImage ¶
type GenericWebhookInfo ¶
type GenericWebhookInfo struct { // Enable specifies whether the webhook is enabled or not Enable bool `json:"enable,omitempty"` // Name specifies the name of the respective webhook Name string `json:"name,omitempty"` }
func (*GenericWebhookInfo) DeepCopy ¶
func (in *GenericWebhookInfo) DeepCopy() *GenericWebhookInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericWebhookInfo.
func (*GenericWebhookInfo) DeepCopyInto ¶
func (in *GenericWebhookInfo) DeepCopyInto(out *GenericWebhookInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeStashConfig ¶
type KubeStashConfig struct { metav1.TypeMeta `json:",inline"` // ControllerManagerConfigurationSpec returns the contfigurations for controllers ControllerManagerConfigurationSpec `json:",inline"` // Configuration options related to license License LicenseOptions `json:"license,omitempty"` // WebhookInfo specifies validating and mutating webhook information WebhookInfo WebhookInfo `json:"webhookInfo,omitempty"` // Docker specifies the operator's docker registry, image, and tag information Docker Docker `json:"docker,omitempty"` // ImagePullSecrets specifies the secrets to pull image from private registry ImagePullSecrets []string `json:"imagePullSecrets,omitempty"` // NetVolAccessor specifies the network volume accessor's resource requirements NetVolAccessor NetVolAccessor `json:"netVolAccessor,omitempty"` // NetworkPolicy specifies whether the networkPolicy is enabled or not NetworkPolicy bool `json:"networkPolicy,omitempty"` }
KubeStashConfig is the Schema for the kubestashconfigs API
func (*KubeStashConfig) DeepCopy ¶
func (in *KubeStashConfig) DeepCopy() *KubeStashConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeStashConfig.
func (*KubeStashConfig) DeepCopyInto ¶
func (in *KubeStashConfig) DeepCopyInto(out *KubeStashConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubeStashConfig) DeepCopyObject ¶
func (in *KubeStashConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LicenseOptions ¶
type LicenseOptions struct { // Path specifies the path of the license file Path string `json:"path,omitempty"` // ApiService specifies the name of the ApiService to use by the addons to identify the respective service and certificate for license verification request ApiService string `json:"apiService,omitempty"` }
func (*LicenseOptions) DeepCopy ¶
func (in *LicenseOptions) DeepCopy() *LicenseOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LicenseOptions.
func (*LicenseOptions) DeepCopyInto ¶
func (in *LicenseOptions) DeepCopyInto(out *LicenseOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetVolAccessor ¶ added in v0.2.0
type NetVolAccessor struct { // CPU specifies amount of CPU resource to allocate for each network volume accessor deployment CPU string `json:"cpu,omitempty"` // Memory specifies amount of Memory resource to allocate for each network volume accessor deployment Memory string `json:"memory,omitempty"` // User specifies the UID of each network volume accessor deployment User int64 `json:"user,omitempty"` // PrivilegedMode specifies whether each network volume accessor deployment should run in privileged mode or not PrivilegedMode bool `json:"privilegedMode,omitempty"` }
func (*NetVolAccessor) DeepCopy ¶ added in v0.2.0
func (in *NetVolAccessor) DeepCopy() *NetVolAccessor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetVolAccessor.
func (*NetVolAccessor) DeepCopyInto ¶ added in v0.2.0
func (in *NetVolAccessor) DeepCopyInto(out *NetVolAccessor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebhookInfo ¶
type WebhookInfo struct { Validating GenericWebhookInfo `json:"validating,omitempty"` Mutating GenericWebhookInfo `json:"mutating,omitempty"` }
func (*WebhookInfo) DeepCopy ¶
func (in *WebhookInfo) DeepCopy() *WebhookInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookInfo.
func (*WebhookInfo) DeepCopyInto ¶
func (in *WebhookInfo) DeepCopyInto(out *WebhookInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.