Improve execute groovy script error logging
This commit is contained in:
parent
b399decdce
commit
144d0245f2
|
|
@ -30,15 +30,15 @@ func (jenkins *jenkins) executeScript(script string, verifier string) (string, e
|
||||||
|
|
||||||
r, err := jenkins.Requester.Do(ar, &output, parameters)
|
r, err := jenkins.Requester.Do(ar, &output, parameters)
|
||||||
if err != nil {
|
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 {
|
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) {
|
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
|
return output, nil
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,7 @@ func Test_ExecuteScript(t *testing.T) {
|
||||||
|
|
||||||
script := "some groovy code"
|
script := "some groovy code"
|
||||||
logs, err := jenkinsClient.executeScript(script, verifier)
|
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)
|
assert.Equal(t, response, logs)
|
||||||
})
|
})
|
||||||
t.Run("throw 500", func(t *testing.T) {
|
t.Run("throw 500", func(t *testing.T) {
|
||||||
|
|
@ -84,6 +84,6 @@ func Test_ExecuteScript(t *testing.T) {
|
||||||
|
|
||||||
script := "some groovy code"
|
script := "some groovy code"
|
||||||
logs, err := jenkinsClient.executeScript(script, verifier)
|
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)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue