func createConfigMapWithYAML()

in builder/kubebuilder-build/utils/acmsplit/main.go [53:84]


func createConfigMapWithYAML(b []byte) ([]byte, error) {
	decode := scheme.Codecs.UniversalDeserializer().Decode
	obj, groupVersionKind, err := decode(b, nil, nil)
	if err != nil {
		return nil, errors.New("Invalid Object")
	}

	name := ""
	namespace := ""
	if groupVersionKind.Kind == "MutatingWebhookConfiguration" {
		name = obj.(*v1beta1.MutatingWebhookConfiguration).Name
		namespace = obj.(*v1beta1.MutatingWebhookConfiguration).Namespace
	}
	if groupVersionKind.Kind == "ValidatingWebhookConfiguration" {
		name = obj.(*v1beta1.ValidatingWebhookConfiguration).Name
		namespace = obj.(*v1beta1.ValidatingWebhookConfiguration).Namespace
	}

	if len(namespace) > 0 {
		namespace = "namespace: " + namespace + "\n"
	}
	//fmt.Println(string(b))
	sEnc := b64.StdEncoding.EncodeToString(b)

	b = append([]byte("---\napiVersion: v1\nkind: ConfigMap\nmetadata:\n" +
		"  name: " + name + "\n" + namespace +
		"data:\n" +
		"  webhook.yaml: " + sEnc + "\n"))

	return b, nil

}