From fa68c13159367f27238a1674588bd2d7ba04180b Mon Sep 17 00:00:00 2001 From: Jan De Dobbeleer Date: Sun, 24 Apr 2022 17:01:15 +0200 Subject: [PATCH] fix(env): do not succeed failed HTTP requests --- src/environment/shell.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/environment/shell.go b/src/environment/shell.go index 7daa72de..6dbb459e 100644 --- a/src/environment/shell.go +++ b/src/environment/shell.go @@ -606,6 +606,13 @@ func (env *ShellEnvironment) HTTPRequest(targetURL string, timeout int, requestM env.log(Error, "HTTPRequest", err.Error()) return nil, err } + // anything inside the range [200, 299] is considered a success + if response.StatusCode >= 200 && response.StatusCode < 300 { + message := "HTTP status code " + strconv.Itoa(response.StatusCode) + err := errors.New(message) + env.log(Error, "HTTPRequest", message) + return nil, err + } defer response.Body.Close() body, err := ioutil.ReadAll(response.Body) if err != nil {