Skip to content

Commit 5c6bf59

Browse files
authored
Adding PodDNSConfig (#3077)
* Adding PodDNSConfig * Adding PodDNSConfig
1 parent 9f5bc2c commit 5c6bf59

27 files changed

+556
-35
lines changed

.chloggen/implement-dnsconfig.yaml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
2+
change_type: 'enhancement'
3+
4+
# The name of the component, or a single word describing the area of concern, (e.g. collector, target allocator, auto-instrumentation, opamp, github action)
5+
component: collector, target allocator, opamp
6+
7+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
8+
note: Enabling PodDnsConfig for OpenTelemetry Collector, TargetAllocator and OpAMPBridge.
9+
10+
# One or more tracking issues related to the change
11+
issues: [2658]
12+
13+
# (Optional) One or more lines of additional information to render under the primary note.
14+
# These lines will be padded with 2 spaces and then inserted directly into the document.
15+
# Use pipe (|) for multiline entries.
16+
subtext:

apis/v1alpha1/opampbridge_types.go

+2
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@ type OpAMPBridgeSpec struct {
105105
// https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
106106
// +optional
107107
TopologySpreadConstraints []v1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
108+
// PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.
109+
PodDNSConfig v1.PodDNSConfig `json:"podDnsConfig,omitempty"`
108110
}
109111

110112
// OpAMPBridgeStatus defines the observed state of OpAMPBridge.

apis/v1alpha1/zz_generated.deepcopy.go

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

apis/v1beta1/common.go

+2
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,8 @@ type OpenTelemetryCommonFields struct {
224224
//
225225
// +optional
226226
AdditionalContainers []v1.Container `json:"additionalContainers,omitempty"`
227+
// PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.
228+
PodDNSConfig v1.PodDNSConfig `json:"podDnsConfig,omitempty"`
227229
}
228230

229231
type StatefulSetCommonFields struct {

apis/v1beta1/zz_generated.deepcopy.go

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundle/manifests/opentelemetry.io_opampbridges.yaml

+23
Original file line numberDiff line numberDiff line change
@@ -600,6 +600,29 @@ spec:
600600
additionalProperties:
601601
type: string
602602
type: object
603+
podDnsConfig:
604+
properties:
605+
nameservers:
606+
items:
607+
type: string
608+
type: array
609+
x-kubernetes-list-type: atomic
610+
options:
611+
items:
612+
properties:
613+
name:
614+
type: string
615+
value:
616+
type: string
617+
type: object
618+
type: array
619+
x-kubernetes-list-type: atomic
620+
searches:
621+
items:
622+
type: string
623+
type: array
624+
x-kubernetes-list-type: atomic
625+
type: object
603626
podSecurityContext:
604627
properties:
605628
appArmorProfile:

bundle/manifests/opentelemetry.io_opentelemetrycollectors.yaml

+23
Original file line numberDiff line numberDiff line change
@@ -6928,6 +6928,29 @@ spec:
69286928
- type: string
69296929
x-kubernetes-int-or-string: true
69306930
type: object
6931+
podDnsConfig:
6932+
properties:
6933+
nameservers:
6934+
items:
6935+
type: string
6936+
type: array
6937+
x-kubernetes-list-type: atomic
6938+
options:
6939+
items:
6940+
properties:
6941+
name:
6942+
type: string
6943+
value:
6944+
type: string
6945+
type: object
6946+
type: array
6947+
x-kubernetes-list-type: atomic
6948+
searches:
6949+
items:
6950+
type: string
6951+
type: array
6952+
x-kubernetes-list-type: atomic
6953+
type: object
69316954
podSecurityContext:
69326955
properties:
69336956
appArmorProfile:

config/crd/bases/opentelemetry.io_opampbridges.yaml

+23
Original file line numberDiff line numberDiff line change
@@ -597,6 +597,29 @@ spec:
597597
additionalProperties:
598598
type: string
599599
type: object
600+
podDnsConfig:
601+
properties:
602+
nameservers:
603+
items:
604+
type: string
605+
type: array
606+
x-kubernetes-list-type: atomic
607+
options:
608+
items:
609+
properties:
610+
name:
611+
type: string
612+
value:
613+
type: string
614+
type: object
615+
type: array
616+
x-kubernetes-list-type: atomic
617+
searches:
618+
items:
619+
type: string
620+
type: array
621+
x-kubernetes-list-type: atomic
622+
type: object
600623
podSecurityContext:
601624
properties:
602625
appArmorProfile:

config/crd/bases/opentelemetry.io_opentelemetrycollectors.yaml

+23
Original file line numberDiff line numberDiff line change
@@ -6914,6 +6914,29 @@ spec:
69146914
- type: string
69156915
x-kubernetes-int-or-string: true
69166916
type: object
6917+
podDnsConfig:
6918+
properties:
6919+
nameservers:
6920+
items:
6921+
type: string
6922+
type: array
6923+
x-kubernetes-list-type: atomic
6924+
options:
6925+
items:
6926+
properties:
6927+
name:
6928+
type: string
6929+
value:
6930+
type: string
6931+
type: object
6932+
type: array
6933+
x-kubernetes-list-type: atomic
6934+
searches:
6935+
items:
6936+
type: string
6937+
type: array
6938+
x-kubernetes-list-type: atomic
6939+
type: object
69176940
podSecurityContext:
69186941
properties:
69196942
appArmorProfile:

config/crd/bases/opentelemetry.io_targetallocators.yaml

+23
Original file line numberDiff line numberDiff line change
@@ -2089,6 +2089,29 @@ spec:
20892089
- type: string
20902090
x-kubernetes-int-or-string: true
20912091
type: object
2092+
podDnsConfig:
2093+
properties:
2094+
nameservers:
2095+
items:
2096+
type: string
2097+
type: array
2098+
x-kubernetes-list-type: atomic
2099+
options:
2100+
items:
2101+
properties:
2102+
name:
2103+
type: string
2104+
value:
2105+
type: string
2106+
type: object
2107+
type: array
2108+
x-kubernetes-list-type: atomic
2109+
searches:
2110+
items:
2111+
type: string
2112+
type: array
2113+
x-kubernetes-list-type: atomic
2114+
type: object
20922115
podSecurityContext:
20932116
properties:
20942117
appArmorProfile:

controllers/builder_test.go

+8
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,7 @@ service:
221221
},
222222
ShareProcessNamespace: ptr.To(false),
223223
DNSPolicy: "ClusterFirst",
224+
DNSConfig: &corev1.PodDNSConfig{},
224225
ServiceAccountName: "test-collector",
225226
},
226227
},
@@ -471,6 +472,7 @@ service:
471472
},
472473
ShareProcessNamespace: ptr.To(false),
473474
DNSPolicy: "ClusterFirst",
475+
DNSConfig: &corev1.PodDNSConfig{},
474476
ServiceAccountName: "test-collector",
475477
},
476478
},
@@ -757,6 +759,7 @@ service:
757759
},
758760
ShareProcessNamespace: ptr.To(false),
759761
DNSPolicy: "ClusterFirst",
762+
DNSConfig: &corev1.PodDNSConfig{},
760763
ServiceAccountName: "my-special-sa",
761764
},
762765
},
@@ -1005,6 +1008,7 @@ func TestBuildAll_OpAMPBridge(t *testing.T) {
10051008
},
10061009
},
10071010
DNSPolicy: "ClusterFirst",
1011+
DNSConfig: &corev1.PodDNSConfig{},
10081012
ServiceAccountName: "test-opamp-bridge",
10091013
},
10101014
},
@@ -1285,6 +1289,7 @@ service:
12851289
},
12861290
ShareProcessNamespace: ptr.To(false),
12871291
DNSPolicy: "ClusterFirst",
1292+
DNSConfig: &corev1.PodDNSConfig{},
12881293
ServiceAccountName: "test-collector",
12891294
},
12901295
},
@@ -1496,6 +1501,7 @@ prometheus_cr:
14961501
},
14971502
},
14981503
DNSPolicy: "ClusterFirst",
1504+
DNSConfig: &corev1.PodDNSConfig{},
14991505
ShareProcessNamespace: ptr.To(false),
15001506
ServiceAccountName: "test-targetallocator",
15011507
},
@@ -1679,6 +1685,7 @@ prometheus_cr:
16791685
},
16801686
ShareProcessNamespace: ptr.To(false),
16811687
DNSPolicy: "ClusterFirst",
1688+
DNSConfig: &corev1.PodDNSConfig{},
16821689
ServiceAccountName: "test-collector",
16831690
},
16841691
},
@@ -1890,6 +1897,7 @@ prometheus_cr:
18901897
},
18911898
},
18921899
DNSPolicy: "ClusterFirst",
1900+
DNSConfig: &corev1.PodDNSConfig{},
18931901
ShareProcessNamespace: ptr.To(false),
18941902
ServiceAccountName: "test-targetallocator",
18951903
},

0 commit comments

Comments
 (0)