mirror of https://github.com/k3s-io/k3s
Merge pull request #53569 from leblancd/v6_e2e_ext_ip
Automatic merge from submit-queue (batch tested with PRs 53000, 52870, 53569). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Fallback to internal addrs in e2e tests when no external addrs available This change modifies the way that config.NodeIP is selected at the start of e2e Networking tests such that if no external addresses are available from the cloud provider (e.g. either no cloud provider being used [baremetal or VMs], or the provider doesn't have external IPs configured), then one of the internal addresses is used. Without this change, the e2e service-related Networking tests will always panic when config.ExternalAddrs[0] is accessed and the slice is empty. This change eliminates the panic, and in some setups, the fallback choice of using an internal address will provide the necessary connectivity for the e2e Networking tests to access each node. fixes #53568 **What this PR does / why we need it**: This change modifies the way that config.NodeIP is selected at the start of e2e Networking tests such that if no external addresses are available from the cloud provider (e.g. either no cloud provider being used [baremetal or VMs], or the provider doesn't have external IPs configured), then one of the internal addresses is used. Without this change, the e2e service-related Networking tests will always panic when no cloud provider is being used, or the cloud provider does not have external addresses configured. This change eliminates the panic, and in some setups, the fallback choice of using an internal address will provide the necessary connectivity for the e2e Networking tests to access each node. **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #53568 **Special notes for your reviewer**: **Release note**: ```release-note NONE ```pull/6/head
commit
90a6a4f1f8
|
@ -565,7 +565,12 @@ func (config *NetworkingTestConfig) setup(selector map[string]string) {
|
|||
}
|
||||
}
|
||||
config.ClusterIP = config.NodePortService.Spec.ClusterIP
|
||||
config.NodeIP = config.ExternalAddrs[0]
|
||||
if len(config.ExternalAddrs) != 0 {
|
||||
config.NodeIP = config.ExternalAddrs[0]
|
||||
} else {
|
||||
internalAddrs := NodeAddresses(nodeList, v1.NodeInternalIP)
|
||||
config.NodeIP = internalAddrs[0]
|
||||
}
|
||||
}
|
||||
|
||||
func (config *NetworkingTestConfig) cleanup() {
|
||||
|
|
|
@ -106,7 +106,7 @@ var _ = SIGDescribe("Networking", func() {
|
|||
By(fmt.Sprintf("dialing(http) %v --> %v:%v (config.clusterIP)", config.TestContainerPod.Name, config.ClusterIP, framework.ClusterHttpPort))
|
||||
config.DialFromTestContainer("http", config.ClusterIP, framework.ClusterHttpPort, config.MaxTries, 0, config.EndpointHostnames())
|
||||
|
||||
By(fmt.Sprintf("dialing(http) %v --> %v:%v (nodeIP)", config.TestContainerPod.Name, config.ExternalAddrs[0], config.NodeHttpPort))
|
||||
By(fmt.Sprintf("dialing(http) %v --> %v:%v (nodeIP)", config.TestContainerPod.Name, config.NodeIP, config.NodeHttpPort))
|
||||
config.DialFromTestContainer("http", config.NodeIP, config.NodeHttpPort, config.MaxTries, 0, config.EndpointHostnames())
|
||||
})
|
||||
|
||||
|
@ -115,7 +115,7 @@ var _ = SIGDescribe("Networking", func() {
|
|||
By(fmt.Sprintf("dialing(udp) %v --> %v:%v (config.clusterIP)", config.TestContainerPod.Name, config.ClusterIP, framework.ClusterUdpPort))
|
||||
config.DialFromTestContainer("udp", config.ClusterIP, framework.ClusterUdpPort, config.MaxTries, 0, config.EndpointHostnames())
|
||||
|
||||
By(fmt.Sprintf("dialing(udp) %v --> %v:%v (nodeIP)", config.TestContainerPod.Name, config.ExternalAddrs[0], config.NodeUdpPort))
|
||||
By(fmt.Sprintf("dialing(udp) %v --> %v:%v (nodeIP)", config.TestContainerPod.Name, config.NodeIP, config.NodeUdpPort))
|
||||
config.DialFromTestContainer("udp", config.NodeIP, config.NodeUdpPort, config.MaxTries, 0, config.EndpointHostnames())
|
||||
})
|
||||
|
||||
|
|
Loading…
Reference in New Issue