@@ -21,6 +21,7 @@ import (
21
21
"github.com/go-logr/logr"
22
22
monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1"
23
23
"github.com/stretchr/testify/require"
24
+ go_yaml "gopkg.in/yaml.v3"
24
25
appsv1 "k8s.io/api/apps/v1"
25
26
corev1 "k8s.io/api/core/v1"
26
27
networkingv1 "k8s.io/api/networking/v1"
@@ -33,6 +34,7 @@ import (
33
34
colfeaturegate "go.opentelemetry.io/collector/featuregate"
34
35
35
36
"github.com/open-telemetry/opentelemetry-operator/apis/v1alpha1"
37
+ "github.com/open-telemetry/opentelemetry-operator/apis/v1alpha2"
36
38
"github.com/open-telemetry/opentelemetry-operator/internal/config"
37
39
"github.com/open-telemetry/opentelemetry-operator/internal/manifests"
38
40
"github.com/open-telemetry/opentelemetry-operator/pkg/featuregate"
73
75
)
74
76
75
77
func TestBuildCollector (t * testing.T ) {
76
- var goodConfig = `receivers:
78
+ var goodConfigYaml = `receivers:
77
79
examplereceiver:
78
80
endpoint: "0.0.0.0:12345"
79
81
exporters:
@@ -84,9 +86,13 @@ service:
84
86
receivers: [examplereceiver]
85
87
exporters: [logging]
86
88
`
89
+
90
+ goodConfig := v1alpha2.Config {}
91
+ err := go_yaml .Unmarshal ([]byte (goodConfigYaml ), & goodConfig )
92
+ require .NoError (t , err )
87
93
one := int32 (1 )
88
94
type args struct {
89
- instance v1alpha1 .OpenTelemetryCollector
95
+ instance v1alpha2 .OpenTelemetryCollector
90
96
}
91
97
tests := []struct {
92
98
name string
@@ -97,16 +103,18 @@ service:
97
103
{
98
104
name : "base case" ,
99
105
args : args {
100
- instance : v1alpha1 .OpenTelemetryCollector {
106
+ instance : v1alpha2 .OpenTelemetryCollector {
101
107
ObjectMeta : metav1.ObjectMeta {
102
108
Name : "test" ,
103
109
Namespace : "test" ,
104
110
},
105
- Spec : v1alpha1.OpenTelemetryCollectorSpec {
106
- Replicas : & one ,
107
- Mode : "deployment" ,
108
- Image : "test" ,
109
- Config : goodConfig ,
111
+ Spec : v1alpha2.OpenTelemetryCollectorSpec {
112
+ OpenTelemetryCommonFields : v1alpha2.OpenTelemetryCommonFields {
113
+ Image : "test" ,
114
+ Replicas : & one ,
115
+ },
116
+ Mode : "deployment" ,
117
+ Config : goodConfig ,
110
118
},
111
119
},
112
120
},
@@ -334,17 +342,19 @@ service:
334
342
{
335
343
name : "ingress" ,
336
344
args : args {
337
- instance : v1alpha1 .OpenTelemetryCollector {
345
+ instance : v1alpha2 .OpenTelemetryCollector {
338
346
ObjectMeta : metav1.ObjectMeta {
339
347
Name : "test" ,
340
348
Namespace : "test" ,
341
349
},
342
- Spec : v1alpha1.OpenTelemetryCollectorSpec {
343
- Replicas : & one ,
344
- Mode : "deployment" ,
345
- Image : "test" ,
346
- Ingress : v1alpha1.Ingress {
347
- Type : v1alpha1 .IngressTypeNginx ,
350
+ Spec : v1alpha2.OpenTelemetryCollectorSpec {
351
+ OpenTelemetryCommonFields : v1alpha2.OpenTelemetryCommonFields {
352
+ Image : "test" ,
353
+ Replicas : & one ,
354
+ },
355
+ Mode : "deployment" ,
356
+ Ingress : v1alpha2.Ingress {
357
+ Type : v1alpha2 .IngressTypeNginx ,
348
358
Hostname : "example.com" ,
349
359
Annotations : map [string ]string {
350
360
"something" : "true" ,
@@ -617,17 +627,19 @@ service:
617
627
{
618
628
name : "specified service account case" ,
619
629
args : args {
620
- instance : v1alpha1 .OpenTelemetryCollector {
630
+ instance : v1alpha2 .OpenTelemetryCollector {
621
631
ObjectMeta : metav1.ObjectMeta {
622
632
Name : "test" ,
623
633
Namespace : "test" ,
624
634
},
625
- Spec : v1alpha1.OpenTelemetryCollectorSpec {
626
- Replicas : & one ,
627
- Mode : "deployment" ,
628
- Image : "test" ,
629
- Config : goodConfig ,
630
- ServiceAccount : "my-special-sa" ,
635
+ Spec : v1alpha2.OpenTelemetryCollectorSpec {
636
+ OpenTelemetryCommonFields : v1alpha2.OpenTelemetryCommonFields {
637
+ Image : "test" ,
638
+ Replicas : & one ,
639
+ ServiceAccount : "my-special-sa" ,
640
+ },
641
+ Mode : "deployment" ,
642
+ Config : goodConfig ,
631
643
},
632
644
},
633
645
},
@@ -1083,7 +1095,7 @@ endpoint: ws://opamp-server:4320/v1/opamp
1083
1095
}
1084
1096
1085
1097
func TestBuildTargetAllocator (t * testing.T ) {
1086
- var goodConfig = `
1098
+ var goodConfigYaml = `
1087
1099
receivers:
1088
1100
prometheus:
1089
1101
config:
@@ -1108,9 +1120,13 @@ service:
1108
1120
receivers: [prometheus]
1109
1121
exporters: [logging]
1110
1122
`
1123
+
1124
+ goodConfig := v1alpha2.Config {}
1125
+ err := go_yaml .Unmarshal ([]byte (goodConfigYaml ), & goodConfig )
1126
+ require .NoError (t , err )
1111
1127
one := int32 (1 )
1112
1128
type args struct {
1113
- instance v1alpha1 .OpenTelemetryCollector
1129
+ instance v1alpha2 .OpenTelemetryCollector
1114
1130
}
1115
1131
tests := []struct {
1116
1132
name string
@@ -1122,16 +1138,18 @@ service:
1122
1138
{
1123
1139
name : "base case" ,
1124
1140
args : args {
1125
- instance : v1alpha1 .OpenTelemetryCollector {
1141
+ instance : v1alpha2 .OpenTelemetryCollector {
1126
1142
ObjectMeta : metav1.ObjectMeta {
1127
1143
Name : "test" ,
1128
1144
Namespace : "test" ,
1129
1145
},
1130
- Spec : v1alpha1.OpenTelemetryCollectorSpec {
1131
- Replicas : & one ,
1132
- Mode : "statefulset" ,
1133
- Image : "test" ,
1134
- Config : goodConfig ,
1146
+ Spec : v1alpha2.OpenTelemetryCollectorSpec {
1147
+ OpenTelemetryCommonFields : v1alpha2.OpenTelemetryCommonFields {
1148
+ Image : "test" ,
1149
+ Replicas : & one ,
1150
+ },
1151
+ Mode : "statefulset" ,
1152
+ Config : goodConfig ,
1135
1153
TargetAllocator : v1alpha1.OpenTelemetryTargetAllocator {
1136
1154
Enabled : true ,
1137
1155
FilterStrategy : "relabel-config" ,
@@ -1516,16 +1534,18 @@ prometheus_cr:
1516
1534
{
1517
1535
name : "enable metrics case" ,
1518
1536
args : args {
1519
- instance : v1alpha1 .OpenTelemetryCollector {
1537
+ instance : v1alpha2 .OpenTelemetryCollector {
1520
1538
ObjectMeta : metav1.ObjectMeta {
1521
1539
Name : "test" ,
1522
1540
Namespace : "test" ,
1523
1541
},
1524
- Spec : v1alpha1.OpenTelemetryCollectorSpec {
1525
- Replicas : & one ,
1526
- Mode : "statefulset" ,
1527
- Image : "test" ,
1528
- Config : goodConfig ,
1542
+ Spec : v1alpha2.OpenTelemetryCollectorSpec {
1543
+ OpenTelemetryCommonFields : v1alpha2.OpenTelemetryCommonFields {
1544
+ Image : "test" ,
1545
+ Replicas : & one ,
1546
+ },
1547
+ Mode : "statefulset" ,
1548
+ Config : goodConfig ,
1529
1549
TargetAllocator : v1alpha1.OpenTelemetryTargetAllocator {
1530
1550
Enabled : true ,
1531
1551
PrometheusCR : v1alpha1.OpenTelemetryTargetAllocatorPrometheusCR {
0 commit comments