Documentation ¶
Overview ¶
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_cert-issuers.go.tpl
+gotohelm:filename=_certs.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_chart.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_configmap.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_connectors.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_console.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_helpers.go.tpl
+gotohelm:filename=_memory.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_notes.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_poddisruptionbudget.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_post-install-upgrade-job.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_rbac.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_secrets.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_service.loadbalancer.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_service.nodeport.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_service.internal.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_serviceaccount.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_servicemonitor.go.tpl
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
+gotohelm:filename=_statefulset.go.tpl
+gotohelm:filename=_values.go.tpl
+gotohelm:ignore=true
Code generated by genpartial DO NOT EDIT.
+gotohelm:ignore=true
Index ¶
- Constants
- Variables
- func BootstrapFile(dot *helmette.Dot) string
- func BrokerList(dot *helmette.Dot, replicas int32, port int32) []string
- func CertIssuers(dot *helmette.Dot) []*certmanagerv1.Issuer
- func CertSecretName(dot *helmette.Dot, certName string, cert *TLSCert) string
- func ChartLabel(dot *helmette.Dot) string
- func ClientAuthRequired(dot *helmette.Dot) bool
- func ClientCerts(dot *helmette.Dot) []*certmanagerv1.Certificate
- func ClusterRoleBindings(dot *helmette.Dot) []*rbacv1.ClusterRoleBinding
- func ClusterRoles(dot *helmette.Dot) []*rbacv1.ClusterRole
- func CommonMounts(dot *helmette.Dot) []corev1.VolumeMount
- func CommonVolumes(dot *helmette.Dot) []corev1.Volume
- func ConfigMaps(dot *helmette.Dot) []*corev1.ConfigMap
- func ConsoleConfig(dot *helmette.Dot) map[string]any
- func ContainerSecurityContext(dot *helmette.Dot) corev1.SecurityContext
- func DefaultMounts(dot *helmette.Dot) []corev1.VolumeMount
- func DefaultVolumes(dot *helmette.Dot) []corev1.Volume
- func FullLabels(dot *helmette.Dot) map[string]string
- func Fullname(dot *helmette.Dot) string
- func GetLicenseLiteral(dot *helmette.Dot) string
- func GetLicenseSecretReference(dot *helmette.Dot) *corev1.SecretKeySelector
- func InternalDomain(dot *helmette.Dot) string
- func LoadBalancerServices(dot *helmette.Dot) []*corev1.Service
- func MonitoringEnabledLabel(dot *helmette.Dot) map[string]string
- func Name(dot *helmette.Dot) string
- func NodePortService(dot *helmette.Dot) *corev1.Service
- func Notes(dot *helmette.Dot) []string
- func PodDisruptionBudget(dot *helmette.Dot) *policyv1.PodDisruptionBudget
- func PodSecurityContext(dot *helmette.Dot) *corev1.PodSecurityContext
- func PostInstallUpgradeEnvironmentVariables(dot *helmette.Dot) []corev1.EnvVar
- func PostInstallUpgradeJob(dot *helmette.Dot) *batchv1.Job
- func RPKProfile(dot *helmette.Dot) *corev1.ConfigMap
- func RedpandaAdditionalStartFlags(dot *helmette.Dot, smp int64) []string
- func RedpandaAtLeast_22_2_0(dot *helmette.Dot) bool
- func RedpandaAtLeast_22_2_atleast_22_2_10(dot *helmette.Dot) bool
- func RedpandaAtLeast_22_3_0(dot *helmette.Dot) bool
- func RedpandaAtLeast_22_3_atleast_22_3_13(dot *helmette.Dot) bool
- func RedpandaAtLeast_23_1_1(dot *helmette.Dot) bool
- func RedpandaAtLeast_23_1_2(dot *helmette.Dot) bool
- func RedpandaAtLeast_23_2_1(dot *helmette.Dot) bool
- func RedpandaAtLeast_23_3_0(dot *helmette.Dot) bool
- func RedpandaConfigFile(dot *helmette.Dot, includeSeedServer bool) string
- func RedpandaConfigMap(dot *helmette.Dot) *corev1.ConfigMap
- func RedpandaMemory(dot *helmette.Dot) int64
- func RedpandaReserveMemory(dot *helmette.Dot) int64
- func RedpandaSMP(dot *helmette.Dot) int64
- func RootCAs(dot *helmette.Dot) []*certmanagerv1.Certificate
- func RpkACLCreate(*helmette.Dot) string
- func RpkACLUserCreate(dot *helmette.Dot) string
- func RpkClusterInfo(*helmette.Dot) string
- func RpkSASLEnvironmentVariables(dot *helmette.Dot) string
- func RpkTopicCreate(dot *helmette.Dot) string
- func RpkTopicDelete(dot *helmette.Dot) string
- func RpkTopicDescribe(*helmette.Dot) string
- func SASLMechanism(dot *helmette.Dot) string
- func SecretBootstrapUser(dot *helmette.Dot) *corev1.Secret
- func SecretConfigWatcher(dot *helmette.Dot) *corev1.Secret
- func SecretConfigurator(dot *helmette.Dot) *corev1.Secret
- func SecretFSValidator(dot *helmette.Dot) *corev1.Secret
- func SecretSASLUsers(dot *helmette.Dot) *corev1.Secret
- func SecretSTSLifecycle(dot *helmette.Dot) *corev1.Secret
- func Secrets(dot *helmette.Dot) []*corev1.Secret
- func ServerList(replicas int32, prefix, fullname, internalDomain string, port int32) []string
- func ServiceAccount(dot *helmette.Dot) *corev1.ServiceAccount
- func ServiceAccountName(dot *helmette.Dot) string
- func ServiceInternal(dot *helmette.Dot) *corev1.Service
- func ServiceMonitor(dot *helmette.Dot) *monitoringv1.ServiceMonitor
- func ServiceName(dot *helmette.Dot) string
- func SidecarControllersClusterRole(dot *helmette.Dot) *rbacv1.ClusterRole
- func SidecarControllersClusterRoleBinding(dot *helmette.Dot) *rbacv1.ClusterRoleBinding
- func SidecarControllersRole(dot *helmette.Dot) *rbacv1.Role
- func SidecarControllersRoleBinding(dot *helmette.Dot) *rbacv1.RoleBinding
- func StatefulSet(dot *helmette.Dot) *appsv1.StatefulSet
- func StatefulSetContainers(dot *helmette.Dot) []corev1.Container
- func StatefulSetInitContainers(dot *helmette.Dot) []corev1.Container
- func StatefulSetPodAnnotations(dot *helmette.Dot, configMapChecksum string) map[string]string
- func StatefulSetPodLabels(dot *helmette.Dot) map[string]string
- func StatefulSetPodLabelsSelector(dot *helmette.Dot) map[string]string
- func StatefulSetVolumeMounts(dot *helmette.Dot) []corev1.VolumeMount
- func StatefulSetVolumes(dot *helmette.Dot) []corev1.Volume
- func StorageTieredConfig(dot *helmette.Dot) map[string]any
- func StrategicMergePatch(overrides PodTemplate, original corev1.PodTemplateSpec) corev1.PodTemplateSpec
- func TLSEnabled(dot *helmette.Dot) bool
- func Tag(dot *helmette.Dot) string
- func Types() []kube.Object
- func Warnings(dot *helmette.Dot) []string
- type AdminExternal
- type AdminListeners
- type AuditLogging
- type Auth
- type BootstrapUser
- func (b *BootstrapUser) BootstrapEnvironment(fullname string) []corev1.EnvVar
- func (b *BootstrapUser) GetMechanism() string
- func (b *BootstrapUser) RpkEnvironment(fullname string) []corev1.EnvVar
- func (b *BootstrapUser) SecretKeySelector(fullname string) *corev1.SecretKeySelector
- func (b *BootstrapUser) Username() string
- type ClusterConfig
- type Config
- type ConsoleTLS
- type Enableable
- type Enterprise
- type ExternalConfig
- type ExternalListeners
- type ExternalTLS
- type HTTPAuthenticationMethod
- type HTTPExternal
- type HTTPListeners
- type Image
- type ImageTag
- type InternalTLS
- type IssuerRefKind
- type KafkaAuthenticationMethod
- type KafkaExternal
- type KafkaListeners
- func (k *KafkaListeners) ConnectorsTLS(tls *TLS, fullName string) connectors.TLS
- func (k *KafkaListeners) ConsoleTLS(tls *TLS) ConsoleTLS
- func (KafkaListeners) JSONSchemaExtend(schema *jsonschema.Schema)
- func (l *KafkaListeners) Listeners(auth *Auth) []map[string]any
- func (l *KafkaListeners) ListenersTLS(tls *TLS) []map[string]any
- func (l *KafkaListeners) TrustStores(tls *TLS) []*TrustStore
- type LicenseSecretRef
- type Listeners
- func (l *Listeners) AdminList(replicas int32, fullname, internalDomain string) []string
- func (l *Listeners) CreateSeedServers(replicas int32, fullname, internalDomain string) []map[string]any
- func (l *Listeners) SchemaRegistryList(replicas int32, fullname, internalDomain string) []string
- func (l *Listeners) TrustStoreVolume(tls *TLS) *corev1.Volume
- func (l *Listeners) TrustStores(tls *TLS) []*TrustStore
- type Logging
- type MebiBytes
- type Monitoring
- type NodeConfig
- type PandaProxyClient
- type PartialAdminExternal
- type PartialAdminListeners
- type PartialAuditLogging
- type PartialAuth
- type PartialBootstrapUser
- type PartialClusterConfig
- type PartialConfig
- type PartialEnableable
- type PartialEnterprise
- type PartialExternalConfig
- type PartialExternalListeners
- type PartialExternalTLS
- type PartialHTTPExternal
- type PartialHTTPListeners
- type PartialImage
- type PartialInternalTLS
- type PartialKafkaExternal
- type PartialKafkaListeners
- type PartialLicenseSecretRef
- type PartialListeners
- type PartialLogging
- type PartialMonitoring
- type PartialNodeConfig
- type PartialPandaProxyClient
- type PartialPodTemplate
- type PartialPostInstallJob
- type PartialRBAC
- type PartialRackAwareness
- type PartialRedpandaResources
- type PartialSASLAuth
- type PartialSASLUser
- type PartialSchemaRegistryClient
- type PartialSchemaRegistryExternal
- type PartialSchemaRegistryListeners
- type PartialSecretRef
- type PartialSecurityContext
- type PartialService
- type PartialServiceAccountCfg
- type PartialStatefulset
- type PartialStorage
- type PartialTLS
- type PartialTLSCert
- type PartialTLSCertMap
- type PartialTiered
- type PartialTieredStorageConfig
- type PartialTieredStorageCredentials
- type PartialTrustStore
- type PartialTunableConfig
- type PartialTuning
- type PartialValues
- type PodTemplate
- type PostInstallJob
- type RBAC
- type RackAwareness
- type RedpandaResources
- type ResourceQuantity
- type SASLAuth
- type SASLUser
- type SchemaRegistryClient
- type SchemaRegistryExternal
- type SchemaRegistryListeners
- func (sr *SchemaRegistryListeners) ConsoleTLS(tls *TLS) ConsoleTLS
- func (SchemaRegistryListeners) JSONSchemaExtend(schema *jsonschema.Schema)
- func (sr *SchemaRegistryListeners) Listeners(saslEnabled bool) []map[string]any
- func (l *SchemaRegistryListeners) ListenersTLS(tls *TLS) []map[string]any
- func (l *SchemaRegistryListeners) TrustStores(tls *TLS) []*TrustStore
- type SecretRef
- type SecurityContext
- type Service
- type ServiceAccountCfg
- type Statefulset
- type Storage
- func (s *Storage) GetTieredStorageConfig() TieredStorageConfig
- func (s *Storage) GetTieredStorageHostPath() string
- func (s *Storage) IsTieredStorageEnabled() bool
- func (Storage) JSONSchemaExtend(schema *jsonschema.Schema)
- func (s *Storage) StorageMinFreeBytes() int64
- func (s *Storage) TieredCacheDirectory(dot *helmette.Dot) string
- func (s *Storage) TieredMountType() string
- func (s *Storage) TieredPersistentVolumeAnnotations() map[string]string
- func (s *Storage) TieredPersistentVolumeLabels() map[string]string
- func (s *Storage) TieredPersistentVolumeStorageClass() string
- type TLS
- type TLSCert
- type TLSCertMap
- type Tiered
- type TieredStorageConfig
- type TieredStorageCredentials
- type TrustStore
- type TunableConfig
- type Tuning
- type Values
Constants ¶
const ( // TrustStoreMountPath is the absolute path at which the // [corev1.VolumeProjection] of truststores will be mounted to the redpanda // container. (Without a trailing slash) TrustStoreMountPath = "/etc/truststores" // ServiceAccountVolumeName is the prefix name that will be added to volumes that mount ServiceAccount secrets // Reference // https://github.com/kubernetes/kubernetes/blob/c6669ea7d61af98da3a2aa8c1d2cdc9c2c57080a/plugin/pkg/admission/serviceaccount/admission.go#L52-L53 ServiceAccountVolumeName = "kube-api-access" // DefaultAPITokenMountPath is the path that ServiceAccountToken secrets are automounted to. // The token file would then be accessible at /var/run/secrets/kubernetes.io/serviceaccount // Reference // https://github.com/kubernetes/kubernetes/blob/c6669ea7d61af98da3a2aa8c1d2cdc9c2c57080a/plugin/pkg/admission/serviceaccount/admission.go#L55-L57 DefaultAPITokenMountPath = "/var/run/secrets/kubernetes.io/serviceaccount" )
const ( // RedpandaContainerName is the user facing name of the redpanda container // in the redpanda StatefulSet. While the name of the container can // technically change, this is the name that is used to locate the // [corev1.Container] that will be smp'd into the redpanda container. RedpandaContainerName = "redpanda" // PostUpgradeContainerName is the user facing name of the post-install // job's container. PostInstallContainerName = "post-install" // PostUpgradeContainerName is the user facing name of the post-upgrade // job's container. PostUpgradeContainerName = "post-upgrade" // RedpandaControllersContainerName is the container that can perform day // 2 operation similarly to Redpanda operator. RedpandaControllersContainerName = "redpanda-controllers" )
const DefaultSASLMechanism = "SCRAM-SHA-512"
Variables ¶
var ( // Scheme is a [runtime.Scheme] with the appropriate extensions to load all // objects produced by the redpanda chart. Scheme = runtime.NewScheme() // Chart is the go version of the redpanda helm chart. Chart = gotohelm.MustLoad(chartYAML, defaultValuesYAML, render, console.Chart, connectors.Chart) )
Functions ¶
func BootstrapFile ¶
BootstrapFile returns contents of `.bootstrap.yaml`. Keys that may be set via environment variables (such as tiered storage secrets) will have placeholders in the form of $ENVVARNAME. An init container is responsible for expanding said placeholders.
Convention is to name envvars $REDPANDA_SCREAMING_CASE_CLUSTER_PROPERTY_NAME. For example, cloud_storage_secret_key would be $REDPANDA_CLOUD_STORAGE_SECRET_KEY.
`.bootstrap.yaml` is templated and then read by both the redpanda container and the post install/upgrade job.
func CertIssuers ¶
func CertIssuers(dot *helmette.Dot) []*certmanagerv1.Issuer
func CertSecretName ¶
return correct secretName to use based if secretRef exists
func ChartLabel ¶
Create chart name and version as used by the chart label.
func ClientAuthRequired ¶
func ClientCerts ¶
func ClientCerts(dot *helmette.Dot) []*certmanagerv1.Certificate
func ClusterRoleBindings ¶
func ClusterRoleBindings(dot *helmette.Dot) []*rbacv1.ClusterRoleBinding
func ClusterRoles ¶
func ClusterRoles(dot *helmette.Dot) []*rbacv1.ClusterRole
func CommonMounts ¶
func CommonMounts(dot *helmette.Dot) []corev1.VolumeMount
mounts that are common to all containers
func CommonVolumes ¶
volumes that are common to all pods
func ContainerSecurityContext ¶
func ContainerSecurityContext(dot *helmette.Dot) corev1.SecurityContext
ContainerSecurityContext returns a subset of corev1.SecurityContext for the redpanda Statefulset. It is also used as the default ContainerSecurityContext.
func DefaultMounts ¶
func DefaultMounts(dot *helmette.Dot) []corev1.VolumeMount
mounts that are common to most containers
func FullLabels ¶
full helm labels + common labels
func Fullname ¶
Create a default fully qualified app name. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
func GetLicenseLiteral ¶
func GetLicenseSecretReference ¶
func GetLicenseSecretReference(dot *helmette.Dot) *corev1.SecretKeySelector
func PodDisruptionBudget ¶
func PodDisruptionBudget(dot *helmette.Dot) *policyv1.PodDisruptionBudget
func PodSecurityContext ¶
func PodSecurityContext(dot *helmette.Dot) *corev1.PodSecurityContext
PodSecurityContext returns a subset of corev1.PodSecurityContext for the redpanda Statefulset. It is also used as the default PodSecurityContext.
func PostInstallUpgradeEnvironmentVariables ¶
PostInstallUpgradeEnvironmentVariables returns environment variables assigned to Redpanda container.
func RPKProfile ¶
RPKProfile returns a corev1.ConfigMap for aiding users in connecting to the external listeners of their redpanda cluster. It is meant for external consumption via NOTES.txt and is not used within this chart.
func RedpandaAdditionalStartFlags ¶
RedpandaAdditionalStartFlags returns a string list of flags suitable for use as `additional_start_flags`. User provided flags will override any of those set by default.
func RedpandaAtLeast_22_2_0 ¶
func RedpandaAtLeast_22_3_0 ¶
func RedpandaAtLeast_23_1_1 ¶
func RedpandaAtLeast_23_1_2 ¶
func RedpandaAtLeast_23_2_1 ¶
func RedpandaAtLeast_23_3_0 ¶
func RedpandaMemory ¶
RedpandaMemory will return the amount of memory for Redpanda process. It should be passed to the `--memory` argument of the Redpanda process, see RedpandaAdditionalStartFlags and rpk redpanda start documentation. https://docs.redpanda.com/current/reference/rpk/rpk-redpanda/rpk-redpanda-start/
func RedpandaReserveMemory ¶
RedpandaReserveMemory will return the amount of memory that Redpanda process will not use from the provided value in `--memory` or from the internal Redpanda discovery process. It should be passed to the `--reserve-memory` argument of the Redpanda process, see RedpandaAdditionalStartFlags and rpk redpanda start documentation. https://docs.redpanda.com/current/reference/rpk/rpk-redpanda/rpk-redpanda-start/
func RedpandaSMP ¶
func RootCAs ¶
func RootCAs(dot *helmette.Dot) []*certmanagerv1.Certificate
func RpkACLCreate ¶
func RpkACLUserCreate ¶
func RpkClusterInfo ¶
func RpkSASLEnvironmentVariables ¶
was: rpk sasl environment variables
This will return a string with the correct environment variables to use for SASL based on the version of the redpanda container being used
func RpkTopicCreate ¶
func RpkTopicDelete ¶
func RpkTopicDescribe ¶
func SASLMechanism ¶
func ServerList ¶
func ServiceAccount ¶
func ServiceAccount(dot *helmette.Dot) *corev1.ServiceAccount
func ServiceAccountName ¶
Create the name of the service account to use
func ServiceMonitor ¶
func ServiceMonitor(dot *helmette.Dot) *monitoringv1.ServiceMonitor
func SidecarControllersClusterRole ¶
func SidecarControllersClusterRole(dot *helmette.Dot) *rbacv1.ClusterRole
func SidecarControllersClusterRoleBinding ¶
func SidecarControllersClusterRoleBinding(dot *helmette.Dot) *rbacv1.ClusterRoleBinding
func SidecarControllersRoleBinding ¶
func SidecarControllersRoleBinding(dot *helmette.Dot) *rbacv1.RoleBinding
func StatefulSet ¶
func StatefulSet(dot *helmette.Dot) *appsv1.StatefulSet
func StatefulSetPodAnnotations ¶
StatefulSetPodAnnotations returns the annotation for the Redpanda PodTemplate.
func StatefulSetPodLabels ¶
StatefulSetPodLabels returns the label that includes label selector for the Redpanda PodTemplate. If this helm release is an upgrade, the existing statefulset's pod template labels will be used as it's an immutable field.
func StatefulSetPodLabelsSelector ¶
StatefulSetPodLabelsSelector returns the label selector for the Redpanda StatefulSet. If this helm release is an upgrade, the existing statefulset's label selector will be used as it's an immutable field.
func StatefulSetVolumeMounts ¶
func StatefulSetVolumeMounts(dot *helmette.Dot) []corev1.VolumeMount
StatefulSetRedpandaMounts returns the VolumeMounts for the Redpanda Container of the Redpanda StatefulSet.
func StatefulSetVolumes ¶
StatefulSetVolumes returns the [corev1.Volume]s for the Redpanda StatefulSet.
func StorageTieredConfig ¶
StorageTieredConfig was: storage-tiered-config Wrap this up since there are helm tests that require it
func StrategicMergePatch ¶
func StrategicMergePatch(overrides PodTemplate, original corev1.PodTemplateSpec) corev1.PodTemplateSpec
StrategicMergePatch is a half-baked implementation of Kubernetes' strategic merge patch. It's closer to a merge patch with smart handling of lists that's tailored to the values permitted by PodTemplate.
func TLSEnabled ¶
check if client auth is enabled for any of the listeners
func Types ¶
Types returns a slice containing the set of all kube.Object types that could be returned by the redpanda chart. +gotohelm:ignore=true
Types ¶
type AdminExternal ¶
type AdminExternal struct { // Enabled indicates if this listener is enabled. If not specified, // defaults to the value of [ExternalConfig.Enabled]. Enabled *bool `json:"enabled"` AdvertisedPorts []int32 `json:"advertisedPorts" jsonschema:"minItems=1"` Port int32 `json:"port" jsonschema:"required"` NodePort *int32 `json:"nodePort"` TLS *ExternalTLS `json:"tls"` }
func (*AdminExternal) IsEnabled ¶
func (l *AdminExternal) IsEnabled() bool
type AdminListeners ¶
type AdminListeners struct { External ExternalListeners[AdminExternal] `json:"external"` Port int32 `json:"port" jsonschema:"required"` AppProtocol *string `json:"appProtocol,omitempty"` TLS InternalTLS `json:"tls" jsonschema:"required"` }
func (*AdminListeners) ConsoleTLS ¶
func (l *AdminListeners) ConsoleTLS(tls *TLS) ConsoleTLS
func (*AdminListeners) Listeners ¶
func (l *AdminListeners) Listeners() []map[string]any
func (*AdminListeners) ListenersTLS ¶
func (l *AdminListeners) ListenersTLS(tls *TLS) []map[string]any
func (*AdminListeners) TrustStores ¶
func (l *AdminListeners) TrustStores(tls *TLS) []*TrustStore
TrustStores returns a slice of all configured and enabled [TrustStore]s on both internal and external listeners.
type AuditLogging ¶
type AuditLogging struct { Enabled bool `json:"enabled"` Listener string `json:"listener"` Partitions int `json:"partitions"` EnabledEventTypes []string `json:"enabledEventTypes"` ExcludedTopics []string `json:"excludedTopics"` ExcludedPrincipals []string `json:"excludedPrincipals"` ClientMaxBufferSize int `json:"clientMaxBufferSize"` QueueDrainIntervalMS int `json:"queueDrainIntervalMs"` QueueMaxBufferSizeperShard int `json:"queueMaxBufferSizePerShard"` ReplicationFactor int `json:"replicationFactor"` }
func (AuditLogging) JSONSchemaExtend ¶
func (AuditLogging) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type Auth ¶
type Auth struct {
SASL *SASLAuth `json:"sasl" jsonschema:"required"`
}
func (*Auth) IsSASLEnabled ¶
type BootstrapUser ¶
type BootstrapUser struct { Name *string `json:"name"` SecretKeyRef *corev1.SecretKeySelector `json:"secretKeyRef"` Password *string `json:"password"` Mechanism string `json:"mechanism" jsonschema:"pattern=^(SCRAM-SHA-512|SCRAM-SHA-256)$"` }
func (*BootstrapUser) BootstrapEnvironment ¶
func (b *BootstrapUser) BootstrapEnvironment(fullname string) []corev1.EnvVar
func (*BootstrapUser) GetMechanism ¶
func (b *BootstrapUser) GetMechanism() string
func (*BootstrapUser) RpkEnvironment ¶
func (b *BootstrapUser) RpkEnvironment(fullname string) []corev1.EnvVar
func (*BootstrapUser) SecretKeySelector ¶
func (b *BootstrapUser) SecretKeySelector(fullname string) *corev1.SecretKeySelector
func (*BootstrapUser) Username ¶
func (b *BootstrapUser) Username() string
type ClusterConfig ¶
func (*ClusterConfig) Translate ¶
func (c *ClusterConfig) Translate() map[string]any
type Config ¶
type Config struct { Cluster ClusterConfig `json:"cluster" jsonschema:"required"` Node NodeConfig `json:"node" jsonschema:"required"` RPK map[string]any `json:"rpk"` SchemaRegistryClient *SchemaRegistryClient `json:"schema_registry_client"` PandaProxyClient *PandaProxyClient `json:"pandaproxy_client"` Tunable TunableConfig `json:"tunable" jsonschema:"required"` }
func (*Config) CreateRPKConfiguration ¶
type ConsoleTLS ¶
type ConsoleTLS struct { Enabled bool `json:"enabled"` CaFilepath string `json:"caFilepath"` CertFilepath string `json:"certFilepath"` KeyFilepath string `json:"keyFilepath"` InsecureSkipTLSVerify bool `json:"insecureSkipTlsVerify"` }
ConsoleTLS is a struct that represents TLS configuration used in console configuration in Kafka, Schema Registry and Redpanda Admin API. For the above configuration helm chart could import struct, but as of the writing the struct fields tag have only `yaml` annotation. `sigs.k8s.io/yaml` requires `json` tags.
type Enableable ¶
type Enableable struct {
Enabled bool `json:"enabled" jsonschema:"required"`
}
type Enterprise ¶
type ExternalConfig ¶
type ExternalConfig struct { Addresses []string `json:"addresses"` Annotations map[string]string `json:"annotations"` Domain *string `json:"domain"` Enabled bool `json:"enabled" jsonschema:"required"` Type corev1.ServiceType `json:"type" jsonschema:"pattern=^(LoadBalancer|NodePort)$"` PrefixTemplate string `json:"prefixTemplate"` SourceRanges []string `json:"sourceRanges"` Service Enableable `json:"service"` ExternalDNS *Enableable `json:"externalDns"` }
type ExternalListeners ¶
func (ExternalListeners[T]) JSONSchemaExtend ¶
func (ExternalListeners[T]) JSONSchemaExtend(schema *jsonschema.Schema)
type ExternalTLS ¶
type ExternalTLS struct { // Enabled, when `false`, indicates that this struct should treated as if // it was not specified. If `nil`, defaults to [InternalTLS.Enabled]. // Prefer to use `IsEnabled` rather than checking this field directly. Enabled *bool `json:"enabled"` Cert *string `json:"cert"` RequireClientAuth *bool `json:"requireClientAuth"` TrustStore *TrustStore `json:"trustStore"` }
ExternalTLS is the TLS configuration associated with a given "external" listener. The schema is more loose than InternalTLS. All fields have default values but are interpreted differently depending on their context (IE kafka vs schemaRegistry) tread lightly.
func (*ExternalTLS) GetCert ¶
func (t *ExternalTLS) GetCert(i *InternalTLS, tls *TLS) *TLSCert
func (*ExternalTLS) GetCertName ¶
func (t *ExternalTLS) GetCertName(i *InternalTLS) string
func (*ExternalTLS) IsEnabled ¶
func (t *ExternalTLS) IsEnabled(i *InternalTLS, tls *TLS) bool
IsEnabled reports the value of [ExternalTLS.Enabled], falling back to InternalTLS.IsEnabled if not specified.
func (*ExternalTLS) TrustStoreFilePath ¶
func (t *ExternalTLS) TrustStoreFilePath(i *InternalTLS, tls *TLS) string
type HTTPAuthenticationMethod ¶
type HTTPAuthenticationMethod string
func (HTTPAuthenticationMethod) JSONSchemaExtend ¶
func (HTTPAuthenticationMethod) JSONSchemaExtend(s *jsonschema.Schema)
type HTTPExternal ¶
type HTTPExternal struct { // Enabled indicates if this listener is enabled. If not specified, // defaults to the value of [ExternalConfig.Enabled]. Enabled *bool `json:"enabled"` AdvertisedPorts []int32 `json:"advertisedPorts" jsonschema:"minItems=1"` Port int32 `json:"port" jsonschema:"required"` NodePort *int32 `json:"nodePort"` AuthenticationMethod *HTTPAuthenticationMethod `json:"authenticationMethod"` PrefixTemplate *string `json:"prefixTemplate"` TLS *ExternalTLS `json:"tls" jsonschema:"required"` }
func (*HTTPExternal) IsEnabled ¶
func (l *HTTPExternal) IsEnabled() bool
func (HTTPExternal) JSONSchemaExtend ¶
func (HTTPExternal) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type HTTPListeners ¶
type HTTPListeners struct { Enabled bool `json:"enabled" jsonschema:"required"` External ExternalListeners[HTTPExternal] `json:"external"` AuthenticationMethod *HTTPAuthenticationMethod `json:"authenticationMethod"` TLS InternalTLS `json:"tls" jsonschema:"required"` KafkaEndpoint string `json:"kafkaEndpoint" jsonschema:"required,pattern=^[A-Za-z_-][A-Za-z0-9_-]*$"` Port int32 `json:"port" jsonschema:"required"` }
func (HTTPListeners) JSONSchemaExtend ¶
func (HTTPListeners) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*HTTPListeners) Listeners ¶
func (l *HTTPListeners) Listeners(saslEnabled bool) []map[string]any
func (*HTTPListeners) ListenersTLS ¶
func (l *HTTPListeners) ListenersTLS(tls *TLS) []map[string]any
func (*HTTPListeners) TrustStores ¶
func (l *HTTPListeners) TrustStores(tls *TLS) []*TrustStore
TrustStores returns a slice of all configured and enabled [TrustStore]s on both internal and external listeners.
type Image ¶
type Image struct { Repository string `json:"repository" jsonschema:"required,default=docker.redpanda.com/redpandadata/redpanda"` Tag ImageTag `json:"tag" jsonschema:"default=Chart.appVersion"` PullPolicy string `` /* 127-byte string literal not displayed */ }
func (Image) JSONSchemaExtend ¶
func (Image) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type ImageTag ¶
type ImageTag string
func (ImageTag) JSONSchemaExtend ¶
func (ImageTag) JSONSchemaExtend(schema *jsonschema.Schema)
type InternalTLS ¶
type InternalTLS struct { Enabled *bool `json:"enabled"` Cert string `json:"cert" jsonschema:"required"` RequireClientAuth bool `json:"requireClientAuth" jsonschema:"required"` TrustStore *TrustStore `json:"trustStore"` }
InternalTLS is the TLS configuration for "internal" listeners. Internal listeners all have default values specified within values.yaml which allows us to be more strict about the schema here. TODO Unify this struct with ExternalTLS and/or remove the concept of internal and external listeners all together.
func (*InternalTLS) IsEnabled ¶
func (t *InternalTLS) IsEnabled(tls *TLS) bool
IsEnabled reports the value of [InternalTLS.Enabled], falling back to [TLS.Enabled] if not specified.
func (*InternalTLS) ServerCAPath ¶
func (t *InternalTLS) ServerCAPath(tls *TLS) string
ServerCAPath returns the path on disk to a certificate that may be used to verify a connection with this server.
func (*InternalTLS) TrustStoreFilePath ¶
func (t *InternalTLS) TrustStoreFilePath(tls *TLS) string
type IssuerRefKind ¶
type IssuerRefKind string
func (IssuerRefKind) JSONSchemaExtend ¶
func (IssuerRefKind) JSONSchemaExtend(schema *jsonschema.Schema)
type KafkaAuthenticationMethod ¶
type KafkaAuthenticationMethod string
func (KafkaAuthenticationMethod) JSONSchemaExtend ¶
func (KafkaAuthenticationMethod) JSONSchemaExtend(s *jsonschema.Schema)
type KafkaExternal ¶
type KafkaExternal struct { // Enabled indicates if this listener is enabled. If not specified, // defaults to the value of [ExternalConfig.Enabled]. Enabled *bool `json:"enabled"` AdvertisedPorts []int32 `json:"advertisedPorts" jsonschema:"minItems=1"` Port int32 `json:"port" jsonschema:"required"` // TODO CHECK NODE PORT USAGE NodePort *int32 `json:"nodePort"` AuthenticationMethod *KafkaAuthenticationMethod `json:"authenticationMethod"` PrefixTemplate *string `json:"prefixTemplate"` TLS *ExternalTLS `json:"tls"` }
func (*KafkaExternal) IsEnabled ¶
func (l *KafkaExternal) IsEnabled() bool
func (KafkaExternal) JSONSchemaExtend ¶
func (KafkaExternal) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type KafkaListeners ¶
type KafkaListeners struct { AuthenticationMethod *KafkaAuthenticationMethod `json:"authenticationMethod"` External ExternalListeners[KafkaExternal] `json:"external"` TLS InternalTLS `json:"tls" jsonschema:"required"` Port int32 `json:"port" jsonschema:"required"` }
func (*KafkaListeners) ConnectorsTLS ¶
func (k *KafkaListeners) ConnectorsTLS(tls *TLS, fullName string) connectors.TLS
func (*KafkaListeners) ConsoleTLS ¶
func (k *KafkaListeners) ConsoleTLS(tls *TLS) ConsoleTLS
func (KafkaListeners) JSONSchemaExtend ¶
func (KafkaListeners) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*KafkaListeners) Listeners ¶
func (l *KafkaListeners) Listeners(auth *Auth) []map[string]any
Listeners returns a slice of maps suitable for use as the value of `kafka_api` in a redpanda.yml file.
func (*KafkaListeners) ListenersTLS ¶
func (l *KafkaListeners) ListenersTLS(tls *TLS) []map[string]any
ListenersTLS returns a slice of maps suitable for use as the value of `kafka_api_tls` in a redpanda.yml file.
func (*KafkaListeners) TrustStores ¶
func (l *KafkaListeners) TrustStores(tls *TLS) []*TrustStore
TrustStores returns a slice of all configured and enabled [TrustStore]s on both internal and external listeners.
type LicenseSecretRef ¶
type Listeners ¶
type Listeners struct { Admin AdminListeners `json:"admin" jsonschema:"required"` HTTP HTTPListeners `json:"http" jsonschema:"required"` Kafka KafkaListeners `json:"kafka" jsonschema:"required"` SchemaRegistry SchemaRegistryListeners `json:"schemaRegistry" jsonschema:"required"` RPC struct { Port int32 `json:"port" jsonschema:"required"` TLS InternalTLS `json:"tls" jsonschema:"required"` } `json:"rpc" jsonschema:"required"` }
func (*Listeners) CreateSeedServers ¶
func (*Listeners) SchemaRegistryList ¶
func (*Listeners) TrustStoreVolume ¶
TrustStoreVolume returns a corev1.Volume containing a projected volume that mounts all required truststore files. If no truststores are configured, it returns nil.
func (*Listeners) TrustStores ¶
func (l *Listeners) TrustStores(tls *TLS) []*TrustStore
TrustStores returns an aggregate slice of all "active" [TrustStore]s across all listeners.
type Logging ¶
type MebiBytes ¶
type MebiBytes = int64
func ContainerMemory ¶
Returns either the min or max container memory values as an integer value of MembiBytes
type Monitoring ¶
type Monitoring struct { Enabled bool `json:"enabled" jsonschema:"required"` ScrapeInterval monitoringv1.Duration `json:"scrapeInterval" jsonschema:"required"` Labels map[string]string `json:"labels"` TLSConfig *monitoringv1.TLSConfig `json:"tlsConfig"` EnableHttp2 *bool `json:"enableHttp2"` }
type NodeConfig ¶
func (*NodeConfig) Translate ¶
func (c *NodeConfig) Translate() map[string]any
type PandaProxyClient ¶
type PandaProxyClient struct { Retries int `json:"retries"` RetryBaseBackoffMS int `json:"retry_base_backoff_ms"` ProduceBatchRecordCount int `json:"produce_batch_record_count"` ProduceBatchSizeBytes int `json:"produce_batch_size_bytes"` ProduceBatchDelayMS int `json:"produce_batch_delay_ms"` ConsumerRequestTimeoutMS int `json:"consumer_request_timeout_ms"` ConsumerRequestMaxBytes int `json:"consumer_request_max_bytes"` ConsumerSessionTimeoutMS int `json:"consumer_session_timeout_ms"` ConsumerRebalanceTimeoutMS int `json:"consumer_rebalance_timeout_ms"` ConsumerHeartbeatIntervalMS int `json:"consumer_heartbeat_interval_ms"` }
type PartialAdminExternal ¶
type PartialAdminExternal struct { Enabled *bool "json:\"enabled,omitempty\"" AdvertisedPorts []int32 "json:\"advertisedPorts,omitempty\" jsonschema:\"minItems=1\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" NodePort *int32 "json:\"nodePort,omitempty\"" TLS *PartialExternalTLS "json:\"tls,omitempty\"" }
type PartialAdminListeners ¶
type PartialAdminListeners struct { External PartialExternalListeners[PartialAdminExternal] "json:\"external,omitempty\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" AppProtocol *string "json:\"appProtocol,omitempty\"" TLS *PartialInternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" }
type PartialAuditLogging ¶
type PartialAuditLogging struct { Enabled *bool "json:\"enabled,omitempty\"" Listener *string "json:\"listener,omitempty\"" Partitions *int "json:\"partitions,omitempty\"" EnabledEventTypes []string "json:\"enabledEventTypes,omitempty\"" ExcludedTopics []string "json:\"excludedTopics,omitempty\"" ExcludedPrincipals []string "json:\"excludedPrincipals,omitempty\"" ClientMaxBufferSize *int "json:\"clientMaxBufferSize,omitempty\"" QueueDrainIntervalMS *int "json:\"queueDrainIntervalMs,omitempty\"" QueueMaxBufferSizeperShard *int "json:\"queueMaxBufferSizePerShard,omitempty\"" ReplicationFactor *int "json:\"replicationFactor,omitempty\"" }
type PartialAuth ¶
type PartialAuth struct {
SASL *PartialSASLAuth "json:\"sasl,omitempty\" jsonschema:\"required\""
}
type PartialBootstrapUser ¶
type PartialBootstrapUser struct { Name *string "json:\"name,omitempty\"" SecretKeyRef *corev1.SecretKeySelector "json:\"secretKeyRef,omitempty\"" Password *string "json:\"password,omitempty\"" Mechanism *string "json:\"mechanism,omitempty\" jsonschema:\"pattern=^(SCRAM-SHA-512|SCRAM-SHA-256)$\"" }
type PartialClusterConfig ¶
type PartialConfig ¶
type PartialConfig struct { Cluster PartialClusterConfig "json:\"cluster,omitempty\" jsonschema:\"required\"" Node PartialNodeConfig "json:\"node,omitempty\" jsonschema:\"required\"" RPK map[string]any "json:\"rpk,omitempty\"" SchemaRegistryClient *PartialSchemaRegistryClient "json:\"schema_registry_client,omitempty\"" PandaProxyClient *PartialPandaProxyClient "json:\"pandaproxy_client,omitempty\"" Tunable PartialTunableConfig "json:\"tunable,omitempty\" jsonschema:\"required\"" }
type PartialEnableable ¶
type PartialEnableable struct {
Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\""
}
type PartialEnterprise ¶
type PartialExternalConfig ¶
type PartialExternalConfig struct { Addresses []string "json:\"addresses,omitempty\"" Annotations map[string]string "json:\"annotations,omitempty\"" Domain *string "json:\"domain,omitempty\"" Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" Type *corev1.ServiceType "json:\"type,omitempty\" jsonschema:\"pattern=^(LoadBalancer|NodePort)$\"" PrefixTemplate *string "json:\"prefixTemplate,omitempty\"" SourceRanges []string "json:\"sourceRanges,omitempty\"" Service *PartialEnableable "json:\"service,omitempty\"" ExternalDNS *PartialEnableable "json:\"externalDns,omitempty\"" }
type PartialExternalTLS ¶
type PartialExternalTLS struct { Enabled *bool "json:\"enabled,omitempty\"" Cert *string "json:\"cert,omitempty\"" RequireClientAuth *bool "json:\"requireClientAuth,omitempty\"" TrustStore *PartialTrustStore "json:\"trustStore,omitempty\"" }
type PartialHTTPExternal ¶
type PartialHTTPExternal struct { Enabled *bool "json:\"enabled,omitempty\"" AdvertisedPorts []int32 "json:\"advertisedPorts,omitempty\" jsonschema:\"minItems=1\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" NodePort *int32 "json:\"nodePort,omitempty\"" AuthenticationMethod *HTTPAuthenticationMethod "json:\"authenticationMethod,omitempty\"" PrefixTemplate *string "json:\"prefixTemplate,omitempty\"" TLS *PartialExternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" }
type PartialHTTPListeners ¶
type PartialHTTPListeners struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" External PartialExternalListeners[PartialHTTPExternal] "json:\"external,omitempty\"" AuthenticationMethod *HTTPAuthenticationMethod "json:\"authenticationMethod,omitempty\"" TLS *PartialInternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" KafkaEndpoint *string "json:\"kafkaEndpoint,omitempty\" jsonschema:\"required,pattern=^[A-Za-z_-][A-Za-z0-9_-]*$\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" }
type PartialImage ¶
type PartialInternalTLS ¶
type PartialInternalTLS struct { Enabled *bool "json:\"enabled,omitempty\"" Cert *string "json:\"cert,omitempty\" jsonschema:\"required\"" RequireClientAuth *bool "json:\"requireClientAuth,omitempty\" jsonschema:\"required\"" TrustStore *PartialTrustStore "json:\"trustStore,omitempty\"" }
type PartialKafkaExternal ¶
type PartialKafkaExternal struct { Enabled *bool "json:\"enabled,omitempty\"" AdvertisedPorts []int32 "json:\"advertisedPorts,omitempty\" jsonschema:\"minItems=1\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" NodePort *int32 "json:\"nodePort,omitempty\"" AuthenticationMethod *KafkaAuthenticationMethod "json:\"authenticationMethod,omitempty\"" PrefixTemplate *string "json:\"prefixTemplate,omitempty\"" TLS *PartialExternalTLS "json:\"tls,omitempty\"" }
type PartialKafkaListeners ¶
type PartialKafkaListeners struct { AuthenticationMethod *KafkaAuthenticationMethod "json:\"authenticationMethod,omitempty\"" External PartialExternalListeners[PartialKafkaExternal] "json:\"external,omitempty\"" TLS *PartialInternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" }
type PartialLicenseSecretRef ¶
type PartialListeners ¶
type PartialListeners struct { Admin *PartialAdminListeners "json:\"admin,omitempty\" jsonschema:\"required\"" HTTP *PartialHTTPListeners "json:\"http,omitempty\" jsonschema:\"required\"" Kafka *PartialKafkaListeners "json:\"kafka,omitempty\" jsonschema:\"required\"" SchemaRegistry *PartialSchemaRegistryListeners "json:\"schemaRegistry,omitempty\" jsonschema:\"required\"" RPC *struct { Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" TLS *PartialInternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" } "json:\"rpc,omitempty\" jsonschema:\"required\"" }
type PartialLogging ¶
type PartialLogging struct { LogLevel *string "json:\"logLevel,omitempty\" jsonschema:\"required,pattern=^(error|warn|info|debug|trace)$\"" UseageStats *struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" ClusterID *string "json:\"clusterId,omitempty\"" } "json:\"usageStats,omitempty\" jsonschema:\"required\"" }
type PartialMonitoring ¶
type PartialMonitoring struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" ScrapeInterval *monitoringv1.Duration "json:\"scrapeInterval,omitempty\" jsonschema:\"required\"" Labels map[string]string "json:\"labels,omitempty\"" TLSConfig *monitoringv1.TLSConfig "json:\"tlsConfig,omitempty\"" EnableHttp2 *bool "json:\"enableHttp2,omitempty\"" }
type PartialNodeConfig ¶
type PartialPandaProxyClient ¶
type PartialPandaProxyClient struct { Retries *int "json:\"retries,omitempty\"" RetryBaseBackoffMS *int "json:\"retry_base_backoff_ms,omitempty\"" ProduceBatchRecordCount *int "json:\"produce_batch_record_count,omitempty\"" ProduceBatchSizeBytes *int "json:\"produce_batch_size_bytes,omitempty\"" ProduceBatchDelayMS *int "json:\"produce_batch_delay_ms,omitempty\"" ConsumerRequestTimeoutMS *int "json:\"consumer_request_timeout_ms,omitempty\"" ConsumerRequestMaxBytes *int "json:\"consumer_request_max_bytes,omitempty\"" ConsumerSessionTimeoutMS *int "json:\"consumer_session_timeout_ms,omitempty\"" ConsumerRebalanceTimeoutMS *int "json:\"consumer_rebalance_timeout_ms,omitempty\"" ConsumerHeartbeatIntervalMS *int "json:\"consumer_heartbeat_interval_ms,omitempty\"" }
type PartialPodTemplate ¶
type PartialPodTemplate struct { Labels map[string]string "json:\"labels,omitempty\" jsonschema:\"required\"" Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"required\"" Spec *applycorev1.PodSpecApplyConfiguration "json:\"spec,omitempty\"" }
type PartialPostInstallJob ¶
type PartialPostInstallJob struct { Resources *corev1.ResourceRequirements "json:\"resources,omitempty\"" Affinity *corev1.Affinity "json:\"affinity,omitempty\"" Enabled *bool "json:\"enabled,omitempty\"" Labels map[string]string "json:\"labels,omitempty\"" Annotations map[string]string "json:\"annotations,omitempty\"" SecurityContext *corev1.SecurityContext "json:\"securityContext,omitempty\"" PodTemplate *PartialPodTemplate "json:\"podTemplate,omitempty\"" }
type PartialRBAC ¶
type PartialRackAwareness ¶
type PartialRedpandaResources ¶
type PartialRedpandaResources struct { CPU *struct { Cores *resource.Quantity "json:\"cores,omitempty\" jsonschema:\"required\"" Overprovisioned *bool "json:\"overprovisioned,omitempty\"" } "json:\"cpu,omitempty\" jsonschema:\"required\"" Memory *struct { EnableMemoryLocking *bool "json:\"enable_memory_locking,omitempty\"" Container *struct { Min *resource.Quantity "json:\"min,omitempty\"" Max *resource.Quantity "json:\"max,omitempty\" jsonschema:\"required\"" } "json:\"container,omitempty\" jsonschema:\"required\"" Redpanda *struct { Memory *resource.Quantity "json:\"memory,omitempty\"" ReserveMemory *resource.Quantity "json:\"reserveMemory,omitempty\"" } "json:\"redpanda,omitempty\"" } "json:\"memory,omitempty\" jsonschema:\"required\"" }
type PartialSASLAuth ¶
type PartialSASLAuth struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" Mechanism *string "json:\"mechanism,omitempty\"" SecretRef *string "json:\"secretRef,omitempty\"" Users []PartialSASLUser "json:\"users,omitempty\"" BootstrapUser *PartialBootstrapUser "json:\"bootstrapUser,omitempty\"" }
type PartialSASLUser ¶
type PartialSchemaRegistryClient ¶
type PartialSchemaRegistryClient struct { Retries *int "json:\"retries,omitempty\"" RetryBaseBackoffMS *int "json:\"retry_base_backoff_ms,omitempty\"" ProduceBatchRecordCount *int "json:\"produce_batch_record_count,omitempty\"" ProduceBatchSizeBytes *int "json:\"produce_batch_size_bytes,omitempty\"" ProduceBatchDelayMS *int "json:\"produce_batch_delay_ms,omitempty\"" ConsumerRequestTimeoutMS *int "json:\"consumer_request_timeout_ms,omitempty\"" ConsumerRequestMaxBytes *int "json:\"consumer_request_max_bytes,omitempty\"" ConsumerSessionTimeoutMS *int "json:\"consumer_session_timeout_ms,omitempty\"" ConsumerRebalanceTimeoutMS *int "json:\"consumer_rebalance_timeout_ms,omitempty\"" ConsumerHeartbeatIntervalMS *int "json:\"consumer_heartbeat_interval_ms,omitempty\"" }
type PartialSchemaRegistryExternal ¶
type PartialSchemaRegistryExternal struct { Enabled *bool "json:\"enabled,omitempty\"" AdvertisedPorts []int32 "json:\"advertisedPorts,omitempty\" jsonschema:\"minItems=1\"" Port *int32 "json:\"port,omitempty\"" NodePort *int32 "json:\"nodePort,omitempty\"" AuthenticationMethod *HTTPAuthenticationMethod "json:\"authenticationMethod,omitempty\"" TLS *PartialExternalTLS "json:\"tls,omitempty\"" }
type PartialSchemaRegistryListeners ¶
type PartialSchemaRegistryListeners struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" External PartialExternalListeners[PartialSchemaRegistryExternal] "json:\"external,omitempty\"" AuthenticationMethod *HTTPAuthenticationMethod "json:\"authenticationMethod,omitempty\"" KafkaEndpoint *string "json:\"kafkaEndpoint,omitempty\" jsonschema:\"required,pattern=^[A-Za-z_-][A-Za-z0-9_-]*$\"" Port *int32 "json:\"port,omitempty\" jsonschema:\"required\"" TLS *PartialInternalTLS "json:\"tls,omitempty\" jsonschema:\"required\"" }
type PartialSecretRef ¶
type PartialSecurityContext ¶
type PartialSecurityContext struct { RunAsUser *int64 "json:\"runAsUser,omitempty\"" RunAsGroup *int64 "json:\"runAsGroup,omitempty\"" AllowPrivilegeEscalation *bool "json:\"allowPrivilegeEscalation,omitempty\"" AllowPriviledgeEscalation *bool "json:\"allowPriviledgeEscalation,omitempty\"" RunAsNonRoot *bool "json:\"runAsNonRoot,omitempty\"" FSGroup *int64 "json:\"fsGroup,omitempty\"" FSGroupChangePolicy *corev1.PodFSGroupChangePolicy "json:\"fsGroupChangePolicy,omitempty\"" }
type PartialService ¶
type PartialServiceAccountCfg ¶
type PartialServiceAccountCfg struct { Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"required\"" AutomountServiceAccountToken *bool "json:\"automountServiceAccountToken,omitempty\"" Create *bool "json:\"create,omitempty\" jsonschema:\"required\"" Name *string "json:\"name,omitempty\" jsonschema:\"required\"" }
type PartialStatefulset ¶
type PartialStatefulset struct { AdditionalSelectorLabels map[string]string "json:\"additionalSelectorLabels,omitempty\" jsonschema:\"required\"" NodeAffinity map[string]any "json:\"nodeAffinity,omitempty\"" Replicas *int32 "json:\"replicas,omitempty\" jsonschema:\"required\"" UpdateStrategy *struct { Type *string "json:\"type,omitempty\" jsonschema:\"required,pattern=^(RollingUpdate|OnDelete)$\"" } "json:\"updateStrategy,omitempty\" jsonschema:\"required\"" AdditionalRedpandaCmdFlags []string "json:\"additionalRedpandaCmdFlags,omitempty\"" Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"deprecated\"" PodTemplate *PartialPodTemplate "json:\"podTemplate,omitempty\" jsonschema:\"required\"" Budget *struct { MaxUnavailable *int32 "json:\"maxUnavailable,omitempty\" jsonschema:\"required\"" } "json:\"budget,omitempty\" jsonschema:\"required\"" StartupProbe *struct { InitialDelaySeconds *int32 "json:\"initialDelaySeconds,omitempty\" jsonschema:\"required\"" FailureThreshold *int32 "json:\"failureThreshold,omitempty\" jsonschema:\"required\"" PeriodSeconds *int32 "json:\"periodSeconds,omitempty\" jsonschema:\"required\"" } "json:\"startupProbe,omitempty\" jsonschema:\"required\"" LivenessProbe *struct { InitialDelaySeconds *int32 "json:\"initialDelaySeconds,omitempty\" jsonschema:\"required\"" FailureThreshold *int32 "json:\"failureThreshold,omitempty\" jsonschema:\"required\"" PeriodSeconds *int32 "json:\"periodSeconds,omitempty\" jsonschema:\"required\"" } "json:\"livenessProbe,omitempty\" jsonschema:\"required\"" ReadinessProbe *struct { InitialDelaySeconds *int32 "json:\"initialDelaySeconds,omitempty\" jsonschema:\"required\"" FailureThreshold *int32 "json:\"failureThreshold,omitempty\" jsonschema:\"required\"" PeriodSeconds *int32 "json:\"periodSeconds,omitempty\" jsonschema:\"required\"" SuccessThreshold *int32 "json:\"successThreshold,omitempty\"" TimeoutSeconds *int32 "json:\"timeoutSeconds,omitempty\"" } "json:\"readinessProbe,omitempty\" jsonschema:\"required\"" PodAffinity map[string]any "json:\"podAffinity,omitempty\" jsonschema:\"required\"" PodAntiAffinity *struct { TopologyKey *string "json:\"topologyKey,omitempty\" jsonschema:\"required\"" Type *string "json:\"type,omitempty\" jsonschema:\"required,pattern=^(hard|soft|custom)$\"" Weight *int32 "json:\"weight,omitempty\" jsonschema:\"required\"" Custom map[string]any "json:\"custom,omitempty\"" } "json:\"podAntiAffinity,omitempty\" jsonschema:\"required\"" NodeSelector map[string]string "json:\"nodeSelector,omitempty\" jsonschema:\"required\"" PriorityClassName *string "json:\"priorityClassName,omitempty\" jsonschema:\"required\"" TerminationGracePeriodSeconds *int64 "json:\"terminationGracePeriodSeconds,omitempty\"" TopologySpreadConstraints []struct { MaxSkew *int32 "json:\"maxSkew,omitempty\"" TopologyKey *string "json:\"topologyKey,omitempty\"" WhenUnsatisfiable *corev1.UnsatisfiableConstraintAction "json:\"whenUnsatisfiable,omitempty\" jsonschema:\"pattern=^(ScheduleAnyway|DoNotSchedule)$\"" } "json:\"topologySpreadConstraints,omitempty\" jsonschema:\"required,minItems=1\"" Tolerations []corev1.Toleration "json:\"tolerations,omitempty\" jsonschema:\"required\"" PodSecurityContext *PartialSecurityContext "json:\"podSecurityContext,omitempty\"" SecurityContext *PartialSecurityContext "json:\"securityContext,omitempty\" jsonschema:\"required\"" SideCars *struct { ConfigWatcher *struct { Enabled *bool "json:\"enabled,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" Resources map[string]any "json:\"resources,omitempty\"" SecurityContext *corev1.SecurityContext "json:\"securityContext,omitempty\"" } "json:\"configWatcher,omitempty\"" Controllers *struct { Image *struct { Tag *ImageTag "json:\"tag,omitempty\" jsonschema:\"required,default=Chart.appVersion\"" Repository *string "json:\"repository,omitempty\" jsonschema:\"required,default=docker.redpanda.com/redpandadata/redpanda-operator\"" } "json:\"image,omitempty\"" Enabled *bool "json:\"enabled,omitempty\"" CreateRBAC *bool "json:\"createRBAC,omitempty\"" Resources any "json:\"resources,omitempty\"" SecurityContext *corev1.SecurityContext "json:\"securityContext,omitempty\"" HealthProbeAddress *string "json:\"healthProbeAddress,omitempty\"" MetricsAddress *string "json:\"metricsAddress,omitempty\"" PprofAddress *string "json:\"pprofAddress,omitempty\"" Run []string "json:\"run,omitempty\"" } "json:\"controllers,omitempty\"" } "json:\"sideCars,omitempty\" jsonschema:\"required\"" ExtraVolumes *string "json:\"extraVolumes,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" InitContainers *struct { Configurator *struct { ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" Resources map[string]any "json:\"resources,omitempty\"" } "json:\"configurator,omitempty\"" FSValidator *struct { Enabled *bool "json:\"enabled,omitempty\"" Resources map[string]any "json:\"resources,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" ExpectedFS *string "json:\"expectedFS,omitempty\"" } "json:\"fsValidator,omitempty\"" SetDataDirOwnership *struct { Enabled *bool "json:\"enabled,omitempty\"" Resources map[string]any "json:\"resources,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" } "json:\"setDataDirOwnership,omitempty\"" SetTieredStorageCacheDirOwnership *struct { Resources map[string]any "json:\"resources,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" } "json:\"setTieredStorageCacheDirOwnership,omitempty\"" Tuning *struct { Resources map[string]any "json:\"resources,omitempty\"" ExtraVolumeMounts *string "json:\"extraVolumeMounts,omitempty\"" } "json:\"tuning,omitempty\"" ExtraInitContainers *string "json:\"extraInitContainers,omitempty\"" } "json:\"initContainers,omitempty\"" InitContainerImage *struct { Repository *string "json:\"repository,omitempty\"" Tag *string "json:\"tag,omitempty\"" } "json:\"initContainerImage,omitempty\"" }
type PartialStorage ¶
type PartialStorage struct { HostPath *string "json:\"hostPath,omitempty\" jsonschema:\"required\"" Tiered *PartialTiered "json:\"tiered,omitempty\" jsonschema:\"required\"" PersistentVolume *struct { Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"required\"" Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" Labels map[string]string "json:\"labels,omitempty\" jsonschema:\"required\"" Size *resource.Quantity "json:\"size,omitempty\" jsonschema:\"required\"" StorageClass *string "json:\"storageClass,omitempty\" jsonschema:\"required\"" NameOverwrite *string "json:\"nameOverwrite,omitempty\"" } "json:\"persistentVolume,omitempty\" jsonschema:\"required,deprecated\"" TieredConfig PartialTieredStorageConfig "json:\"tieredConfig,omitempty\" jsonschema:\"deprecated\"" TieredStorageHostPath *string "json:\"tieredStorageHostPath,omitempty\" jsonschema:\"deprecated\"" TieredStoragePersistentVolume *struct { Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"required\"" Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" Labels map[string]string "json:\"labels,omitempty\" jsonschema:\"required\"" StorageClass *string "json:\"storageClass,omitempty\" jsonschema:\"required\"" } "json:\"tieredStoragePersistentVolume,omitempty\" jsonschema:\"deprecated\"" }
type PartialTLS ¶
type PartialTLS struct { Enabled *bool "json:\"enabled,omitempty\" jsonschema:\"required\"" Certs PartialTLSCertMap "json:\"certs,omitempty\" jsonschema:\"required\"" }
type PartialTLSCert ¶
type PartialTLSCert struct { Enabled *bool "json:\"enabled,omitempty\"" CAEnabled *bool "json:\"caEnabled,omitempty\" jsonschema:\"required\"" ApplyInternalDNSNames *bool "json:\"applyInternalDNSNames,omitempty\"" Duration *string "json:\"duration,omitempty\" jsonschema:\"pattern=.*[smh]$\"" IssuerRef *cmmeta.ObjectReference "json:\"issuerRef,omitempty\"" SecretRef *corev1.LocalObjectReference "json:\"secretRef,omitempty\"" ClientSecretRef *corev1.LocalObjectReference "json:\"clientSecretRef,omitempty\"" }
type PartialTLSCertMap ¶
type PartialTLSCertMap map[string]PartialTLSCert
type PartialTiered ¶
type PartialTiered struct { CredentialsSecretRef *PartialTieredStorageCredentials "json:\"credentialsSecretRef,omitempty\"" Config PartialTieredStorageConfig "json:\"config,omitempty\"" HostPath *string "json:\"hostPath,omitempty\"" MountType *string "json:\"mountType,omitempty\" jsonschema:\"required,pattern=^(none|hostPath|emptyDir|persistentVolume)$\"" PersistentVolume *struct { Annotations map[string]string "json:\"annotations,omitempty\" jsonschema:\"required\"" Enabled *bool "json:\"enabled,omitempty\"" Labels map[string]string "json:\"labels,omitempty\" jsonschema:\"required\"" NameOverwrite *string "json:\"nameOverwrite,omitempty\"" Size *string "json:\"size,omitempty\"" StorageClass *string "json:\"storageClass,omitempty\" jsonschema:\"required\"" } "json:\"persistentVolume,omitempty\"" }
type PartialTieredStorageCredentials ¶
type PartialTieredStorageCredentials struct { AccessKey *PartialSecretRef "json:\"accessKey,omitempty\"" SecretKey *PartialSecretRef "json:\"secretKey,omitempty\"" }
type PartialTrustStore ¶
type PartialTrustStore struct { ConfigMapKeyRef *corev1.ConfigMapKeySelector "json:\"configMapKeyRef,omitempty\"" SecretKeyRef *corev1.SecretKeySelector "json:\"secretKeyRef,omitempty\"" }
type PartialTunableConfig ¶
type PartialTuning ¶
type PartialTuning struct { TuneAIOEvents *bool "json:\"tune_aio_events,omitempty\"" TuneClocksource *bool "json:\"tune_clocksource,omitempty\"" TuneBallastFile *bool "json:\"tune_ballast_file,omitempty\"" BallastFilePath *string "json:\"ballast_file_path,omitempty\"" BallastFileSize *string "json:\"ballast_file_size,omitempty\"" WellKnownIO *string "json:\"well_known_io,omitempty\"" }
type PartialValues ¶
type PartialValues struct { NameOverride *string "json:\"nameOverride,omitempty\"" FullnameOverride *string "json:\"fullnameOverride,omitempty\"" ClusterDomain *string "json:\"clusterDomain,omitempty\"" CommonLabels map[string]string "json:\"commonLabels,omitempty\"" NodeSelector map[string]string "json:\"nodeSelector,omitempty\"" Affinity *corev1.Affinity "json:\"affinity,omitempty\" jsonschema:\"required\"" Tolerations []corev1.Toleration "json:\"tolerations,omitempty\"" Image *PartialImage "" /* 126-byte string literal not displayed */ Service *PartialService "json:\"service,omitempty\"" ImagePullSecrets []corev1.LocalObjectReference "json:\"imagePullSecrets,omitempty\"" LicenseKey *string "" /* 199-byte string literal not displayed */ LicenseSecretRef *PartialLicenseSecretRef "json:\"license_secret_ref,omitempty\" jsonschema:\"deprecated\"" AuditLogging *PartialAuditLogging "json:\"auditLogging,omitempty\"" Enterprise *PartialEnterprise "json:\"enterprise,omitempty\"" RackAwareness *PartialRackAwareness "json:\"rackAwareness,omitempty\"" Console *console.PartialValues "json:\"console,omitempty\"" Connectors *connectors.PartialValues "json:\"connectors,omitempty\"" Auth *PartialAuth "json:\"auth,omitempty\"" TLS *PartialTLS "json:\"tls,omitempty\"" External *PartialExternalConfig "json:\"external,omitempty\"" Logging *PartialLogging "json:\"logging,omitempty\"" Monitoring *PartialMonitoring "json:\"monitoring,omitempty\"" Resources *PartialRedpandaResources "json:\"resources,omitempty\"" Storage *PartialStorage "json:\"storage,omitempty\"" PostInstallJob *PartialPostInstallJob "json:\"post_install_job,omitempty\"" Statefulset *PartialStatefulset "json:\"statefulset,omitempty\"" ServiceAccount *PartialServiceAccountCfg "json:\"serviceAccount,omitempty\"" RBAC *PartialRBAC "json:\"rbac,omitempty\"" Tuning *PartialTuning "json:\"tuning,omitempty\"" Listeners *PartialListeners "json:\"listeners,omitempty\"" Config *PartialConfig "json:\"config,omitempty\"" Tests *struct { Enabled *bool "json:\"enabled,omitempty\"" } "json:\"tests,omitempty\"" Force *bool "json:\"force,omitempty\"" }
type PodTemplate ¶
type PodTemplate struct { Labels map[string]string `json:"labels,omitempty" jsonschema:"required"` Annotations map[string]string `json:"annotations,omitempty" jsonschema:"required"` Spec *applycorev1.PodSpecApplyConfiguration `json:"spec,omitempty"` }
type PostInstallJob ¶
type PostInstallJob struct { Resources *corev1.ResourceRequirements `json:"resources"` Affinity corev1.Affinity `json:"affinity"` Enabled bool `json:"enabled"` Labels map[string]string `json:"labels"` Annotations map[string]string `json:"annotations"` // Deprecated. Prefer [PodTemplate.Spec.SecurityContext]. SecurityContext *corev1.SecurityContext `json:"securityContext"` PodTemplate PodTemplate `json:"podTemplate"` }
type RackAwareness ¶
type RedpandaResources ¶
type RedpandaResources struct { CPU struct { Cores resource.Quantity `json:"cores" jsonschema:"required"` Overprovisioned *bool `json:"overprovisioned"` } `json:"cpu" jsonschema:"required"` // Memory resources // For details, // see the [Pod resources documentation](https://docs.redpanda.com/docs/manage/kubernetes/manage-resources/#configure-memory-resources). Memory struct { // Enables memory locking. // For production, set to `true`. EnableMemoryLocking *bool `json:"enable_memory_locking"` // It is recommended to have at least 2Gi of memory per core for the Redpanda binary. // This memory is taken from the total memory given to each container. // The Helm chart allocates 80% of the container's memory to Redpanda, leaving the rest for // the Seastar subsystem (reserveMemory) and other container processes. // So at least 2.5Gi per core is recommended in order to ensure Redpanda has a full 2Gi. // // These values affect `--memory` and `--reserve-memory` flags passed to Redpanda and the memory // requests/limits in the StatefulSet. // Valid suffixes: k, M, G, T, P, E, Ki, Mi, Gi, Ti, Pi, Ei // Suffixes are defined as International System of units (http://physics.nist.gov/cuu/Units/binary.html). // To create `Guaranteed` Pod QoS for Redpanda brokers, provide both container max and min values for the container. // For details, see // https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/#create-a-pod-that-gets-assigned-a-qos-class-of-guaranteed // * Every container in the Pod must have a memory limit and a memory request. // * For every container in the Pod, the memory limit must equal the memory request. Container struct { // Minimum memory count for each Redpanda broker. // If omitted, the `min` value is equal to the `max` value (requested resources defaults to limits). // This setting is equivalent to `resources.requests.memory`. // For production, use 10Gi or greater. Min *resource.Quantity `json:"min"` // Maximum memory count for each Redpanda broker. // Equivalent to `resources.limits.memory`. // For production, use `10Gi` or greater. Max resource.Quantity `json:"max" jsonschema:"required"` } `json:"container" jsonschema:"required"` // This optional `redpanda` object allows you to specify the memory size for both the Redpanda // process and the underlying reserved memory used by Seastar. // This section is omitted by default, and memory sizes are calculated automatically // based on container memory. // Uncommenting this section and setting memory and reserveMemory values will disable // automatic calculation. // // If you are setting the following values manually, keep in mind the following guidelines. // Getting this wrong may lead to performance issues, instability, and loss of data: // The amount of memory to allocate to a container is determined by the sum of three values: // 1. Redpanda (at least 2Gi per core, ~80% of the container's total memory) // 2. Seastar subsystem (200Mi * 0.2% of the container's total memory, 200Mi < x < 1Gi) // 3. Other container processes (whatever small amount remains) Redpanda *struct { // Memory for the Redpanda process. // This must be lower than the container's memory (resources.memory.container.min if provided, otherwise // resources.memory.container.max). // Equivalent to --memory. // For production, use 8Gi or greater. Memory *resource.Quantity `json:"memory"` // Memory reserved for the Seastar subsystem. // Any value above 1Gi will provide diminishing performance benefits. // Equivalent to --reserve-memory. // For production, use 1Gi. ReserveMemory *resource.Quantity `json:"reserveMemory"` } `json:"redpanda"` } `json:"memory" jsonschema:"required"` }
func (*RedpandaResources) GetOverProvisionValue ¶
func (rr *RedpandaResources) GetOverProvisionValue() bool
type ResourceQuantity ¶
ResourceQuantity is an extension of resource.Quantity that implements JSONSchemaer. It's specifically for typing a key in TieredStorageConfig.
func (ResourceQuantity) JSONSchema ¶
func (ResourceQuantity) JSONSchema() *jsonschema.Schema
type SASLAuth ¶
type SASLAuth struct { Enabled bool `json:"enabled" jsonschema:"required"` Mechanism string `json:"mechanism"` SecretRef string `json:"secretRef"` Users []SASLUser `json:"users"` BootstrapUser BootstrapUser `json:"bootstrapUser"` }
type SchemaRegistryClient ¶
type SchemaRegistryClient struct { Retries int `json:"retries"` RetryBaseBackoffMS int `json:"retry_base_backoff_ms"` ProduceBatchRecordCount int `json:"produce_batch_record_count"` ProduceBatchSizeBytes int `json:"produce_batch_size_bytes"` ProduceBatchDelayMS int `json:"produce_batch_delay_ms"` ConsumerRequestTimeoutMS int `json:"consumer_request_timeout_ms"` ConsumerRequestMaxBytes int `json:"consumer_request_max_bytes"` ConsumerSessionTimeoutMS int `json:"consumer_session_timeout_ms"` ConsumerRebalanceTimeoutMS int `json:"consumer_rebalance_timeout_ms"` ConsumerHeartbeatIntervalMS int `json:"consumer_heartbeat_interval_ms"` }
type SchemaRegistryExternal ¶
type SchemaRegistryExternal struct { // Enabled indicates if this listener is enabled. If not specified, // defaults to the value of [ExternalConfig.Enabled]. Enabled *bool `json:"enabled"` AdvertisedPorts []int32 `json:"advertisedPorts" jsonschema:"minItems=1"` Port int32 `json:"port"` NodePort *int32 `json:"nodePort"` AuthenticationMethod *HTTPAuthenticationMethod `json:"authenticationMethod"` TLS *ExternalTLS `json:"tls"` }
func (*SchemaRegistryExternal) IsEnabled ¶
func (l *SchemaRegistryExternal) IsEnabled() bool
func (SchemaRegistryExternal) JSONSchemaExtend ¶
func (SchemaRegistryExternal) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type SchemaRegistryListeners ¶
type SchemaRegistryListeners struct { // Enabled indicates if this listener is enabled. If not specified, // defaults to the value of [ExternalConfig.Enabled]. Enabled bool `json:"enabled" jsonschema:"required"` External ExternalListeners[SchemaRegistryExternal] `json:"external"` AuthenticationMethod *HTTPAuthenticationMethod `json:"authenticationMethod"` KafkaEndpoint string `json:"kafkaEndpoint" jsonschema:"required,pattern=^[A-Za-z_-][A-Za-z0-9_-]*$"` Port int32 `json:"port" jsonschema:"required"` TLS InternalTLS `json:"tls" jsonschema:"required"` }
func (*SchemaRegistryListeners) ConsoleTLS ¶
func (sr *SchemaRegistryListeners) ConsoleTLS(tls *TLS) ConsoleTLS
func (SchemaRegistryListeners) JSONSchemaExtend ¶
func (SchemaRegistryListeners) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*SchemaRegistryListeners) Listeners ¶
func (sr *SchemaRegistryListeners) Listeners(saslEnabled bool) []map[string]any
func (*SchemaRegistryListeners) ListenersTLS ¶
func (l *SchemaRegistryListeners) ListenersTLS(tls *TLS) []map[string]any
func (*SchemaRegistryListeners) TrustStores ¶
func (l *SchemaRegistryListeners) TrustStores(tls *TLS) []*TrustStore
TrustStores returns a slice of all configured and enabled [TrustStore]s on both internal and external listeners.
type SecretRef ¶
type SecretRef struct { // ConfigurationKey is never read. ConfigurationKey string `json:"configurationKey"` Key string `json:"key"` Name string `json:"name"` }
func (*SecretRef) AsSource ¶
func (sr *SecretRef) AsSource() *corev1.EnvVarSource
type SecurityContext ¶
type SecurityContext struct { RunAsUser *int64 `json:"runAsUser"` RunAsGroup *int64 `json:"runAsGroup"` AllowPrivilegeEscalation *bool `json:"allowPrivilegeEscalation"` // AllowPriviledgeEscalation is typoed version of // [SecurityContext.AllowPrivilegeEscalation]. It's respected for backwards // compatibility. // Deprecated: Prefer AllowPrivilegeEscalation. AllowPriviledgeEscalation *bool `json:"allowPriviledgeEscalation"` RunAsNonRoot *bool `json:"runAsNonRoot"` FSGroup *int64 `json:"fsGroup"` FSGroupChangePolicy *corev1.PodFSGroupChangePolicy `json:"fsGroupChangePolicy"` }
SecurityContext is a legacy mishmash of corev1.PodSecurityContext and corev1.SecurityContext. It's type exists for backwards compat purposes only.
type ServiceAccountCfg ¶
type Statefulset ¶
type Statefulset struct { AdditionalSelectorLabels map[string]string `json:"additionalSelectorLabels" jsonschema:"required"` NodeAffinity map[string]any `json:"nodeAffinity"` Replicas int32 `json:"replicas" jsonschema:"required"` UpdateStrategy struct { Type string `json:"type" jsonschema:"required,pattern=^(RollingUpdate|OnDelete)$"` } `json:"updateStrategy" jsonschema:"required"` AdditionalRedpandaCmdFlags []string `json:"additionalRedpandaCmdFlags"` // Annotations are used only for `Statefulset.spec.template.metadata.annotations`. The StatefulSet does not have // any dedicated annotation. Annotations map[string]string `json:"annotations" jsonschema:"deprecated"` PodTemplate PodTemplate `json:"podTemplate" jsonschema:"required"` Budget struct { MaxUnavailable int32 `json:"maxUnavailable" jsonschema:"required"` } `json:"budget" jsonschema:"required"` StartupProbe struct { InitialDelaySeconds int32 `json:"initialDelaySeconds" jsonschema:"required"` FailureThreshold int32 `json:"failureThreshold" jsonschema:"required"` PeriodSeconds int32 `json:"periodSeconds" jsonschema:"required"` } `json:"startupProbe" jsonschema:"required"` LivenessProbe struct { InitialDelaySeconds int32 `json:"initialDelaySeconds" jsonschema:"required"` FailureThreshold int32 `json:"failureThreshold" jsonschema:"required"` PeriodSeconds int32 `json:"periodSeconds" jsonschema:"required"` } `json:"livenessProbe" jsonschema:"required"` ReadinessProbe struct { InitialDelaySeconds int32 `json:"initialDelaySeconds" jsonschema:"required"` FailureThreshold int32 `json:"failureThreshold" jsonschema:"required"` PeriodSeconds int32 `json:"periodSeconds" jsonschema:"required"` SuccessThreshold int32 `json:"successThreshold"` TimeoutSeconds int32 `json:"timeoutSeconds"` } `json:"readinessProbe" jsonschema:"required"` PodAffinity map[string]any `json:"podAffinity" jsonschema:"required"` PodAntiAffinity struct { TopologyKey string `json:"topologyKey" jsonschema:"required"` Type string `json:"type" jsonschema:"required,pattern=^(hard|soft|custom)$"` Weight int32 `json:"weight" jsonschema:"required"` Custom map[string]any `json:"custom"` } `json:"podAntiAffinity" jsonschema:"required"` NodeSelector map[string]string `json:"nodeSelector" jsonschema:"required"` PriorityClassName string `json:"priorityClassName" jsonschema:"required"` TerminationGracePeriodSeconds int64 `json:"terminationGracePeriodSeconds"` TopologySpreadConstraints []struct { MaxSkew int32 `json:"maxSkew"` TopologyKey string `json:"topologyKey"` WhenUnsatisfiable corev1.UnsatisfiableConstraintAction `json:"whenUnsatisfiable" jsonschema:"pattern=^(ScheduleAnyway|DoNotSchedule)$"` } `json:"topologySpreadConstraints" jsonschema:"required,minItems=1"` Tolerations []corev1.Toleration `json:"tolerations" jsonschema:"required"` // Deprecated. Prefer [PodTemplate.Spec.SecurityContext]. PodSecurityContext *SecurityContext `json:"podSecurityContext"` // Deprecated. Prefer [PodTemplate.Spec.Containers[*].SecurityContext]. SecurityContext SecurityContext `json:"securityContext" jsonschema:"required"` SideCars struct { ConfigWatcher struct { Enabled bool `json:"enabled"` ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml Resources map[string]any `json:"resources"` SecurityContext *corev1.SecurityContext `json:"securityContext"` } `json:"configWatcher"` Controllers struct { Image struct { Tag ImageTag `json:"tag" jsonschema:"required,default=Chart.appVersion"` Repository string `json:"repository" jsonschema:"required,default=docker.redpanda.com/redpandadata/redpanda-operator"` } `json:"image"` Enabled bool `json:"enabled"` CreateRBAC bool `json:"createRBAC"` Resources any `json:"resources"` SecurityContext *corev1.SecurityContext `json:"securityContext"` HealthProbeAddress string `json:"healthProbeAddress"` MetricsAddress string `json:"metricsAddress"` PprofAddress string `json:"pprofAddress"` Run []string `json:"run"` } `json:"controllers"` } `json:"sideCars" jsonschema:"required"` ExtraVolumes string `json:"extraVolumes"` // XXX this is template-expanded into yaml ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml InitContainers struct { Configurator struct { ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml Resources map[string]any `json:"resources"` } `json:"configurator"` FSValidator struct { Enabled bool `json:"enabled"` Resources map[string]any `json:"resources"` ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml ExpectedFS string `json:"expectedFS"` } `json:"fsValidator"` SetDataDirOwnership struct { Enabled bool `json:"enabled"` Resources map[string]any `json:"resources"` ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml } `json:"setDataDirOwnership"` SetTieredStorageCacheDirOwnership struct { // Enabled bool `json:"enabled"` Resources map[string]any `json:"resources"` ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml } `json:"setTieredStorageCacheDirOwnership"` Tuning struct { // Enabled bool `json:"enabled"` Resources map[string]any `json:"resources"` ExtraVolumeMounts string `json:"extraVolumeMounts"` // XXX this is template-expanded into yaml } `json:"tuning"` ExtraInitContainers string `json:"extraInitContainers"` // XXX this is template-expanded into yaml } `json:"initContainers"` InitContainerImage struct { Repository string `json:"repository"` Tag string `json:"tag"` } `json:"initContainerImage"` }
func (Statefulset) JSONSchemaExtend ¶
func (Statefulset) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
type Storage ¶
type Storage struct { HostPath string `json:"hostPath" jsonschema:"required"` Tiered Tiered `json:"tiered" jsonschema:"required"` PersistentVolume *struct { Annotations map[string]string `json:"annotations" jsonschema:"required"` Enabled bool `json:"enabled" jsonschema:"required"` Labels map[string]string `json:"labels" jsonschema:"required"` Size resource.Quantity `json:"size" jsonschema:"required"` StorageClass string `json:"storageClass" jsonschema:"required"` NameOverwrite string `json:"nameOverwrite"` } `json:"persistentVolume" jsonschema:"required,deprecated"` TieredConfig TieredStorageConfig `json:"tieredConfig" jsonschema:"deprecated"` TieredStorageHostPath string `json:"tieredStorageHostPath" jsonschema:"deprecated"` TieredStoragePersistentVolume *struct { Annotations map[string]string `json:"annotations" jsonschema:"required"` Enabled bool `json:"enabled" jsonschema:"required"` Labels map[string]string `json:"labels" jsonschema:"required"` StorageClass string `json:"storageClass" jsonschema:"required"` } `json:"tieredStoragePersistentVolume" jsonschema:"deprecated"` }
func (*Storage) GetTieredStorageConfig ¶
func (s *Storage) GetTieredStorageConfig() TieredStorageConfig
func (*Storage) GetTieredStorageHostPath ¶
was: storage-tiered-hostpath
func (*Storage) IsTieredStorageEnabled ¶
func (Storage) JSONSchemaExtend ¶
func (Storage) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*Storage) StorageMinFreeBytes ¶
func (*Storage) TieredCacheDirectory ¶
TieredCacheDirectory was: tieredStorage.cacheDirectory
func (*Storage) TieredMountType ¶
TieredMountType was: storage-tiered-mountType
func (*Storage) TieredPersistentVolumeAnnotations ¶
Storage.TieredPersistentVolumeAnnotations was storage-tiered-persistentVolume.annotations support legacy storage.tieredStoragePersistentVolume
func (*Storage) TieredPersistentVolumeLabels ¶
Storage.TieredPersistentVolumeLabels was storage-tiered-persistentVolume.labels support legacy storage.tieredStoragePersistentVolume
func (*Storage) TieredPersistentVolumeStorageClass ¶
storage.TieredPersistentVolumeStorageClass was storage-tiered-persistentVolume.storageClass support legacy storage.tieredStoragePersistentVolume
type TLS ¶
type TLS struct { Enabled bool `json:"enabled" jsonschema:"required"` Certs TLSCertMap `json:"certs" jsonschema:"required"` }
type TLSCert ¶
type TLSCert struct { // Enabled should be interpreted as `true` if not set. Enabled *bool `json:"enabled"` CAEnabled bool `json:"caEnabled" jsonschema:"required"` ApplyInternalDNSNames *bool `json:"applyInternalDNSNames"` Duration string `json:"duration" jsonschema:"pattern=.*[smh]$"` IssuerRef *cmmeta.ObjectReference `json:"issuerRef"` SecretRef *corev1.LocalObjectReference `json:"secretRef"` ClientSecretRef *corev1.LocalObjectReference `json:"clientSecretRef"` }
type TLSCertMap ¶
func (TLSCertMap) JSONSchemaExtend ¶
func (TLSCertMap) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (TLSCertMap) MustGet ¶
func (m TLSCertMap) MustGet(name string) *TLSCert
type Tiered ¶
type Tiered struct { CredentialsSecretRef TieredStorageCredentials `json:"credentialsSecretRef"` Config TieredStorageConfig `json:"config"` HostPath string `json:"hostPath"` MountType string `json:"mountType" jsonschema:"required,pattern=^(none|hostPath|emptyDir|persistentVolume)$"` PersistentVolume struct { Annotations map[string]string `json:"annotations" jsonschema:"required"` Enabled bool `json:"enabled"` Labels map[string]string `json:"labels" jsonschema:"required"` NameOverwrite string `json:"nameOverwrite"` Size string `json:"size"` StorageClass string `json:"storageClass" jsonschema:"required"` } `json:"persistentVolume"` }
type TieredStorageConfig ¶
func (TieredStorageConfig) CloudStorageCacheSize ¶
func (c TieredStorageConfig) CloudStorageCacheSize() *resource.Quantity
func (TieredStorageConfig) HasAzureCanaries ¶
func (c TieredStorageConfig) HasAzureCanaries() bool
HasAzureCanaries returns true if this configuration has keys set that would indicate the configuration is for a MSFT Azure environment.
If true, [TieredStorageCredentials.SecretKey] should be treated as the value for `cloud_storage_azure_shared_key` instead of `cloud_storage_secret_key`.
func (TieredStorageConfig) JSONSchema ¶
func (TieredStorageConfig) JSONSchema() *jsonschema.Schema
+gotohelm:ignore=true
func (TieredStorageConfig) Translate ¶
func (c TieredStorageConfig) Translate(creds *TieredStorageCredentials) map[string]any
Translate converts TieredStorageConfig into a map suitable for use in an unexpanded `.bootstrap.yaml`.
type TieredStorageCredentials ¶
type TieredStorageCredentials struct { AccessKey *SecretRef `json:"accessKey"` SecretKey *SecretRef `json:"secretKey"` }
func (*TieredStorageCredentials) AsEnvVars ¶
func (tsc *TieredStorageCredentials) AsEnvVars(config TieredStorageConfig) []corev1.EnvVar
type TrustStore ¶
type TrustStore struct { ConfigMapKeyRef *corev1.ConfigMapKeySelector `json:"configMapKeyRef"` SecretKeyRef *corev1.SecretKeySelector `json:"secretKeyRef"` }
func (TrustStore) JSONSchemaExtend ¶
func (TrustStore) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*TrustStore) RelativePath ¶
func (t *TrustStore) RelativePath() string
func (*TrustStore) TrustStoreFilePath ¶
func (t *TrustStore) TrustStoreFilePath() string
func (*TrustStore) VolumeProjection ¶
func (t *TrustStore) VolumeProjection() corev1.VolumeProjection
type TunableConfig ¶
func (TunableConfig) JSONSchemaExtend ¶
func (TunableConfig) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
func (*TunableConfig) Translate ¶
func (c *TunableConfig) Translate() map[string]any
type Tuning ¶
type Tuning struct { TuneAIOEvents bool `json:"tune_aio_events,omitempty"` TuneClocksource bool `json:"tune_clocksource,omitempty"` TuneBallastFile bool `json:"tune_ballast_file,omitempty"` BallastFilePath string `json:"ballast_file_path,omitempty"` BallastFileSize string `json:"ballast_file_size,omitempty"` WellKnownIO string `json:"well_known_io,omitempty"` }
type Values ¶
type Values struct { NameOverride string `json:"nameOverride"` FullnameOverride string `json:"fullnameOverride"` ClusterDomain string `json:"clusterDomain"` CommonLabels map[string]string `json:"commonLabels"` NodeSelector map[string]string `json:"nodeSelector"` Affinity corev1.Affinity `json:"affinity" jsonschema:"required"` Tolerations []corev1.Toleration `json:"tolerations"` Image Image `json:"image" jsonschema:"required,description=Values used to define the container image to be used for Redpanda"` Service *Service `json:"service"` ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets"` LicenseKey string `` /* 183-byte string literal not displayed */ LicenseSecretRef *LicenseSecretRef `json:"license_secret_ref" jsonschema:"deprecated"` AuditLogging AuditLogging `json:"auditLogging"` Enterprise Enterprise `json:"enterprise"` RackAwareness RackAwareness `json:"rackAwareness"` Console console.PartialValues `json:"console,omitempty"` Connectors connectors.PartialValues `json:"connectors"` Auth Auth `json:"auth"` TLS TLS `json:"tls"` External ExternalConfig `json:"external"` Logging Logging `json:"logging"` Monitoring Monitoring `json:"monitoring"` Resources RedpandaResources `json:"resources"` Storage Storage `json:"storage"` PostInstallJob PostInstallJob `json:"post_install_job"` Statefulset Statefulset `json:"statefulset"` ServiceAccount ServiceAccountCfg `json:"serviceAccount"` RBAC RBAC `json:"rbac"` Tuning Tuning `json:"tuning"` Listeners Listeners `json:"listeners"` Config Config `json:"config"` Tests *struct { Enabled bool `json:"enabled"` } `json:"tests"` Force bool `json:"force"` }
func (Values) JSONSchemaExtend ¶
func (Values) JSONSchemaExtend(schema *jsonschema.Schema)
+gotohelm:ignore=true
Source Files ¶
- cert_issuers.go
- certs.go
- chart.go
- configmap.tpl.go
- connectors.go
- console.tpl.go
- helpers.go
- memory.go
- notes.go
- poddisruptionbudget.go
- post_install_upgrade_job.go
- rbac.go
- secrets.go
- service.loadbalancer.go
- service.nodeport.go
- service_internal.go
- serviceaccount.go
- servicemonitor.go
- statefulset.go
- values.go
- values_partial.gen.go
- values_util.go