Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the v1alpha1 API group +kubebuilder:object:generate=true +groupName=cpet.belastingdienst.nl
Index ¶
- Constants
- Variables
- func ActivePaasConfigUpdated() predicate.Predicate
- type ConfigArgoPermissionsdeprecated
- type ConfigCapPerm
- type ConfigCapabilities
- type ConfigCapability
- type ConfigCustomField
- type ConfigLdap
- type ConfigQuotaSettings
- type ConfigRoleMappings
- type ConfigRolesSas
- type NamespacedName
- type Paas
- func (p Paas) AllCapNamespaces() (ns map[string]bool)
- func (p Paas) AllEnabledNamespaces() (ns map[string]bool)
- func (p Paas) AmIOwner(references []metav1.OwnerReference) bool
- func (p Paas) ClonedAnnotations() map[string]string
- func (p Paas) ClonedLabels() map[string]string
- func (in *Paas) DeepCopy() *Paas
- func (in *Paas) DeepCopyInto(out *Paas)
- func (in *Paas) DeepCopyObject() runtime.Object
- func (p Paas) GetConditions() []metav1.Condition
- func (p Paas) GetNsSshSecrets(ns string) (secrets map[string]string)
- func (p Paas) GroupKey2GroupName(groupKey string) string
- func (p Paas) IsItMe(reference metav1.OwnerReference) bool
- func (p Paas) ManagedByPaas() string
- func (p Paas) PrefixedAllCapNamespaces() (ns map[string]bool)
- func (p Paas) PrefixedAllEnabledNamespaces() (ns map[string]bool)
- func (p Paas) PrefixedBoolMap(m map[string]bool) map[string]bool
- func (p Paas) WithoutMe(references []metav1.OwnerReference) (withoutMe []metav1.OwnerReference)
- type PaasCapabilities
- func (pcs PaasCapabilities) AddCapSshSecret(capability string, key string, value string) (err error)
- func (pcs PaasCapabilities) AsPrefixedMap(prefix string) PaasCapabilities
- func (in PaasCapabilities) DeepCopy() PaasCapabilities
- func (in PaasCapabilities) DeepCopyInto(out *PaasCapabilities)
- func (pcs PaasCapabilities) GetCapability(capability string) (cap PaasCapability, err error)
- func (pcs PaasCapabilities) IsCap(name string) bool
- func (pcs PaasCapabilities) ResetCapSshSecret(capability string) (err error)
- type PaasCapability
- func (pc *PaasCapability) CapExtraFields(fieldConfig map[string]ConfigCustomField) (fields map[string]string, err error)
- func (in *PaasCapability) DeepCopy() *PaasCapability
- func (in *PaasCapability) DeepCopyInto(out *PaasCapability)
- func (pc PaasCapability) GetSshSecrets() map[string]string
- func (pc *PaasCapability) IsEnabled() bool
- func (pc PaasCapability) Quotas() (pq paas_quota.Quota)
- func (pc *PaasCapability) SetDefaults()
- func (pc *PaasCapability) SetSshSecret(key string, value string)
- func (pc *PaasCapability) WithExtraPermissions() bool
- type PaasConfig
- type PaasConfigList
- type PaasConfigSpec
- type PaasConfigStatus
- type PaasGroup
- type PaasGroups
- func (pgs PaasGroups) AsGroups() groups.Groups
- func (in PaasGroups) DeepCopy() PaasGroups
- func (in PaasGroups) DeepCopyInto(out *PaasGroups)
- func (pgs PaasGroups) Filtered(groups []string) PaasGroups
- func (pgs PaasGroups) Key2Name(key string) string
- func (pgs PaasGroups) Keys() (keys []string)
- func (pgs PaasGroups) LdapQueries() []string
- func (pgs PaasGroups) Names() (groups []string)
- func (pgs PaasGroups) Roles() map[string][]string
- type PaasList
- type PaasNS
- func (p PaasNS) AmIOwner(references []metav1.OwnerReference) bool
- func (p PaasNS) ClonedLabels() map[string]string
- func (in *PaasNS) DeepCopy() *PaasNS
- func (in *PaasNS) DeepCopyInto(out *PaasNS)
- func (in *PaasNS) DeepCopyObject() runtime.Object
- func (p PaasNS) GetConditions() []metav1.Condition
- func (p PaasNS) IsItMe(reference metav1.OwnerReference) bool
- func (pns PaasNS) NamespaceName() string
- type PaasNSList
- type PaasNSSpec
- type PaasNsStatus
- type PaasSpec
- type PaasStatus
Constants ¶
const ( // TypeReadyPaas represents the status of the Paas reconciliation TypeReadyPaas = "Ready" // TypeHasErrorsPaas represents the status used when the Paas reconciliation holds errors. TypeHasErrorsPaas = "HasErrors" // TypeDegradedPaas represents the status used when the Paas is deleted and the finalizer operations are yet to occur. TypeDegradedPaas = "Degraded" )
Definitions to manage status conditions
const ( // TypeActivePaasConfig represents whether this is the PaasConfig being used by the Paas operator TypeActivePaasConfig = "Active" // TypeHasErrorsPaasConfig represents the status used when the custom resource reconciliation holds errors. TypeHasErrorsPaasConfig = "HasErrors" // TypeDegradedPaasConfig represents the status used when the custom resource is deleted and the finalizer operations are yet to occur. TypeDegradedPaasConfig = "Degraded" )
Definitions to manage status conditions
const ( // TypeReadyPaasNs represents the status of the PaasNs reconciliation TypeReadyPaasNs = "Ready" // TypeHasErrorsPaasNs represents the status used when the PaasNs reconciliation holds errors. TypeHasErrorsPaasNs = "HasErrors" // TypeDegradedPaasNs represents the status used when the PaasNs is deleted and the finalizer operations are yet to occur. TypeDegradedPaasNs = "Degraded" )
Definitions to manage status conditions
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cpet.belastingdienst.nl", 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 ¶
func ActivePaasConfigUpdated ¶ added in v1.0.0
ActivePaasConfigUpdated returns a predicate to be used in watches. We are only interested in changes to the active PaasConfig. because we determine the active PaasConfig based on a Condition, we must use the updateFunc as the status set is done via an update. We explicitly don't return deletions of the PaasConfig.
Types ¶
type ConfigArgoPermissions
deprecated
added in
v1.0.0
type ConfigArgoPermissions struct { // Deprecated: ArgoCD specific code will be removed from the operator // The optional default policy which is set in the ArgoCD instance // +kubebuilder:validation:Optional DefaultPolicy string `json:"default_policy"` // Deprecated: ArgoCD specific code will be removed from the operator // The name of the ArgoCD instance to apply ArgoPermissions to // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required ResourceName string `json:"resource_name"` // Deprecated: ArgoCD specific code will be removed from the operator // The name of the role to add to Groups set in ArgoPermissions // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Role string `json:"role"` // Deprecated: ArgoCD specific code will be removed from the operator // The header value to set in ArgoPermissions // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Header string `json:"header"` }
Deprecated: ArgoCD specific code will be removed from the operator
func (*ConfigArgoPermissions) DeepCopy ¶ added in v1.0.0
func (in *ConfigArgoPermissions) DeepCopy() *ConfigArgoPermissions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigArgoPermissions.
func (*ConfigArgoPermissions) DeepCopyInto ¶ added in v1.0.0
func (in *ConfigArgoPermissions) DeepCopyInto(out *ConfigArgoPermissions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ConfigArgoPermissions) FromGroups
deprecated
added in
v1.0.0
func (ap ConfigArgoPermissions) FromGroups(groups []string) string
Deprecated: ArgoCD specific code will be removed from the operator
type ConfigCapPerm ¶ added in v1.0.0
func (ConfigCapPerm) AsConfigRolesSas ¶ added in v1.0.0
func (ccp ConfigCapPerm) AsConfigRolesSas(add bool) ConfigRolesSas
func (ConfigCapPerm) DeepCopy ¶ added in v1.0.0
func (in ConfigCapPerm) DeepCopy() ConfigCapPerm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigCapPerm.
func (ConfigCapPerm) DeepCopyInto ¶ added in v1.0.0
func (in ConfigCapPerm) DeepCopyInto(out *ConfigCapPerm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ConfigCapPerm) Roles ¶ added in v1.0.0
func (ccp ConfigCapPerm) Roles() []string
func (ConfigCapPerm) ServiceAccounts ¶ added in v1.0.0
func (ccp ConfigCapPerm) ServiceAccounts() []string
type ConfigCapabilities ¶ added in v1.0.0
type ConfigCapabilities map[string]ConfigCapability
func (ConfigCapabilities) DeepCopy ¶ added in v1.0.0
func (in ConfigCapabilities) DeepCopy() ConfigCapabilities
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigCapabilities.
func (ConfigCapabilities) DeepCopyInto ¶ added in v1.0.0
func (in ConfigCapabilities) DeepCopyInto(out *ConfigCapabilities)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigCapability ¶ added in v1.0.0
type ConfigCapability struct { // Name of the ArgoCD ApplicationSet which manages this capability // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required AppSet string `json:"applicationset"` // Quota settings for this capability // +kubebuilder:validation:Required QuotaSettings ConfigQuotaSettings `json:"quotas"` // Extra permissions set for this capability // +kubebuilder:validation:Optional ExtraPermissions ConfigCapPerm `json:"extra_permissions"` // Default permissions set for this capability // +kubebuilder:validation:Optional DefaultPermissions ConfigCapPerm `json:"default_permissions"` // Settings to allow specific configuration specific to a capability CustomFields map[string]ConfigCustomField `json:"custom_fields,omitempty"` }
func (*ConfigCapability) DeepCopy ¶ added in v1.0.0
func (in *ConfigCapability) DeepCopy() *ConfigCapability
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigCapability.
func (*ConfigCapability) DeepCopyInto ¶ added in v1.0.0
func (in *ConfigCapability) DeepCopyInto(out *ConfigCapability)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigCustomField ¶ added in v1.0.0
type ConfigCustomField struct { // Regular expression for validating input, defaults to ”, which means no validation. // +kubebuilder:validation:Optional Validation string `json:"validation"` // Set a default when no value is specified, defaults to ”. // Only applies when Required is false. // +kubebuilder:validation:Optional Default string `json:"default"` // Define if the value must be specified in the PaaS. // When set to true, and no value is set, PaasNs has error in status field, and capability is not built. // When set to false, and no value is set, Default is used. // +kubebuilder:validation:Optional Required bool `json:"required"` }
func (*ConfigCustomField) DeepCopy ¶ added in v1.0.0
func (in *ConfigCustomField) DeepCopy() *ConfigCustomField
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigCustomField.
func (*ConfigCustomField) DeepCopyInto ¶ added in v1.0.0
func (in *ConfigCustomField) DeepCopyInto(out *ConfigCustomField)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigLdap ¶ added in v1.0.0
type ConfigLdap struct { // LDAP server hostname // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Host string `json:"host"` // LDAP server port // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Required Port int32 `json:"port"` }
func (*ConfigLdap) DeepCopy ¶ added in v1.0.0
func (in *ConfigLdap) DeepCopy() *ConfigLdap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigLdap.
func (*ConfigLdap) DeepCopyInto ¶ added in v1.0.0
func (in *ConfigLdap) DeepCopyInto(out *ConfigLdap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigQuotaSettings ¶ added in v1.0.0
type ConfigQuotaSettings struct { // Is this a clusterwide quota or not // +kubebuilder:default:=false // +kubebuilder:validation:Optional Clusterwide bool `json:"clusterwide"` // The ratio of the requested quota which will be applied to the total quota // +kubebuilder:validation:Optional // +kubebuilder:validation:Format:=float // +kubebuilder:validation:Minimum:=0.0 // +kubebuilder:validation:Maximum:=1.0 Ratio float64 `json:"ratio"` // The default quota which the enabled capability gets // +kubebuilder:validation:Required DefQuota map[corev1.ResourceName]resourcev1.Quantity `json:"defaults"` // The minimum quota which the enabled capability gets // +kubebuilder:validation:Optional MinQuotas map[corev1.ResourceName]resourcev1.Quantity `json:"min"` // The maximum quota which the capability gets // +kubebuilder:validation:Optional MaxQuotas map[corev1.ResourceName]resourcev1.Quantity `json:"max"` }
func (*ConfigQuotaSettings) DeepCopy ¶ added in v1.0.0
func (in *ConfigQuotaSettings) DeepCopy() *ConfigQuotaSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigQuotaSettings.
func (*ConfigQuotaSettings) DeepCopyInto ¶ added in v1.0.0
func (in *ConfigQuotaSettings) DeepCopyInto(out *ConfigQuotaSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigRoleMappings ¶ added in v1.0.0
func (ConfigRoleMappings) DeepCopy ¶ added in v1.0.0
func (in ConfigRoleMappings) DeepCopy() ConfigRoleMappings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigRoleMappings.
func (ConfigRoleMappings) DeepCopyInto ¶ added in v1.0.0
func (in ConfigRoleMappings) DeepCopyInto(out *ConfigRoleMappings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ConfigRoleMappings) Roles ¶ added in v1.0.0
func (crm ConfigRoleMappings) Roles(roleMaps []string) []string
type ConfigRolesSas ¶ added in v1.0.0
This is a insoudeout representation of ConfigCapPerm, closer to rb representation
func (ConfigRolesSas) DeepCopy ¶ added in v1.0.0
func (in ConfigRolesSas) DeepCopy() ConfigRolesSas
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigRolesSas.
func (ConfigRolesSas) DeepCopyInto ¶ added in v1.0.0
func (in ConfigRolesSas) DeepCopyInto(out *ConfigRolesSas)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ConfigRolesSas) Merge ¶ added in v1.0.0
func (crs ConfigRolesSas) Merge(other ConfigRolesSas) ConfigRolesSas
type NamespacedName ¶ added in v1.0.0
type NamespacedName struct { // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Name string `json:"name"` // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Namespace string `json:"namespace"` }
func (*NamespacedName) DeepCopy ¶ added in v1.0.0
func (in *NamespacedName) DeepCopy() *NamespacedName
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedName.
func (*NamespacedName) DeepCopyInto ¶ added in v1.0.0
func (in *NamespacedName) DeepCopyInto(out *NamespacedName)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Paas ¶
type Paas struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PaasSpec `json:"spec,omitempty"` Status PaasStatus `json:"status,omitempty"` }
Paas is the Schema for the paas API
func (Paas) AllCapNamespaces ¶
func (Paas) AllEnabledNamespaces ¶
func (Paas) ClonedAnnotations ¶
func (Paas) ClonedLabels ¶
func (*Paas) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Paas.
func (*Paas) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Paas) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (Paas) GetConditions ¶ added in v1.0.0
func (Paas) GroupKey2GroupName ¶ added in v1.3.0
func (Paas) ManagedByPaas ¶ added in v0.7.0
func (Paas) PrefixedAllCapNamespaces ¶
func (Paas) PrefixedAllEnabledNamespaces ¶
func (Paas) WithoutMe ¶
func (p Paas) WithoutMe(references []metav1.OwnerReference) (withoutMe []metav1.OwnerReference)
type PaasCapabilities ¶
type PaasCapabilities map[string]PaasCapability
func (PaasCapabilities) AddCapSshSecret ¶ added in v0.12.0
func (pcs PaasCapabilities) AddCapSshSecret(capability string, key string, value string) (err error)
func (PaasCapabilities) AsPrefixedMap ¶
func (pcs PaasCapabilities) AsPrefixedMap(prefix string) PaasCapabilities
func (PaasCapabilities) DeepCopy ¶
func (in PaasCapabilities) DeepCopy() PaasCapabilities
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasCapabilities.
func (PaasCapabilities) DeepCopyInto ¶
func (in PaasCapabilities) DeepCopyInto(out *PaasCapabilities)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PaasCapabilities) GetCapability ¶ added in v0.12.0
func (pcs PaasCapabilities) GetCapability(capability string) (cap PaasCapability, err error)
func (PaasCapabilities) IsCap ¶
func (pcs PaasCapabilities) IsCap(name string) bool
func (PaasCapabilities) ResetCapSshSecret ¶ added in v0.12.0
func (pcs PaasCapabilities) ResetCapSshSecret(capability string) (err error)
type PaasCapability ¶ added in v0.12.0
type PaasCapability struct { // Do we want to use this capability, default false // +kubebuilder:validation:Optional Enabled bool `json:"enabled"` // The URL that contains the Applications / Application Sets to be used by this capability // +kubebuilder:validation:Optional GitUrl string `json:"gitUrl"` // The revision of the git repo that contains the Applications / Application Sets to be used by this capability // +kubebuilder:validation:Optional GitRevision string `json:"gitRevision"` // the path in the git repo that contains the Applications / Application Sets to be used by this capability // +kubebuilder:validation:Optional GitPath string `json:"gitPath"` // Custom fields to configure this specific Capability // +kubebuilder:validation:Optional CustomFields map[string]string `json:"custom_fields"` // This project has its own ClusterResourceQuota settings // +kubebuilder:validation:Optional Quota paas_quota.Quota `json:"quota"` // You can add ssh keys (which is a type of secret) for capability to use for access to bitBucket // They must be encrypted with the public key corresponding to the private key deployed together with the Paas operator // +kubebuilder:validation:Optional SshSecrets map[string]string `json:"sshSecrets"` // You can enable extra permissions for the service accounts belonging to this capability // Exact definitions is configured in Paas Configmap // +kubebuilder:validation:Optional ExtraPermissions bool `json:"extra_permissions"` }
func (*PaasCapability) CapExtraFields ¶ added in v1.0.0
func (pc *PaasCapability) CapExtraFields(fieldConfig map[string]ConfigCustomField) (fields map[string]string, err error)
func (*PaasCapability) DeepCopy ¶ added in v0.12.0
func (in *PaasCapability) DeepCopy() *PaasCapability
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasCapability.
func (*PaasCapability) DeepCopyInto ¶ added in v0.12.0
func (in *PaasCapability) DeepCopyInto(out *PaasCapability)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PaasCapability) GetSshSecrets ¶ added in v0.12.0
func (pc PaasCapability) GetSshSecrets() map[string]string
func (*PaasCapability) IsEnabled ¶ added in v0.12.0
func (pc *PaasCapability) IsEnabled() bool
func (PaasCapability) Quotas ¶ added in v0.12.0
func (pc PaasCapability) Quotas() (pq paas_quota.Quota)
func (*PaasCapability) SetDefaults ¶ added in v0.12.0
func (pc *PaasCapability) SetDefaults()
func (*PaasCapability) SetSshSecret ¶ added in v0.12.0
func (pc *PaasCapability) SetSshSecret(key string, value string)
func (*PaasCapability) WithExtraPermissions ¶ added in v0.12.0
func (pc *PaasCapability) WithExtraPermissions() bool
type PaasConfig ¶ added in v1.0.0
type PaasConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PaasConfigSpec `json:"spec,omitempty"` Status PaasConfigStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:path=paasconfig,scope=Cluster
func (*PaasConfig) DeepCopy ¶ added in v1.0.0
func (in *PaasConfig) DeepCopy() *PaasConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasConfig.
func (*PaasConfig) DeepCopyInto ¶ added in v1.0.0
func (in *PaasConfig) DeepCopyInto(out *PaasConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasConfig) DeepCopyObject ¶ added in v1.0.0
func (in *PaasConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (PaasConfig) GetConditions ¶ added in v1.0.0
func (p PaasConfig) GetConditions() []metav1.Condition
type PaasConfigList ¶ added in v1.0.0
type PaasConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PaasConfig `json:"items"` }
+kubebuilder:object:root=true PaasConfigList contains a list of PaasConfig
func (*PaasConfigList) DeepCopy ¶ added in v1.0.0
func (in *PaasConfigList) DeepCopy() *PaasConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasConfigList.
func (*PaasConfigList) DeepCopyInto ¶ added in v1.0.0
func (in *PaasConfigList) DeepCopyInto(out *PaasConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasConfigList) DeepCopyObject ¶ added in v1.0.0
func (in *PaasConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PaasConfigSpec ¶ added in v1.0.0
type PaasConfigSpec struct { // DecryptKeysSecret is a reference to the secret containing the DecryptKeys // +kubebuilder:validation:Required DecryptKeysSecret NamespacedName `json:"decryptKeySecret"` // Enable debug information generation or not // +kubebuilder:default:=false // +kubebuilder:validation:Optional Debug bool `json:"debug"` // A map with zero or more ConfigCapability // +kubebuilder:validation:Optional Capabilities ConfigCapabilities `json:"capabilities"` // Deprecated: GroupSyncList code will be removed from the operator to make it more generic // A reference to a configmap containing a groupsynclist of LDAP groups to be synced using LDAP sync // +kubebuilder:validation:Required GroupSyncList NamespacedName `json:"groupsynclist"` // Deprecated: GroupSyncListKey code will be removed from the operator to make it more generic // A key in the configures GroupSyncList which will contain the LDAP groups to be synced using LDAP sync // +kubebuilder:default:=groupsynclist.txt // +kubebuilder:validation:Optional GroupSyncListKey string `json:"groupsynclist_key"` // LDAP configuration for the operator to add to Groups // +kubebuilder:validation:Optional LDAP ConfigLdap `json:"ldap"` // Deprecated: ArgoCD specific code will be removed from the operator // Permissions to set for ArgoCD instance // +kubebuilder:validation:Optional ArgoPermissions ConfigArgoPermissions `json:"argopermissions"` // Namespace in which a clusterwide ArgoCD can be found for managing capabilities and appProjects // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required ClusterWideArgoCDNamespace string `json:"clusterwide_argocd_namespace"` // Label which is added to clusterquotas // +kubebuilder:default:=clusterquotagroup // +kubebuilder:validation:Optional QuotaLabel string `json:"quota_label"` // Name of the label used to define who is the contact for this resource // +kubebuilder:default:=requestor // +kubebuilder:validation:Optional RequestorLabel string `json:"requestor_label"` // Name of the label used to define by whom the resource is managed. // +kubebuilder:default:=argocd.argoproj.io/managed-by // +kubebuilder:validation:Optional ManagedByLabel string `json:"managed_by_label"` // Deprecated: ArgoCD specific code will be removed from the operator // Name of an ApplicationSet to be set as ignored in the ArgoCD bootstrap Application // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required ExcludeAppSetName string `json:"exclude_appset_name"` // Grant permissions to all groups according to config in configmap and role selected per group in paas. // +kubebuilder:validation:Optional RoleMappings ConfigRoleMappings `json:"rolemappings"` }
func (PaasConfigSpec) CapabilityK8sName ¶ added in v1.0.0
func (config PaasConfigSpec) CapabilityK8sName(capability string) (as types.NamespacedName)
func (*PaasConfigSpec) DeepCopy ¶ added in v1.0.0
func (in *PaasConfigSpec) DeepCopy() *PaasConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasConfigSpec.
func (*PaasConfigSpec) DeepCopyInto ¶ added in v1.0.0
func (in *PaasConfigSpec) DeepCopyInto(out *PaasConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaasConfigStatus ¶ added in v1.0.0
type PaasConfigStatus struct { // Conditions of this resource Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` }
func (*PaasConfigStatus) DeepCopy ¶ added in v1.0.0
func (in *PaasConfigStatus) DeepCopy() *PaasConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasConfigStatus.
func (*PaasConfigStatus) DeepCopyInto ¶ added in v1.0.0
func (in *PaasConfigStatus) DeepCopyInto(out *PaasConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaasGroup ¶
type PaasGroup struct { // A fully qualified LDAP query which will be used by the Group Sync Operator to sync users to the defined group. // // When set in combination with `users`, the Group Sync Operator will overwrite the manually assigned users. // Therefore, this field is mutually exclusive with `group.users`. // +kubebuilder:validation:Optional Query string `json:"query"` // A list of LDAP users which are added to the defined group. // // When set in combination with `users`, the Group Sync Operator will overwrite the manually assigned users. // Therefore, this field is mutually exclusive with `group.query`. // +kubebuilder:validation:Optional Users []string `json:"users"` // List of roles, as defined in the `PaasConfig` which the users in this group get assigned via a rolebinding. // +kubebuilder:validation:Optional Roles []string `json:"roles"` }
func (*PaasGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasGroup.
func (*PaasGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaasGroups ¶
func (PaasGroups) AsGroups ¶
func (pgs PaasGroups) AsGroups() groups.Groups
func (PaasGroups) DeepCopy ¶
func (in PaasGroups) DeepCopy() PaasGroups
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasGroups.
func (PaasGroups) DeepCopyInto ¶
func (in PaasGroups) DeepCopyInto(out *PaasGroups)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PaasGroups) Filtered ¶ added in v0.6.0
func (pgs PaasGroups) Filtered(groups []string) PaasGroups
Filtered returns a list of PaasGroups which have a key that is in the list of groups, specified as string.
func (PaasGroups) Key2Name ¶
func (pgs PaasGroups) Key2Name(key string) string
func (PaasGroups) Keys ¶
func (pgs PaasGroups) Keys() (keys []string)
Keys() returns the keys of the PaasGroups
func (PaasGroups) LdapQueries ¶
func (pgs PaasGroups) LdapQueries() []string
func (PaasGroups) Names ¶
func (pgs PaasGroups) Names() (groups []string)
func (PaasGroups) Roles ¶ added in v0.6.0
func (pgs PaasGroups) Roles() map[string][]string
Roles returns a map of groupKeys with the roles defined within that groupKey
type PaasList ¶
type PaasList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Paas `json:"items,omitempty"` }
PaasList contains a list of Paas
func (*PaasList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasList.
func (*PaasList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PaasNS ¶
type PaasNS struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PaasNSSpec `json:"spec,omitempty"` Status PaasNsStatus `json:"status,omitempty"` }
PaasNS is the Schema for the PaasNS API
func (PaasNS) AmIOwner ¶ added in v0.6.0
func (p PaasNS) AmIOwner(references []metav1.OwnerReference) bool
func (PaasNS) ClonedLabels ¶
func (*PaasNS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasNS.
func (*PaasNS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasNS) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (PaasNS) GetConditions ¶ added in v1.0.0
func (PaasNS) NamespaceName ¶
type PaasNSList ¶
type PaasNSList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PaasNS `json:"items"` }
PaasNSList contains a list of PaasNS
func (*PaasNSList) DeepCopy ¶
func (in *PaasNSList) DeepCopy() *PaasNSList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasNSList.
func (*PaasNSList) DeepCopyInto ¶
func (in *PaasNSList) DeepCopyInto(out *PaasNSList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasNSList) DeepCopyObject ¶
func (in *PaasNSList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PaasNSSpec ¶
type PaasNSSpec struct { // The `metadata.name` of the Paas which created the namespace in which this PaasNS is applied // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Paas string `json:"paas"` // Keys of the groups, as defined in the related `paas`, which should get access to the namespace created by this PaasNS. // When not set, all groups as defined in the related `paas` get access to the namespace created by this PaasNS. // +kubebuilder:validation:Optional Groups []string `json:"groups"` // SshSecrets which should exist in the namespace created through this PaasNS, the values are the encrypted secrets through Crypt // +kubebuilder:validation:Optional SshSecrets map[string]string `json:"sshSecrets"` }
PaasNSSpec defines the desired state of PaasNS
func (*PaasNSSpec) DeepCopy ¶
func (in *PaasNSSpec) DeepCopy() *PaasNSSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasNSSpec.
func (*PaasNSSpec) DeepCopyInto ¶
func (in *PaasNSSpec) DeepCopyInto(out *PaasNSSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaasNsStatus ¶ added in v0.5.0
type PaasNsStatus struct { // Deprecated: use paasns.status.conditions instead // +kubebuilder:validation:Optional Messages []string `json:"messages"` // +kubebuilder:validation:Optional Conditions []metav1.Condition `json:"conditions" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` }
PaasStatus defines the observed state of Paas
func (*PaasNsStatus) DeepCopy ¶ added in v0.6.1
func (in *PaasNsStatus) DeepCopy() *PaasNsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasNsStatus.
func (*PaasNsStatus) DeepCopyInto ¶ added in v0.6.1
func (in *PaasNsStatus) DeepCopyInto(out *PaasNsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasNsStatus) GetMessages
deprecated
added in
v0.6.0
func (ps *PaasNsStatus) GetMessages() []string
Deprecated: use paasns.status.conditions instead
func (*PaasNsStatus) Truncate
deprecated
added in
v0.5.0
func (ps *PaasNsStatus) Truncate()
Deprecated: use paasns.status.conditions instead
type PaasSpec ¶
type PaasSpec struct { // Capabilities is a subset of capabilities that will be available in this Paas Project // +kubebuilder:validation:Optional Capabilities PaasCapabilities `json:"capabilities"` // Requestor is an informational field which decides on the requestor (also application responsible) // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Requestor string `json:"requestor"` // Groups define k8s groups, based on an LDAP query or a list of LDAP users, which get access to the namespaces // belonging to this Paas. Per group, RBAC roles can be defined. // +kubebuilder:validation:Optional Groups PaasGroups `json:"groups"` // Quota defines the quotas which should be set on the cluster resource quota as used by this Paas project // +kubebuilder:validation:Required Quota paas_quota.Quota `json:"quota"` // Namespaces can be used to define extra namespaces to be created as part of this Paas project // +kubebuilder:validation:Optional Namespaces []string `json:"namespaces"` // You can add ssh keys (which is a type of secret) for ArgoCD to use for access to bitBucket // They must be encrypted with the public key corresponding to the private key deployed together with the Paas operator // +kubebuilder:validation:Optional SshSecrets map[string]string `json:"sshSecrets"` // Indicated by which 3rd party Paas's ArgoCD this Paas is managed // +kubebuilder:validation:Optional ManagedByPaas string `json:"managedByPaas"` }
PaasSpec defines the desired state of Paas
func (*PaasSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasSpec.
func (*PaasSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PaasStatus ¶
type PaasStatus struct { // Deprecated: use paasns.status.conditions instead // +kubebuilder:validation:Optional Messages []string `json:"messages"` // Deprecated: will not be set and removed in a future release // +kubebuilder:validation:Optional Quota map[string]paas_quota.Quota `json:"quotas"` // +kubebuilder:validation:Optional Conditions []metav1.Condition `json:"conditions" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` }
PaasStatus defines the observed state of Paas
func (*PaasStatus) DeepCopy ¶
func (in *PaasStatus) DeepCopy() *PaasStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PaasStatus.
func (*PaasStatus) DeepCopyInto ¶
func (in *PaasStatus) DeepCopyInto(out *PaasStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PaasStatus) GetMessages
deprecated
added in
v0.6.0
func (ps *PaasStatus) GetMessages() []string
Deprecated: use paasns.status.conditions instead
func (*PaasStatus) Truncate
deprecated
func (ps *PaasStatus) Truncate()
Deprecated: use paas.status.conditions instead