From 4e302c66a1964efbaad0bdf9b47bfa6727dd9eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20S=C4=99k?= Date: Sun, 30 Jun 2019 22:57:54 +0200 Subject: [PATCH] #28 Return GroovyScriptExecutionFailed error --- pkg/controller/jenkins/client/script.go | 9 ++++++++- pkg/controller/jenkins/client/script_test.go | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/pkg/controller/jenkins/client/script.go b/pkg/controller/jenkins/client/script.go index 6c66b8c9..61077133 100644 --- a/pkg/controller/jenkins/client/script.go +++ b/pkg/controller/jenkins/client/script.go @@ -10,6 +10,13 @@ import ( "github.com/pkg/errors" ) +// GroovyScriptExecutionFailed is custom error type which indicates passed groovy script is invalid +type GroovyScriptExecutionFailed struct{} + +func (e GroovyScriptExecutionFailed) Error() string { + return "script execution failed" +} + func (jenkins *jenkins) ExecuteScript(script string) (string, error) { now := time.Now().Unix() verifier := fmt.Sprintf("verifier-%d", now) @@ -38,7 +45,7 @@ func (jenkins *jenkins) executeScript(script string, verifier string) (string, e } if !strings.Contains(output, verifier) { - return output, errors.Errorf("script execution failed, logs '%s'", output) + return output, &GroovyScriptExecutionFailed{} } return output, nil diff --git a/pkg/controller/jenkins/client/script_test.go b/pkg/controller/jenkins/client/script_test.go index 202c084f..1a8092c5 100644 --- a/pkg/controller/jenkins/client/script_test.go +++ b/pkg/controller/jenkins/client/script_test.go @@ -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 'some exception stack trace without verifier'", logs) + assert.EqualError(t, err, "script execution failed", logs) assert.Equal(t, response, logs) }) t.Run("throw 500", func(t *testing.T) {