github.com/percona/percona-xtradb-cluster-operator@v1.14.0/pkg/pxc/app/config/configmap.go (about) 1 package config 2 3 import ( 4 "fmt" 5 6 corev1 "k8s.io/api/core/v1" 7 "k8s.io/apimachinery/pkg/api/resource" 8 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 9 10 api "github.com/percona/percona-xtradb-cluster-operator/pkg/apis/pxc/v1" 11 ) 12 13 func NewConfigMap(cr *api.PerconaXtraDBCluster, cmName, filename, content string) *corev1.ConfigMap { 14 return &corev1.ConfigMap{ 15 TypeMeta: metav1.TypeMeta{ 16 APIVersion: "v1", 17 Kind: "ConfigMap", 18 }, 19 ObjectMeta: metav1.ObjectMeta{ 20 Name: cmName, 21 Namespace: cr.Namespace, 22 }, 23 Data: map[string]string{ 24 filename: content, 25 }, 26 } 27 } 28 29 func NewAutoTuneConfigMap(cr *api.PerconaXtraDBCluster, memory *resource.Quantity, cmName string) (*corev1.ConfigMap, error) { 30 autotuneParams, err := getAutoTuneParams(cr, memory) 31 if err != nil { 32 return nil, err 33 } 34 return &corev1.ConfigMap{ 35 TypeMeta: metav1.TypeMeta{ 36 APIVersion: "v1", 37 Kind: "ConfigMap", 38 }, 39 ObjectMeta: metav1.ObjectMeta{ 40 Name: cmName, 41 Namespace: cr.Namespace, 42 }, 43 Data: map[string]string{ 44 "auto-config.cnf": "[mysqld]" + autotuneParams, 45 }, 46 }, nil 47 } 48 49 func AutoTuneConfigMapName(clusterName, component string) string { 50 return fmt.Sprintf("auto-%s-%s", clusterName, component) 51 } 52 53 func HookScriptConfigMapName(clusterName, component string) string { 54 return fmt.Sprintf("%s-%s-hookscript", clusterName, component) 55 } 56 57 func CustomConfigMapName(clusterName, component string) string { 58 return fmt.Sprintf("%s-%s", clusterName, component) 59 } 60 61 func AuthPolicyConfigMapName(clusterName string) string { 62 return fmt.Sprintf("%s-auth-policy", clusterName) 63 }