Improve execute groovy script error logging

This commit is contained in:
Tomasz Sęk 2019-06-16 22:38:39 +02:00
parent b399decdce
commit 144d0245f2
No known key found for this signature in database
GPG Key ID: DC356D23F6A644D0
2 changed files with 5 additions and 5 deletions

View File

@ -30,15 +30,15 @@ func (jenkins *jenkins) executeScript(script string, verifier string) (string, e
r, err := jenkins.Requester.Do(ar, &output, parameters)
if err != nil {
return "", errors.Wrap(err, "couldn't execute groovy script")
return "", errors.Wrapf(err, "couldn't execute groovy script, logs '%s'", output)
}
if r.StatusCode != http.StatusOK {
return output, errors.Errorf("invalid status code '%d'", r.StatusCode)
return output, errors.Errorf("invalid status code '%d', logs '%s'", r.StatusCode, output)
}
if !strings.Contains(output, verifier) {
return output, errors.New("script execution failed")
return output, errors.Errorf("script execution failed, logs '%s'", output)
}
return output, nil

View File

@ -62,7 +62,7 @@ func Test_ExecuteScript(t *testing.T) {
script := "some groovy code"
logs, err := jenkinsClient.executeScript(script, verifier)
assert.EqualError(t, err, "script execution failed", logs)
assert.EqualError(t, err, "script execution failed, logs 'some exception stack trace without verifier'", logs)
assert.Equal(t, response, logs)
})
t.Run("throw 500", func(t *testing.T) {
@ -84,6 +84,6 @@ func Test_ExecuteScript(t *testing.T) {
script := "some groovy code"
logs, err := jenkinsClient.executeScript(script, verifier)
assert.EqualError(t, err, "invalid status code '500'", logs)
assert.EqualError(t, err, "invalid status code '500', logs ''", logs)
})
}