Skip to content

Commit b0447b7

Browse files
fix: add arch_dependent and os_dependent flags to buildx module exten… (#1)
Porting from: bazel-contrib/rules_oci#841 The buildx repository rule generate a lockfile that has a platform specific `configure_buildx` block that breaks when used across platforms (ie: a MODULE.bazel.lock generated on OSX breaks on Linux_amd64). ex: Module.bazel.lock ```diff "buildx": { "repoRuleId": "@@//build_utils/docker:buildx.bzl%configure_buildx", "attributes": { + "buildx": "@@+buildx+buildx_darwin-arm64//file:downloaded", "buildx_platforms": { "@@+buildx+buildx_linux-amd64//file:file": "@bazel_tools//src/conditions:linux_x86_64", "@@+buildx+buildx_linux-arm64//file:file": "@bazel_tools//src/conditions:linux_aarch64", "@@+buildx+buildx_darwin-amd64//file:file": "@bazel_tools//src/conditions:darwin_x86_64", "@@+buildx+buildx_darwin-arm64//file:file": "@bazel_tools//src/conditions:darwin_arm64" } } } ``` This specifies `arch_dependent` and `os_dependent` on `module_extension` to workaround this issue.
1 parent ed04c30 commit b0447b7

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

buildx/extensions.bzl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,4 +60,6 @@ def _toolchain_extension(module_ctx):
6060
buildx = module_extension(
6161
implementation = _toolchain_extension,
6262
tag_classes = {"toolchains": buildx_toolchain},
63+
arch_dependent = True,
64+
os_dependent = True,
6365
)

0 commit comments

Comments
 (0)