aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/rosa.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-01-27 01:16:21 +0900
committerOphestra <cat@gensokyo.uk>2026-01-27 01:23:50 +0900
commiteb67e5e0a8821058fed782bf9c90b45c793036a5 (patch)
tree7c115251881b0832309967404206a417cfb332c7 /internal/rosa/rosa.go
parent948afe33e5006f7e37e24bbc69be2e527a07ddb3 (diff)
internal/pkg: exclusive artifacts
This alleviates scheduler overhead when curing many artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/rosa.go')
-rw-r--r--internal/rosa/rosa.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/internal/rosa/rosa.go b/internal/rosa/rosa.go
index df1ed9f8..6b092fdf 100644
--- a/internal/rosa/rosa.go
+++ b/internal/rosa/rosa.go
@@ -176,6 +176,7 @@ var absCureScript = fhs.AbsUsrBin.Append(".cure-script")
// New returns a [pkg.Artifact] compiled on this toolchain.
func (t Toolchain) New(
name string,
+ exclusive bool,
extra []pkg.Artifact,
checksum *pkg.Checksum,
env []string,
@@ -206,7 +207,7 @@ func (t Toolchain) New(
args[0] = "bash"
support = slices.Concat([]pkg.Artifact{
cureEtc{},
- toolchainBusybox.New("stage3-"+version, nil, nil, nil, `
+ toolchainBusybox.New("stage3-"+version, false, nil, nil, nil, `
tar -C /work -xf /usr/src/stage3.tar.xz
rm -rf /work/dev/ /work/proc/
ln -vs ../usr/bin /work/bin
@@ -258,7 +259,7 @@ ln -vs ../usr/bin /work/bin
}
return pkg.NewExec(
- name, checksum, pkg.ExecTimeoutMax,
+ name, checksum, pkg.ExecTimeoutMax, exclusive,
fhs.AbsRoot, env,
path, args,
@@ -307,7 +308,7 @@ cat /usr/src/` + name + `-patches/* | \
`
aname += "-patched"
}
- return t.New(aname, stage3Concat(t, []pkg.Artifact{},
+ return t.New(aname, false, stage3Concat(t, []pkg.Artifact{},
t.Load(Patch),
), nil, nil, script, paths...)
}