package couchctl import ( "edge-infra.dev/pkg/edge/constants" dsapi "edge-infra.dev/pkg/edge/datasync/apis/v1alpha1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) const ( IniFileKey = "inifile" ) // ConfigMap dynamically build couchdb config ini func ConfigMap(server dsapi.CouchDBServer) (*corev1.ConfigMap, error) { iniConfig, err := server.ToINIString() // convert server spec to INI config for couchdb if err != nil { return nil, err } ref := server.ConfigMapRef() cm := &corev1.ConfigMap{ TypeMeta: metav1.TypeMeta{ Kind: "ConfigMap", APIVersion: "v1", }, ObjectMeta: metav1.ObjectMeta{ Name: ref.Name, Namespace: ref.Namespace, Labels: map[string]string{ constants.PlatformComponent: server.Namespace, }, }, Data: map[string]string{ IniFileKey: iniConfig, }, } return cm, nil }