metropolis/node/build: allow impure code in root if race checking is enabled
This allows us to build the root filesystem with race detection enabled.
Change-Id: I370ce2114090f828f0d9843fd4a7dc87c47bd153
Reviewed-on: https://review.monogon.dev/c/monogon/+/1835
Reviewed-by: Leopold Schabel <leo@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/node/build/def.bzl b/metropolis/node/build/def.bzl
index 2438deb..e0aa548 100644
--- a/metropolis/node/build/def.bzl
+++ b/metropolis/node/build/def.bzl
@@ -18,14 +18,19 @@
"""
Transition that enables pure, static build of Go binaries.
"""
+ race = settings['@io_bazel_rules_go//go/config:race']
+ pure = not race
+
return {
- "@io_bazel_rules_go//go/config:pure": True,
+ "@io_bazel_rules_go//go/config:pure": pure,
"@io_bazel_rules_go//go/config:static": True,
}
build_pure_transition = transition(
implementation = _build_pure_transition_impl,
- inputs = [],
+ inputs = [
+ "@io_bazel_rules_go//go/config:race",
+ ],
outputs = [
"@io_bazel_rules_go//go/config:pure",
"@io_bazel_rules_go//go/config:static",