Skip to content

Commit

Permalink
Test BCR example in minimum bazel (bazelbuild#2613)
Browse files Browse the repository at this point in the history
  • Loading branch information
illicitonion authored Apr 15, 2024
1 parent a58d952 commit f960192
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 7 deletions.
18 changes: 16 additions & 2 deletions .bazelci/presubmit.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
minimum_bazel_version: &minimum_bazel_version "6.3.0"
aspects_flags: &aspects_flags
- "--config=rustfmt"
- "--config=clippy"
Expand Down Expand Up @@ -232,15 +233,15 @@ tasks:
ubuntu1804:
name: "Min Bazel Version"
# If updating the minimum bazel version, please also update /docs/index.md
bazel: "6.3.0"
bazel: *minimum_bazel_version
platform: ubuntu1804
build_targets: *default_linux_targets
test_targets: *default_linux_targets
coverage_targets: *default_linux_targets
post_shell_commands: *coverage_validation_post_shell_commands
ubuntu1804_with_aspects:
name: "Min Bazel Version With Aspects"
bazel: "6.3.0"
bazel: *minimum_bazel_version
platform: ubuntu1804
build_targets: *default_linux_targets
test_targets: *default_linux_targets
Expand Down Expand Up @@ -668,6 +669,19 @@ tasks:
- "@rules_rust//tools/rust_analyzer:gen_rust_project"
test_targets:
- "//..."
ubuntu2004_bzlmod_minimum_bazel_bcr:
name: bzlmod BCR presubmit minimal bazel
bazel: *minimum_bazel_version
platform: ubuntu2004
working_directory: examples/bzlmod/hello_world
test_flags: *bzlmod_flags
shell_commands:
- "rm MODULE.bazel.lock"
run_targets:
- "//third-party:vendor"
- "@rules_rust//tools/rust_analyzer:gen_rust_project"
test_targets:
- "//..."
macos_bzlmod_bcr:
name: bzlmod BCR presubmit
platform: macos
Expand Down
6 changes: 6 additions & 0 deletions .bcr/presubmit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ bcr_test_module:
name: "Run test module"
platform: ${{ platform }}
bazel: ${{ bazel }}
# Remove the lockfile because we generate on Bazel 7, but test on Bazel 6 which may not be able to parse a future-generated lockfile.
shell_commands:
- "rm MODULE.bazel.lock"
run_targets:
- "//third-party:vendor"
- "@rules_rust//tools/rust_analyzer:gen_rust_project"
Expand All @@ -25,6 +28,9 @@ bcr_test_module_windows:
name: "Run test module"
platform: windows
bazel: ${{ bazel }}
# Remove the lockfile because we generate on Bazel 7, but test on Bazel 6 which may not be able to parse a future-generated lockfile.
shell_commands:
- "rm MODULE.bazel.lock"
run_targets:
- "//third-party:vendor"
build_targets:
Expand Down
14 changes: 9 additions & 5 deletions rust/extensions.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -171,16 +171,20 @@ def _rust_host_tools_impl(module_ctx):
**host_tools
)

metadata_kwargs = {}
if bazel_features.external_deps.extension_metadata_has_reproducible:
return module_ctx.extension_metadata(reproducible = True)
else:
return None
metadata_kwargs["reproducible"] = True
return module_ctx.extension_metadata(**metadata_kwargs)

_conditional_rust_host_tools_args = {
"arch_dependent": True,
"os_dependent": True,
} if bazel_features.external_deps.module_extension_has_os_arch_dependent else {}

rust_host_tools = module_extension(
implementation = _rust_host_tools_impl,
tag_classes = {
"host_tools": _RUST_HOST_TOOLS_TAG,
},
os_dependent = True,
arch_dependent = True,
**_conditional_rust_host_tools_args
)

0 comments on commit f960192

Please sign in to comment.