aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/build/build.go
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2024-08-21 14:28:06 +0200
committerAleksandr Nogikh <nogikh@google.com>2024-08-22 09:49:03 +0000
commitea1cd5ff3029315c1f89b98b820ceeebfba0e4df (patch)
treeead4b8475abce2fecb5a30f3cc1d6d62a2bac982 /pkg/build/build.go
parentaa99fc3349e97ea596c31624efde306de4136241 (diff)
pkg/build: introduce the build jobs parameter
This parameter defines the number of cores dedicated to the kernel build process. By default, it's equal to the number of available CPUs.
Diffstat (limited to 'pkg/build/build.go')
-rw-r--r--pkg/build/build.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/pkg/build/build.go b/pkg/build/build.go
index 4d6e3bce3..2274ceb8e 100644
--- a/pkg/build/build.go
+++ b/pkg/build/build.go
@@ -12,6 +12,7 @@ import (
"os"
"path/filepath"
"regexp"
+ "runtime"
"strings"
"time"
@@ -37,6 +38,7 @@ type Params struct {
SysctlFile string
Config []byte
Tracer debugtracer.DebugTracer
+ BuildJobs int // If 0, all CPUs will be used.
Build json.RawMessage
}
@@ -71,6 +73,9 @@ func Image(params Params) (details ImageDetails, err error) {
if params.Tracer == nil {
params.Tracer = &debugtracer.NullTracer{}
}
+ if params.BuildJobs == 0 {
+ params.BuildJobs = runtime.NumCPU()
+ }
var builder builder
builder, err = getBuilder(params.TargetOS, params.TargetArch, params.VMType)
if err != nil {