@@ -179,6 +179,21 @@ func TestNodeAddress(t *testing.T) {
179
179
},
180
180
shouldError : false ,
181
181
},
182
+ {
183
+ name : "cloud reports hostname, nodeIP is set, no override" ,
184
+ nodeIP : net .ParseIP ("10.1.1.1" ),
185
+ nodeAddresses : []v1.NodeAddress {
186
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
187
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
188
+ {Type : v1 .NodeHostName , Address : "cloud-host" },
189
+ },
190
+ expectedAddresses : []v1.NodeAddress {
191
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
192
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
193
+ {Type : v1 .NodeHostName , Address : "cloud-host" }, // cloud-reported hostname wins over detected hostname
194
+ },
195
+ shouldError : false ,
196
+ },
182
197
{
183
198
name : "cloud reports hostname, overridden" ,
184
199
nodeAddresses : []v1.NodeAddress {
@@ -233,6 +248,37 @@ func TestNodeAddress(t *testing.T) {
233
248
},
234
249
shouldError : false ,
235
250
},
251
+ {
252
+ name : "cloud doesn't report hostname, nodeIP is set, no override, detected hostname match" ,
253
+ nodeIP : net .ParseIP ("10.1.1.1" ),
254
+ nodeAddresses : []v1.NodeAddress {
255
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
256
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
257
+ {Type : v1 .NodeExternalDNS , Address : testKubeletHostname }, // cloud-reported address value matches detected hostname
258
+ },
259
+ expectedAddresses : []v1.NodeAddress {
260
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
261
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
262
+ {Type : v1 .NodeExternalDNS , Address : testKubeletHostname },
263
+ {Type : v1 .NodeHostName , Address : testKubeletHostname }, // detected hostname gets auto-added
264
+ },
265
+ shouldError : false ,
266
+ },
267
+ {
268
+ name : "cloud doesn't report hostname, nodeIP is set, no override, detected hostname match with same type as nodeIP" ,
269
+ nodeIP : net .ParseIP ("10.1.1.1" ),
270
+ nodeAddresses : []v1.NodeAddress {
271
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
272
+ {Type : v1 .NodeInternalIP , Address : testKubeletHostname }, // cloud-reported address value matches detected hostname
273
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
274
+ },
275
+ expectedAddresses : []v1.NodeAddress {
276
+ {Type : v1 .NodeInternalIP , Address : "10.1.1.1" },
277
+ {Type : v1 .NodeExternalIP , Address : "55.55.55.55" },
278
+ {Type : v1 .NodeHostName , Address : testKubeletHostname }, // detected hostname gets auto-added
279
+ },
280
+ shouldError : false ,
281
+ },
236
282
{
237
283
name : "cloud doesn't report hostname, hostname override, hostname mismatch" ,
238
284
nodeAddresses : []v1.NodeAddress {
0 commit comments