You've already forked sap-jenkins-library
mirror of
https://github.com/SAP/jenkins-library.git
synced 2025-09-16 09:26:22 +02:00
[golangBuild] Add better error logging to isMainPackage
(#5308)
Co-authored-by: Ashly Mathew <ashly.mathew@sap.com> Co-authored-by: Googlom <36107508+Googlom@users.noreply.github.com>
This commit is contained in:
@@ -570,7 +570,7 @@ func isMainPackage(utils golangBuildUtils, pkg string) (bool, error) {
|
||||
utils.Stderr(outBuffer)
|
||||
err := utils.RunExecutable("go", "list", "-f", "{{ .Name }}", pkg)
|
||||
if err != nil {
|
||||
return false, err
|
||||
return false, fmt.Errorf("%w: %s", err, outBuffer.String())
|
||||
}
|
||||
|
||||
if outBuffer.String() != "main" {
|
||||
|
@@ -4,6 +4,7 @@
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
@@ -871,6 +872,19 @@ func TestRunGolangBuildPerArchitecture(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestIsMainPackageError(t *testing.T) {
|
||||
utils := newGolangBuildTestsUtils()
|
||||
utils.ShouldFailOnCommand = map[string]error{
|
||||
"go list -f {{ .Name }} package/foo": errors.New("some error"),
|
||||
}
|
||||
utils.StdoutReturn = map[string]string{
|
||||
"go list -f {{ .Name }} package/foo": "some specific error log",
|
||||
}
|
||||
ok, err := isMainPackage(utils, "package/foo")
|
||||
assert.False(t, ok)
|
||||
assert.EqualError(t, err, "some error: some specific error log")
|
||||
}
|
||||
|
||||
func TestPrepareGolangEnvironment(t *testing.T) {
|
||||
modTestFile := `
|
||||
module private.example.com/m
|
||||
|
Reference in New Issue
Block a user