Merge pull request #124516 from danwinship/cloud-hostname-override

Fix behavior with external cloud provider and --hostname-override
This commit is contained in:
Kubernetes Prow Robot
2024-04-25 14:47:24 -07:00
committed by GitHub
2 changed files with 11 additions and 4 deletions

View File

@@ -135,6 +135,9 @@ func NodeAddress(nodeIPs []net.IP, // typically Kubelet.nodeIPs
// in https://github.com/kubernetes/kubernetes/issues/120720.
// We are already hinting the external cloud provider via the annotation AnnotationAlphaProvidedIPAddr.
if !nodeIPSpecified {
node.Status.Addresses = []v1.NodeAddress{
{Type: v1.NodeHostName, Address: hostname},
}
return nil
}
}

View File

@@ -238,15 +238,19 @@ func TestNodeAddress(t *testing.T) {
nodeIP: netutils.ParseIPSloppy("::"),
nodeAddresses: []v1.NodeAddress{},
cloudProviderType: cloudProviderExternal,
expectedAddresses: []v1.NodeAddress{},
shouldError: false,
expectedAddresses: []v1.NodeAddress{
{Type: v1.NodeHostName, Address: testKubeletHostname},
},
shouldError: false,
},
{
name: "cloud provider is external and no nodeIP",
nodeAddresses: []v1.NodeAddress{},
cloudProviderType: cloudProviderExternal,
expectedAddresses: []v1.NodeAddress{},
shouldError: false,
expectedAddresses: []v1.NodeAddress{
{Type: v1.NodeHostName, Address: testKubeletHostname},
},
shouldError: false,
},
{
name: "cloud doesn't report hostname, no override, detected hostname mismatch",