@@ -240,8 +240,6 @@ func createHostNetWebServerContainer(rc internalapi.RuntimeService, ic internala
240
240
// checkMainPage check if the we can get the main page of the pod via given IP:port.
241
241
func checkMainPage (c internalapi.RuntimeService , podID string , hostPort , containerPort int32 ) {
242
242
By ("get the IP:port needed to be checked" )
243
- var err error
244
- var resp * http.Response
245
243
246
244
url := "http://"
247
245
if hostPort != 0 {
@@ -256,11 +254,28 @@ func checkMainPage(c internalapi.RuntimeService, podID string, hostPort, contain
256
254
257
255
By ("check the content of " + url )
258
256
257
+ respChan := make (chan * http.Response , 1 )
258
+ defer close (respChan )
259
+
259
260
Eventually (func () error {
260
- resp , err = http .Get (url )
261
- return err
261
+ ctx , cancel := context .WithTimeout (context .Background (), time .Minute )
262
+ defer cancel ()
263
+
264
+ req , err := http .NewRequestWithContext (ctx , http .MethodGet , url , http .NoBody )
265
+ if err != nil {
266
+ return err
267
+ }
268
+
269
+ resp , err := http .DefaultClient .Do (req )
270
+ if err != nil {
271
+ return err
272
+ }
273
+ defer resp .Body .Close ()
274
+ respChan <- resp
275
+ return nil
262
276
}, time .Minute , time .Second ).Should (BeNil ())
263
277
278
+ resp := <- respChan
264
279
Expect (resp .StatusCode ).To (Equal (200 ), "The status code of response should be 200." )
265
280
framework .Logf ("check port mapping succeed" )
266
281
}
0 commit comments