8000 fix: use exec nodejs for splitter by thesayyn · Pull Request #2142 · aspect-build/rules_js · GitHub
[go: up one dir, main page]

Skip to content

fix: use exec nodejs for splitter #2142

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Mar 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ bazel_dep(name = "platforms", version = "0.0.5")
bazel_dep(name = "rules_nodejs", version = "6.3.0")

node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
use_repo(node, "nodejs_toolchains")
use_repo(node, "nodejs_darwin_amd64")
use_repo(node, "nodejs_darwin_arm64")
use_repo(node, "nodejs_linux_amd64")
Expand Down Expand Up @@ -63,7 +64,6 @@ node_dev = use_extension(
"node",
dev_dependency = True,
)
use_repo(node_dev, "nodejs_toolchains")
use_repo(node_dev, "node20_linux_amd64")
use_repo(node_dev, "node20_darwin_arm64")
use_repo(node_dev, "node20_darwin_amd64")
Expand Down
11 changes: 7 additions & 4 deletions js/private/js_image_layer.bzl
8000
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ load("@bazel_skylib//lib:paths.bzl", "paths")

_DEFAULT_LAYER_GROUPS = {
"node": "\\/js\\/private\\/node-patches\\/|\\/bin\\/nodejs\\/",
"package_store_3p": "\\/\\.aspect_rules_js\\/(?!.*@0\\.0\\.0).*\\/node_modules",
"package_store_1p": "\\.aspect_rules_js\\/.*@0\\.0\\.0\\/node_modules",
"package_store_3p": "\\.aspect_rules_js\\/.*\\/node_modules",
"node_modules": "\\/node_modules\\/",
"app": "", # empty means just match anything.
}
Expand Down Expand Up @@ -392,7 +392,8 @@ def _run_splitter(ctx, runfiles_dir, files, entries_json, layer_groups):
[entries_json, splitter],
transitive = [files],
)
nodeinfo = ctx.toolchains["@rules_nodejs//nodejs:toolchain_type"].nodeinfo

nodeinfo = ctx.attr._current_node[platform_common.ToolchainInfo].nodeinfo
ctx.actions.run(
inputs = inputs,
arguments = [splitter.path],
Expand All @@ -401,7 +402,6 @@ def _run_splitter(ctx, runfiles_dir, files, entries_json, layer_groups):
executable = nodeinfo.node,
progress_message = "Computing Layer Groups %{label}",
mnemonic = "JsImageLayerGroups",
toolchain = "@rules_nodejs//nodejs:toolchain_type",
)

return expected_layer_groups
Expand Down Expand Up @@ -582,6 +582,10 @@ js_image_layer_lib = struct(
default = "//js/private:js_image_layer.mjs",
allow_single_file = True,
),
"_current_node": attr.label(
default = "@nodejs_toolchains//:resolved_toolchain",
cfg = "exec",
),
"binary": attr.label(
mandatory = True,
cfg = _js_image_layer_transition,
Expand Down Expand Up @@ -630,6 +634,5 @@ js_image_layer = rule(
doc = _DOC,
toolchains = [
tar_lib.toolchain_type,
"@rules_nodejs//nodejs:toolchain_type",
],
)
2 changes: 1 addition & 1 deletion js/private/test/image/asserts.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ def assert_tar_listing(name, actual, expected):

layers = [
"node",
"package_store_1p",
"package_store_3p",
"package_store_1p",
"node_modules",
"app",
]
Expand Down
2 changes: 1 addition & 1 deletion js/private/test/image/checksum_test.bzlmod.expected
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
30d68ec624b56b9ed26b8c4158e763ef426755a58eb75243717e4425f4d78f76 js/private/test/image/cksum_node
457b4233e0d41c0c0d24f1c4d553a18f1195f5b380628e2465943c600af37278 js/private/test/image/cksum_package_store_1p
9cfeb34dbf744301fa25468020c94c34c5ac6d7c861bd787a4e46a4f9824c7fd js/private/test/image/cksum_package_store_3p
457b4233e0d41c0c0d24f1c4d553a18f1195f5b380628e2465943c600af37278 js/private/test/image/cksum_package_store_1p
64cd949f79838b5175573341bd2f3915134c13721f019aa774ddb25849b4d266 js/private/test/image/cksum_node_modules
0