Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the samba-operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=samba-operator.samba.org
Index ¶
- Variables
- type SmbCommonConfig
- type SmbCommonConfigList
- type SmbCommonConfigPodSettings
- type SmbCommonConfigSpec
- type SmbCommonConfigStatus
- type SmbCommonNetworkSpec
- type SmbSecurityConfig
- type SmbSecurityConfigList
- type SmbSecurityConfigSpec
- type SmbSecurityConfigStatus
- type SmbSecurityDNSSpec
- type SmbSecurityDomainSpec
- type SmbSecurityJoinSpec
- type SmbSecurityUserJoinSpec
- type SmbSecurityUsersSpec
- type SmbShare
- type SmbShareList
- type SmbSharePvcSpec
- type SmbShareScalingSpec
- type SmbShareSpec
- type SmbShareStatus
- type SmbShareStorageSpec
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{ Group: "samba-operator.samba.org", 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 SmbCommonConfig ¶
type SmbCommonConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SmbCommonConfigSpec `json:"spec,omitempty"` Status SmbCommonConfigStatus `json:"status,omitempty"` }
SmbCommonConfig is the Schema for the smbcommonconfigs API
func (*SmbCommonConfig) DeepCopy ¶
func (in *SmbCommonConfig) DeepCopy() *SmbCommonConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonConfig.
func (*SmbCommonConfig) DeepCopyInto ¶
func (in *SmbCommonConfig) DeepCopyInto(out *SmbCommonConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbCommonConfig) DeepCopyObject ¶
func (in *SmbCommonConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbCommonConfigList ¶
type SmbCommonConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SmbCommonConfig `json:"items"` }
SmbCommonConfigList contains a list of SmbCommonConfig
func (*SmbCommonConfigList) DeepCopy ¶
func (in *SmbCommonConfigList) DeepCopy() *SmbCommonConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonConfigList.
func (*SmbCommonConfigList) DeepCopyInto ¶
func (in *SmbCommonConfigList) DeepCopyInto(out *SmbCommonConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbCommonConfigList) DeepCopyObject ¶
func (in *SmbCommonConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbCommonConfigPodSettings ¶
type SmbCommonConfigPodSettings struct { // NodeSelector values will be assigned to a PodSpec's NodeSelector. NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Affinity values will be used as defaults for pods created by the // samba operator. Affinity *corev1.Affinity `json:"affinity,omitempty"` }
SmbCommonConfigPodSettings contains values pertaining to the customization of pods created by the samba operator.
func (*SmbCommonConfigPodSettings) DeepCopy ¶
func (in *SmbCommonConfigPodSettings) DeepCopy() *SmbCommonConfigPodSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonConfigPodSettings.
func (*SmbCommonConfigPodSettings) DeepCopyInto ¶
func (in *SmbCommonConfigPodSettings) DeepCopyInto(out *SmbCommonConfigPodSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbCommonConfigSpec ¶
type SmbCommonConfigSpec struct { // Network specifies what kind of networking shares associated with // this config will use. // +kubebuilder:validation:Required Network SmbCommonNetworkSpec `json:"network,omitempty"` // PodSettings are configuration values that are applied to pods that // the operator may create in order to host shares. The values specified // under PodSettings allow admins and users to customize how pods // are scheduled in a kubernetes cluster. PodSettings *SmbCommonConfigPodSettings `json:"podSettings,omitempty"` }
SmbCommonConfigSpec values act as a template for properties of the services that will host shares.
func (*SmbCommonConfigSpec) DeepCopy ¶
func (in *SmbCommonConfigSpec) DeepCopy() *SmbCommonConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonConfigSpec.
func (*SmbCommonConfigSpec) DeepCopyInto ¶
func (in *SmbCommonConfigSpec) DeepCopyInto(out *SmbCommonConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbCommonConfigStatus ¶
type SmbCommonConfigStatus struct { }
SmbCommonConfigStatus defines the observed state of SmbCommonConfig
func (*SmbCommonConfigStatus) DeepCopy ¶
func (in *SmbCommonConfigStatus) DeepCopy() *SmbCommonConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonConfigStatus.
func (*SmbCommonConfigStatus) DeepCopyInto ¶
func (in *SmbCommonConfigStatus) DeepCopyInto(out *SmbCommonConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbCommonNetworkSpec ¶
type SmbCommonNetworkSpec struct { // Publish broadly specifies what kind of networking shares associated with // this config are expected to use. // +kubebuilder:validation:Required // +kubebuilder:validation:Enum:=cluster;external Publish string `json:"publish,omitempty"` }
SmbCommonNetworkSpec values define networking properties for the services that will host shares.
func (*SmbCommonNetworkSpec) DeepCopy ¶
func (in *SmbCommonNetworkSpec) DeepCopy() *SmbCommonNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbCommonNetworkSpec.
func (*SmbCommonNetworkSpec) DeepCopyInto ¶
func (in *SmbCommonNetworkSpec) DeepCopyInto(out *SmbCommonNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityConfig ¶
type SmbSecurityConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SmbSecurityConfigSpec `json:"spec,omitempty"` Status SmbSecurityConfigStatus `json:"status,omitempty"` }
SmbSecurityConfig is the Schema for the smbsecurityconfigs API
func (*SmbSecurityConfig) DeepCopy ¶
func (in *SmbSecurityConfig) DeepCopy() *SmbSecurityConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityConfig.
func (*SmbSecurityConfig) DeepCopyInto ¶
func (in *SmbSecurityConfig) DeepCopyInto(out *SmbSecurityConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbSecurityConfig) DeepCopyObject ¶
func (in *SmbSecurityConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbSecurityConfigList ¶
type SmbSecurityConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SmbSecurityConfig `json:"items"` }
SmbSecurityConfigList contains a list of SmbSecurityConfig
func (*SmbSecurityConfigList) DeepCopy ¶
func (in *SmbSecurityConfigList) DeepCopy() *SmbSecurityConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityConfigList.
func (*SmbSecurityConfigList) DeepCopyInto ¶
func (in *SmbSecurityConfigList) DeepCopyInto(out *SmbSecurityConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbSecurityConfigList) DeepCopyObject ¶
func (in *SmbSecurityConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbSecurityConfigSpec ¶
type SmbSecurityConfigSpec struct { // Mode specifies what approach to security is being used. // +kubebuilder:validation:Required // +kubebuilder:validation:Enum:=user;active-directory Mode string `json:"mode,omitempty"` // Users is used to configure "local" user and group based security. Users *SmbSecurityUsersSpec `json:"users,omitempty"` // Realm specifies the active directory domain to use. Realm string `json:"realm,omitempty"` // JoinSources holds a list of sources for domain join data for // this configuration. JoinSources []SmbSecurityJoinSpec `json:"joinSources,omitempty"` // Domains holds a list of primary & trusted domain configurations. // If left empty a simple default that automatically works with // trusted domains will be used. // +optional Domains []SmbSecurityDomainSpec `json:"domains,omitempty"` // DNS is used to configure properties related to the DNS services // of the domain. // +optional DNS *SmbSecurityDNSSpec `json:"dns,omitempty"` }
SmbSecurityConfigSpec defines the desired state of SmbSecurityConfig
func (*SmbSecurityConfigSpec) DeepCopy ¶
func (in *SmbSecurityConfigSpec) DeepCopy() *SmbSecurityConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityConfigSpec.
func (*SmbSecurityConfigSpec) DeepCopyInto ¶
func (in *SmbSecurityConfigSpec) DeepCopyInto(out *SmbSecurityConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityConfigStatus ¶
type SmbSecurityConfigStatus struct { }
SmbSecurityConfigStatus defines the observed state of SmbSecurityConfig
func (*SmbSecurityConfigStatus) DeepCopy ¶
func (in *SmbSecurityConfigStatus) DeepCopy() *SmbSecurityConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityConfigStatus.
func (*SmbSecurityConfigStatus) DeepCopyInto ¶
func (in *SmbSecurityConfigStatus) DeepCopyInto(out *SmbSecurityConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityDNSSpec ¶
type SmbSecurityDNSSpec struct { // Register a specified member server's address with the domain's DNS or // disabled when set to "never". // NOTE: cluster-ip is not generally supported, it is only for testing. // +kubebuilder:validation:Enum:=never;external-ip;cluster-ip Register string `json:"register,omitempty"` }
SmbSecurityDNSSpec configures the relationship between systems managed via this SmbSecurityConfig and the domain. Ignored by user mode.
func (*SmbSecurityDNSSpec) DeepCopy ¶
func (in *SmbSecurityDNSSpec) DeepCopy() *SmbSecurityDNSSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityDNSSpec.
func (*SmbSecurityDNSSpec) DeepCopyInto ¶
func (in *SmbSecurityDNSSpec) DeepCopyInto(out *SmbSecurityDNSSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityDomainSpec ¶
type SmbSecurityDomainSpec struct { // Name of the domain. // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength:=1 Name string `json:"name,omitempty"` // Mode specifies what approach to security is being used. // +kubebuilder:validation:Required // +kubebuilder:validation:Enum:=autorid;ad-rfc2307 Backend string `json:"backend,omitempty"` }
SmbSecurityDomainSpec configures samba's domain management and ID mapping behavior for the specified domain.
func (*SmbSecurityDomainSpec) DeepCopy ¶
func (in *SmbSecurityDomainSpec) DeepCopy() *SmbSecurityDomainSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityDomainSpec.
func (*SmbSecurityDomainSpec) DeepCopyInto ¶
func (in *SmbSecurityDomainSpec) DeepCopyInto(out *SmbSecurityDomainSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityJoinSpec ¶
type SmbSecurityJoinSpec struct {
UserJoin *SmbSecurityUserJoinSpec `json:"userJoin,omitempty"`
}
SmbSecurityJoinSpec configures how samba instances are allowed to join to active directory if needed.
func (*SmbSecurityJoinSpec) DeepCopy ¶
func (in *SmbSecurityJoinSpec) DeepCopy() *SmbSecurityJoinSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityJoinSpec.
func (*SmbSecurityJoinSpec) DeepCopyInto ¶
func (in *SmbSecurityJoinSpec) DeepCopyInto(out *SmbSecurityJoinSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityUserJoinSpec ¶
type SmbSecurityUserJoinSpec struct { // Secret that contains the username and password. // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength:=1 Secret string `json:"secret,omitempty"` // Key within the secret containing the username and password. // +kubebuilder:default:=join.json // +optional Key string `json:"key,omitempty"` }
SmbSecurityUserJoinSpec configures samba container instances to use a secret containing a username and password.
func (*SmbSecurityUserJoinSpec) DeepCopy ¶
func (in *SmbSecurityUserJoinSpec) DeepCopy() *SmbSecurityUserJoinSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityUserJoinSpec.
func (*SmbSecurityUserJoinSpec) DeepCopyInto ¶
func (in *SmbSecurityUserJoinSpec) DeepCopyInto(out *SmbSecurityUserJoinSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbSecurityUsersSpec ¶
type SmbSecurityUsersSpec struct { // Secret identifies the name of the secret storing user and group // configuration json. // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength:=1 Secret string `json:"secret,omitempty"` // Key identifies the key within the secret that stores the user and // group configuration json. // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength:=1 Key string `json:"key,omitempty"` }
SmbSecurityUsersSpec configures user level security.
func (*SmbSecurityUsersSpec) DeepCopy ¶
func (in *SmbSecurityUsersSpec) DeepCopy() *SmbSecurityUsersSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSecurityUsersSpec.
func (*SmbSecurityUsersSpec) DeepCopyInto ¶
func (in *SmbSecurityUsersSpec) DeepCopyInto(out *SmbSecurityUsersSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbShare ¶
type SmbShare struct {}
SmbShare is the Schema for the smbshares API
func (*SmbShare) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShare.
func (*SmbShare) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbShare) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbShareList ¶
type SmbShareList struct {}
SmbShareList contains a list of SmbShare
func (*SmbShareList) DeepCopy ¶
func (in *SmbShareList) DeepCopy() *SmbShareList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShareList.
func (*SmbShareList) DeepCopyInto ¶
func (in *SmbShareList) DeepCopyInto(out *SmbShareList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SmbShareList) DeepCopyObject ¶
func (in *SmbShareList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SmbSharePvcSpec ¶
type SmbSharePvcSpec struct { // +optional Name string `json:"name,omitempty"` // Behaves similar to the embedded PVC spec for pods. // +optional Spec *corev1.PersistentVolumeClaimSpec `json:"spec,omitempty"` // +kubebuilder:validation:Pattern=`^[^\/]+$` // +optional Path string `json:"path,omitempty"` }
SmbSharePvcSpec defines how a PVC may be associated with a share.
func (*SmbSharePvcSpec) DeepCopy ¶
func (in *SmbSharePvcSpec) DeepCopy() *SmbSharePvcSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbSharePvcSpec.
func (*SmbSharePvcSpec) DeepCopyInto ¶
func (in *SmbSharePvcSpec) DeepCopyInto(out *SmbSharePvcSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbShareScalingSpec ¶
type SmbShareScalingSpec struct { // for (high-)availability purposes. // +optional // +kubebuilder:validation:Enum:=standard;clustered // +kubebuilder:default:=standard AvailabilityMode string `json:"availabilityMode,omitempty"` // to establish when availabilityMode is "clustered". MinClusterSize int `json:"minClusterSize,omitempty"` // this share. If the group doesn't already exist it will be created. // The value must be a valid Kubernetes resource name (RFC 1035 label). // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=63 // +kubebuilder:validation:Pattern=`^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$` // +optional Group string `json:"group,omitempty"` // shares under one (logical) server host. // Valid values are "never" and "explicit". // +optional // +kubebuilder:validation:Enum:=never;explicit // +kubebuilder:default:=never GroupMode string `json:"groupMode,omitempty"` }
SmbShareScalingSpec defines scaling parameters for a share.
func (*SmbShareScalingSpec) DeepCopy ¶
func (in *SmbShareScalingSpec) DeepCopy() *SmbShareScalingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShareScalingSpec.
func (*SmbShareScalingSpec) DeepCopyInto ¶
func (in *SmbShareScalingSpec) DeepCopyInto(out *SmbShareScalingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbShareSpec ¶
type SmbShareSpec struct { // name for the share. If unset, the name will be derived automatically. // +optional ShareName string `json:"shareName,omitempty"` // share. Storage SmbShareStorageSpec `json:"storage"` // +kubebuilder:default:=false // +optional ReadOnly bool `json:"readOnly"` // is visible in listings. // +kubebuilder:default:=true // +optional Browseable bool `json:"browseable"` // for this share. If left blank, the operator's default will be // used. // +kubebuilder:validation:MinLength:=1 // +optional SecurityConfig string `json:"securityConfig,omitempty"` // for this share. If left blank, the operator's default will be // used. // +kubebuilder:validation:MinLength:=1 // +optional CommonConfig string `json:"commonConfig,omitempty"` // should be scaled. Scaling *SmbShareScalingSpec `json:"scaling,omitempty"` }
SmbShareSpec defines the desired state of SmbShare
func (*SmbShareSpec) DeepCopy ¶
func (in *SmbShareSpec) DeepCopy() *SmbShareSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShareSpec.
func (*SmbShareSpec) DeepCopyInto ¶
func (in *SmbShareSpec) DeepCopyInto(out *SmbShareSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbShareStatus ¶
type SmbShareStatus struct { // servers hosting this share. The name is assigned by the operator but is // frequently the same as the SmbShare resource's name. ServerGroup string `json:"serverGroup,omitempty"` }
SmbShareStatus defines the observed state of SmbShare
func (*SmbShareStatus) DeepCopy ¶
func (in *SmbShareStatus) DeepCopy() *SmbShareStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShareStatus.
func (*SmbShareStatus) DeepCopyInto ¶
func (in *SmbShareStatus) DeepCopyInto(out *SmbShareStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SmbShareStorageSpec ¶
type SmbShareStorageSpec struct { // +optional Pvc *SmbSharePvcSpec `json:"pvc,omitempty"` }
SmbShareStorageSpec defines how storage is associated with a share.
func (*SmbShareStorageSpec) DeepCopy ¶
func (in *SmbShareStorageSpec) DeepCopy() *SmbShareStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SmbShareStorageSpec.
func (*SmbShareStorageSpec) DeepCopyInto ¶
func (in *SmbShareStorageSpec) DeepCopyInto(out *SmbShareStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.