make pods e2e retry getting logs from web-sockets
Signed-off-by: Vishnu kannan <vishnuk@google.com>
This commit is contained in:
		@@ -491,28 +491,31 @@ var _ = framework.KubeDescribe("Pods", func() {
 | 
				
			|||||||
		defer ws.Close()
 | 
							defer ws.Close()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		buf := &bytes.Buffer{}
 | 
							buf := &bytes.Buffer{}
 | 
				
			||||||
		for {
 | 
							Eventually(func() error {
 | 
				
			||||||
			var msg []byte
 | 
								for {
 | 
				
			||||||
			if err := websocket.Message.Receive(ws, &msg); err != nil {
 | 
									var msg []byte
 | 
				
			||||||
				if err == io.EOF {
 | 
									if err := websocket.Message.Receive(ws, &msg); err != nil {
 | 
				
			||||||
					break
 | 
										if err == io.EOF {
 | 
				
			||||||
 | 
											break
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										framework.Failf("Failed to read completely from websocket %s: %v", url.String(), err)
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
				framework.Failf("Failed to read completely from websocket %s: %v", url.String(), err)
 | 
									if len(msg) == 0 {
 | 
				
			||||||
 | 
										continue
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if msg[0] != 1 {
 | 
				
			||||||
 | 
										framework.Failf("Got message from server that didn't start with channel 1 (STDOUT): %v", msg)
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									buf.Write(msg[1:])
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			if len(msg) == 0 {
 | 
								if buf.Len() == 0 {
 | 
				
			||||||
				continue
 | 
									return fmt.Errorf("Unexpected output from server")
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			if msg[0] != 1 {
 | 
								if !strings.Contains(buf.String(), "nameserver") {
 | 
				
			||||||
				framework.Failf("Got message from server that didn't start with channel 1 (STDOUT): %v", msg)
 | 
									return fmt.Errorf("Expected to find 'nameserver' in %q", buf.String())
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			buf.Write(msg[1:])
 | 
								return nil
 | 
				
			||||||
		}
 | 
							}, time.Minute, 10*time.Second).Should(BeNil())
 | 
				
			||||||
		if buf.Len() == 0 {
 | 
					 | 
				
			||||||
			framework.Failf("Unexpected output from server")
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
		if !strings.Contains(buf.String(), "nameserver") {
 | 
					 | 
				
			||||||
			framework.Failf("Expected to find 'nameserver' in %q", buf.String())
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	It("should support retrieving logs from the container over websockets", func() {
 | 
						It("should support retrieving logs from the container over websockets", func() {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user