aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/build-system/go.scm2
-rw-r--r--guix/build/go-build-system.scm5
2 files changed, 6 insertions, 1 deletions
diff --git a/guix/build-system/go.scm b/guix/build-system/go.scm
index 1e8ecba80c..226688f2d2 100644
--- a/guix/build-system/go.scm
+++ b/guix/build-system/go.scm
@@ -193,6 +193,7 @@ commit hash and its date rather than a proper release tag."
(build-flags ''())
(tests? #t)
(parallel-build? #t)
+ (parallel-tests? #t)
(allow-go-reference? #f)
(system (%current-system))
(goarch #f)
@@ -224,6 +225,7 @@ commit hash and its date rather than a proper release tag."
#:build-flags #$build-flags
#:tests? #$tests?
#:parallel-build? #$parallel-build?
+ #:parallel-tests? #$parallel-tests?
#:allow-go-reference? #$allow-go-reference?
#:inputs #$(input-tuples->gexp inputs)))))
diff --git a/guix/build/go-build-system.scm b/guix/build/go-build-system.scm
index 160323b65e..8aa8a17495 100644
--- a/guix/build/go-build-system.scm
+++ b/guix/build/go-build-system.scm
@@ -279,9 +279,12 @@ unpacking."
(invoke "go" "env"))))
;; Can this also install commands???
-(define* (check #:key tests? import-path #:allow-other-keys)
+(define* (check #:key tests? import-path (parallel-tests? #t)
+ #:allow-other-keys)
"Run the tests for the package named by IMPORT-PATH."
(when tests?
+ (let* ((njobs (if parallel-tests? (parallel-job-count) 1)))
+ (setenv "GOMAXPROCS" (number->string njobs)))
(invoke "go" "test" import-path))
#t)