Skip to content

Commit e468ffd

Browse files
committed
internal/api/convert: fix v1alpha1 to v1alpha2
Signed-off-by: Benedikt Bongartz <[email protected]>
1 parent ffd0b70 commit e468ffd

File tree

2 files changed

+30
-18
lines changed

2 files changed

+30
-18
lines changed

internal/api/convert/v1alpha.go

+2
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,8 @@ func V1Alpha1to2(in v1alpha1.OpenTelemetryCollector) (v1alpha2.OpenTelemetryColl
121121
out.Spec.Mode = v1alpha2.Mode(copy.Spec.Mode)
122122
out.Spec.UpgradeStrategy = v1alpha2.UpgradeStrategy(copy.Spec.UpgradeStrategy)
123123
out.Spec.Ingress.Type = v1alpha2.IngressType(copy.Spec.Ingress.Type)
124+
out.Spec.Ingress.RuleType = v1alpha2.IngressRuleType(copy.Spec.Ingress.RuleType)
125+
out.Spec.Ingress.Hostname = copy.Spec.Ingress.Hostname
124126
out.Spec.Ingress.Annotations = copy.Spec.Ingress.Annotations
125127
out.Spec.Ingress.TLS = copy.Spec.Ingress.TLS
126128
out.Spec.Ingress.IngressClassName = copy.Spec.Ingress.IngressClassName

internal/api/convert/v1alpha_test.go

+28-18
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
package convert
1616

1717
import (
18-
"encoding/json"
1918
"testing"
2019

2120
"github.com/stretchr/testify/assert"
@@ -24,8 +23,9 @@ import (
2423
"github.com/open-telemetry/opentelemetry-operator/apis/v1alpha1"
2524
)
2625

27-
func Test_V1Alpha1to2_Config(t *testing.T) {
28-
config := `---
26+
func Test_V1Alpha1to2(t *testing.T) {
27+
t.Run("valid config", func(t *testing.T) {
28+
config := `---
2929
receivers:
3030
otlp:
3131
protocols:
@@ -43,19 +43,29 @@ service:
4343
processors: [resourcedetection]
4444
exporters: [otlp]
4545
`
46-
cfgV1 := v1alpha1.OpenTelemetryCollector{
47-
Spec: v1alpha1.OpenTelemetryCollectorSpec{
48-
Config: config,
49-
},
50-
}
51-
52-
cfgV2, err := V1Alpha1to2(cfgV1)
53-
assert.Nil(t, err)
54-
assert.NotNil(t, cfgV2)
55-
56-
jsonCfg, err := json.Marshal(&cfgV2.Spec.Config)
57-
assert.Nil(t, err)
58-
yamlCfg, err := yaml.JSONToYAML(jsonCfg)
59-
assert.Nil(t, err)
60-
assert.YAMLEq(t, config, string(yamlCfg))
46+
cfgV1 := v1alpha1.OpenTelemetryCollector{
47+
Spec: v1alpha1.OpenTelemetryCollectorSpec{
48+
Config: config,
49+
},
50+
}
51+
52+
cfgV2, err := V1Alpha1to2(cfgV1)
53+
assert.Nil(t, err)
54+
assert.NotNil(t, cfgV2)
55+
56+
yamlCfg, err := yaml.Marshal(&cfgV2.Spec.Config)
57+
assert.Nil(t, err)
58+
assert.YAMLEq(t, config, string(yamlCfg))
59+
})
60+
t.Run("invalid config", func(t *testing.T) {
61+
config := `!!!`
62+
cfgV1 := v1alpha1.OpenTelemetryCollector{
63+
Spec: v1alpha1.OpenTelemetryCollectorSpec{
64+
Config: config,
65+
},
66+
}
67+
68+
_, err := V1Alpha1to2(cfgV1)
69+
assert.ErrorContains(t, err, "could not convert config json to v1alpha2.Config")
70+
})
6171
}

0 commit comments

Comments
 (0)