refactor(yaml): globalize fixups
The ToK8SYaml() function makes the job, it's now simpler to manage fixes
This commit is contained in:
@@ -12,7 +12,6 @@ import (
|
||||
"github.com/compose-spec/compose-go/types"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
// FileMapUsage is the usage of the filemap.
|
||||
@@ -232,9 +231,5 @@ func (c *ConfigMap) SetData(data map[string]string) {
|
||||
|
||||
// Yaml returns the yaml representation of the configmap
|
||||
func (c *ConfigMap) Yaml() ([]byte, error) {
|
||||
if o, err := yaml.Marshal(c); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
return UnWrapTPL(o), nil
|
||||
}
|
||||
return ToK8SYaml(c)
|
||||
}
|
||||
|
@@ -10,7 +10,6 @@ import (
|
||||
batchv1 "k8s.io/api/batch/v1"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
// only used to check interface implementation
|
||||
@@ -119,9 +118,5 @@ func (c *CronJob) Filename() string {
|
||||
//
|
||||
// Implements the Yaml interface.
|
||||
func (c *CronJob) Yaml() ([]byte, error) {
|
||||
if o, err := yaml.Marshal(c); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
return UnWrapTPL(o), nil
|
||||
}
|
||||
return ToK8SYaml(c)
|
||||
}
|
||||
|
@@ -15,7 +15,6 @@ import (
|
||||
appsv1 "k8s.io/api/apps/v1"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
var _ Yaml = (*Deployment)(nil)
|
||||
@@ -365,12 +364,13 @@ func (d *Deployment) SetEnvFrom(service types.ServiceConfig, appName string) {
|
||||
|
||||
// Yaml returns the yaml representation of the deployment.
|
||||
func (d *Deployment) Yaml() ([]byte, error) {
|
||||
var y []byte
|
||||
var err error
|
||||
serviceName := d.service.Name
|
||||
y, err := yaml.Marshal(d)
|
||||
if err != nil {
|
||||
|
||||
if y, err = ToK8SYaml(d); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
y = UnWrapTPL(y)
|
||||
|
||||
// for each volume mount, add a condition "if values has persistence"
|
||||
changing := false
|
||||
|
@@ -9,7 +9,6 @@ import (
|
||||
"github.com/compose-spec/compose-go/types"
|
||||
networkv1 "k8s.io/api/networking/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
var _ Yaml = (*Ingress)(nil)
|
||||
@@ -124,8 +123,13 @@ func (ingress *Ingress) Filename() string {
|
||||
}
|
||||
|
||||
func (ingress *Ingress) Yaml() ([]byte, error) {
|
||||
var ret []byte
|
||||
var err error
|
||||
if ret, err = ToK8SYaml(ingress); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
serviceName := ingress.service.Name
|
||||
ret, err := yaml.Marshal(ingress)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@@ -139,5 +139,5 @@ func (r *ServiceAccount) Filename() string {
|
||||
}
|
||||
|
||||
func (r *ServiceAccount) Yaml() ([]byte, error) {
|
||||
return yaml.Marshal(r)
|
||||
return ToK8SYaml(r)
|
||||
}
|
||||
|
@@ -9,7 +9,6 @@ import (
|
||||
"github.com/compose-spec/compose-go/types"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -97,11 +96,11 @@ func (s *Secret) SetData(data map[string]string) {
|
||||
|
||||
// Yaml returns the yaml representation of the secret.
|
||||
func (s *Secret) Yaml() ([]byte, error) {
|
||||
y, err := yaml.Marshal(s)
|
||||
if err != nil {
|
||||
var y []byte
|
||||
var err error
|
||||
if y, err = ToK8SYaml(s); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
y = UnWrapTPL(y)
|
||||
|
||||
// replace the b64 value by the real value
|
||||
for _, value := range s.Data {
|
||||
|
@@ -9,7 +9,6 @@ import (
|
||||
v1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/util/intstr"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
var _ Yaml = (*Service)(nil)
|
||||
@@ -80,11 +79,11 @@ func (s *Service) Filename() string {
|
||||
|
||||
// Yaml returns the yaml representation of the service.
|
||||
func (s *Service) Yaml() ([]byte, error) {
|
||||
y, err := yaml.Marshal(s)
|
||||
if err != nil {
|
||||
var y []byte
|
||||
var err error
|
||||
if y, err = ToK8SYaml(s); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
y = UnWrapTPL(y)
|
||||
|
||||
lines := []string{}
|
||||
for _, line := range strings.Split(string(y), "\n") {
|
||||
|
@@ -9,6 +9,7 @@ import (
|
||||
|
||||
"github.com/compose-spec/compose-go/types"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
var regexpLineWrap = regexp.MustCompile(`\n\s+}}`)
|
||||
@@ -84,3 +85,11 @@ func isIgnored(service types.ServiceConfig) bool {
|
||||
func UnWrapTPL(in []byte) []byte {
|
||||
return regexpLineWrap.ReplaceAll(in, []byte(" }}"))
|
||||
}
|
||||
|
||||
func ToK8SYaml(obj interface{}) ([]byte, error) {
|
||||
if o, err := yaml.Marshal(obj); err != nil {
|
||||
return nil, nil
|
||||
} else {
|
||||
return UnWrapTPL(o), nil
|
||||
}
|
||||
}
|
||||
|
@@ -8,7 +8,6 @@ import (
|
||||
v1 "k8s.io/api/core/v1"
|
||||
"k8s.io/apimachinery/pkg/api/resource"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"sigs.k8s.io/yaml"
|
||||
)
|
||||
|
||||
const persistenceKey = "persistence"
|
||||
@@ -66,17 +65,17 @@ func (v *VolumeClaim) Filename() string {
|
||||
|
||||
// Yaml marshals a VolumeClaim into yaml.
|
||||
func (v *VolumeClaim) Yaml() ([]byte, error) {
|
||||
var out []byte
|
||||
var err error
|
||||
if out, err = ToK8SYaml(v); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
serviceName := v.service.Name
|
||||
if v.nameOverride != "" {
|
||||
serviceName = v.nameOverride
|
||||
}
|
||||
volumeName := v.volumeName
|
||||
out, err := yaml.Marshal(v)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out = UnWrapTPL(out)
|
||||
|
||||
// replace 1Gi to {{ .Values.serviceName.volume.size }}
|
||||
out = []byte(
|
||||
|
Reference in New Issue
Block a user