Skip to content

Commit 4f7f81b

Browse files
dvaldiviaAlevsk
andauthored
Improve error handling on proxy (#911)
Signed-off-by: Daniel Valdivia <18384552+dvaldivia@users.noreply.github.com> Co-authored-by: Lenin Alevski <alevsk.8772@gmail.com>
1 parent 64154ca commit 4f7f81b

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

operatorapi/proxy.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"crypto/sha1"
2222
"crypto/tls"
2323
"encoding/json"
24+
"errors"
2425
"fmt"
2526
"io"
2627
"log"
@@ -145,6 +146,12 @@ func serveProxy(responseWriter http.ResponseWriter, req *http.Request) {
145146
return
146147
}
147148

149+
if loginResp.StatusCode < 200 && loginResp.StatusCode <= 299 {
150+
log.Println(fmt.Printf("Status: %d. Couldn't complete login", loginResp.StatusCode))
151+
responseWriter.WriteHeader(500)
152+
return
153+
}
154+
148155
for _, c := range loginResp.Cookies() {
149156
if c.Name == "token" {
150157
tenantCookie = c
@@ -162,6 +169,11 @@ func serveProxy(responseWriter http.ResponseWriter, req *http.Request) {
162169
}
163170
defer loginResp.Body.Close()
164171
}
172+
if tenantCookie == nil {
173+
log.Println(errors.New("couldn't login to tenant and get cookie"))
174+
responseWriter.WriteHeader(500)
175+
return
176+
}
165177

166178
targetURL, err := url2.Parse(tenantURL)
167179
if err != nil {

0 commit comments

Comments
 (0)