Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
65404a1883 | ||
|
|
f317a618b8 | ||
|
|
683de60603 |
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
|||||||
USE_BAZEL_VERSION: 9.0.0
|
USE_BAZEL_VERSION: 9.0.0
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: bazel-contrib/setup-bazel@0.15.0
|
- uses: bazel-contrib/setup-bazel@0.18.0
|
||||||
with:
|
with:
|
||||||
bazelisk-cache: true
|
bazelisk-cache: true
|
||||||
repository-cache: true
|
repository-cache: true
|
||||||
@@ -36,6 +36,8 @@ jobs:
|
|||||||
disk-cache: ci-${{ matrix.phase8_target }}
|
disk-cache: ci-${{ matrix.phase8_target }}
|
||||||
cache-save: ${{ github.event_name != 'pull_request' }}
|
cache-save: ${{ github.event_name != 'pull_request' }}
|
||||||
- name: Run tests (${{ matrix.phase8_target }})
|
- name: Run tests (${{ matrix.phase8_target }})
|
||||||
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
echo "Phase 8 target: ${{ matrix.phase8_target }}"
|
echo "Phase 8 target: ${{ matrix.phase8_target }}"
|
||||||
bazel test //tests/...
|
targets="$(./tests/ci_test/phase8_ci_targets.sh "${{ matrix.phase8_target }}")"
|
||||||
|
bazel test ${targets}
|
||||||
|
|||||||
2
.github/workflows/pages.yml
vendored
2
.github/workflows/pages.yml
vendored
@@ -30,7 +30,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- uses: bazel-contrib/setup-bazel@0.15.0
|
- uses: bazel-contrib/setup-bazel@0.18.0
|
||||||
with:
|
with:
|
||||||
bazelisk-cache: true
|
bazelisk-cache: true
|
||||||
repository-cache: true
|
repository-cache: true
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module(
|
module(
|
||||||
name = "rules_bun",
|
name = "rules_bun",
|
||||||
version = "1.0.0",
|
version = "1.0.1",
|
||||||
)
|
)
|
||||||
|
|
||||||
# Core ruleset dependencies.
|
# Core ruleset dependencies.
|
||||||
|
|||||||
4
MODULE.bazel.lock
generated
4
MODULE.bazel.lock
generated
@@ -193,7 +193,7 @@
|
|||||||
"//bun:extensions.bzl%bun": {
|
"//bun:extensions.bzl%bun": {
|
||||||
"general": {
|
"general": {
|
||||||
"bzlTransitiveDigest": "314UOH4dQIGBHGpxCwA7yzI++E2J3bjIc20m5MZhM7U=",
|
"bzlTransitiveDigest": "314UOH4dQIGBHGpxCwA7yzI++E2J3bjIc20m5MZhM7U=",
|
||||||
"usagesDigest": "F7vNx1FkssnJKNa2AZDuwHKkH7+IjJNX42lRAaJhhKE=",
|
"usagesDigest": "Pk8TCTd2EBKQ8R+VSF0M7sU9apLb/5tBy/dP2pjs3AU=",
|
||||||
"recordedInputs": [
|
"recordedInputs": [
|
||||||
"REPO_MAPPING:,bazel_tools bazel_tools"
|
"REPO_MAPPING:,bazel_tools bazel_tools"
|
||||||
],
|
],
|
||||||
@@ -284,7 +284,7 @@
|
|||||||
"//bun:extensions.bzl%bun_install": {
|
"//bun:extensions.bzl%bun_install": {
|
||||||
"general": {
|
"general": {
|
||||||
"bzlTransitiveDigest": "314UOH4dQIGBHGpxCwA7yzI++E2J3bjIc20m5MZhM7U=",
|
"bzlTransitiveDigest": "314UOH4dQIGBHGpxCwA7yzI++E2J3bjIc20m5MZhM7U=",
|
||||||
"usagesDigest": "5mKuORKUFhw+/OMHQF0I8Ngq0GV2eqMaOTDmyqaQa8M=",
|
"usagesDigest": "2qW6PUxkK7CgK8mcsgVvlIbuJS/cBBkw5mylpKlqftE=",
|
||||||
"recordedInputs": [
|
"recordedInputs": [
|
||||||
"REPO_MAPPING:,bazel_tools bazel_tools"
|
"REPO_MAPPING:,bazel_tools bazel_tools"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ Release announcements should provide a copy-pasteable module snippet in the
|
|||||||
standard ruleset form:
|
standard ruleset form:
|
||||||
|
|
||||||
```starlark
|
```starlark
|
||||||
bazel_dep(name = "rules_bun", version = "1.0.0")
|
bazel_dep(name = "rules_bun", version = "1.0.1")
|
||||||
```
|
```
|
||||||
|
|
||||||
Then add the Bun repositories and register the toolchains in `MODULE.bazel`:
|
Then add the Bun repositories and register the toolchains in `MODULE.bazel`:
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
package(default_visibility = ["//visibility:public"])
|
package(default_visibility = ["//visibility:public"])
|
||||||
|
|
||||||
|
exports_files(["nested_bazel_test.sh"])
|
||||||
|
|||||||
@@ -197,11 +197,13 @@ sh_test(
|
|||||||
name = "bundle_sourcemap_shape_test",
|
name = "bundle_sourcemap_shape_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
srcs = ["verify_sourcemap_shape.sh"],
|
srcs = ["verify_sourcemap_shape.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
data = [
|
data = [
|
||||||
"BUILD.bazel",
|
"BUILD.bazel",
|
||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
"//bun:repo_runtime_files",
|
"//bun:repo_runtime_files",
|
||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
"//tests/bundle_test/sourcemap_case:BUILD.bazel",
|
"//tests/bundle_test/sourcemap_case:BUILD.bazel",
|
||||||
"//tests/bundle_test/sourcemap_case:entry.ts",
|
"//tests/bundle_test/sourcemap_case:entry.ts",
|
||||||
],
|
],
|
||||||
@@ -236,6 +238,7 @@ sh_test(
|
|||||||
name = "bun_build_compile_flag_shape_test",
|
name = "bun_build_compile_flag_shape_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
srcs = ["verify_flag_aquery.sh"],
|
srcs = ["verify_flag_aquery.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
data = [
|
data = [
|
||||||
"BUILD.bazel",
|
"BUILD.bazel",
|
||||||
"cli.ts",
|
"cli.ts",
|
||||||
@@ -246,6 +249,7 @@ sh_test(
|
|||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
"//bun:repo_runtime_files",
|
"//bun:repo_runtime_files",
|
||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
],
|
],
|
||||||
env_inherit = ["PATH"],
|
env_inherit = ["PATH"],
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,19 +1,15 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
bazel_cmd=(bazel)
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
bazel_cmd=(bazelisk)
|
setup_nested_bazel_cmd
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
find_workspace_root() {
|
find_workspace_root() {
|
||||||
local candidate
|
local candidate
|
||||||
local module_path
|
local module_path
|
||||||
local script_dir
|
local search_dir
|
||||||
|
|
||||||
for candidate in \
|
for candidate in \
|
||||||
"${TEST_SRCDIR:-}/${TEST_WORKSPACE:-}" \
|
"${TEST_SRCDIR:-}/${TEST_WORKSPACE:-}" \
|
||||||
@@ -32,8 +28,8 @@ find_workspace_root() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
search_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
candidate="$(cd "${script_dir}/../.." && pwd -P)"
|
candidate="$(cd "${search_dir}/../.." && pwd -P)"
|
||||||
if [[ -f "${candidate}/MODULE.bazel" ]]; then
|
if [[ -f "${candidate}/MODULE.bazel" ]]; then
|
||||||
printf '%s\n' "${candidate}"
|
printf '%s\n' "${candidate}"
|
||||||
return 0
|
return 0
|
||||||
@@ -45,6 +41,14 @@ find_workspace_root() {
|
|||||||
|
|
||||||
rules_bun_root="$(find_workspace_root)"
|
rules_bun_root="$(find_workspace_root)"
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${rules_bun_root}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
run_aquery() {
|
run_aquery() {
|
||||||
local mnemonic="$1"
|
local mnemonic="$1"
|
||||||
local target="$2"
|
local target="$2"
|
||||||
|
|||||||
@@ -1,19 +1,15 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
bazel_cmd=(bazel)
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
bazel_cmd=(bazelisk)
|
setup_nested_bazel_cmd
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
find_workspace_root() {
|
find_workspace_root() {
|
||||||
local candidate
|
local candidate
|
||||||
local module_path
|
local module_path
|
||||||
local script_dir
|
local search_dir
|
||||||
|
|
||||||
for candidate in \
|
for candidate in \
|
||||||
"${TEST_SRCDIR:-}/${TEST_WORKSPACE:-}" \
|
"${TEST_SRCDIR:-}/${TEST_WORKSPACE:-}" \
|
||||||
@@ -32,8 +28,8 @@ find_workspace_root() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
search_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
candidate="$(cd "${script_dir}/../.." && pwd -P)"
|
candidate="$(cd "${search_dir}/../.." && pwd -P)"
|
||||||
if [[ -f "${candidate}/MODULE.bazel" ]]; then
|
if [[ -f "${candidate}/MODULE.bazel" ]]; then
|
||||||
printf '%s\n' "${candidate}"
|
printf '%s\n' "${candidate}"
|
||||||
return 0
|
return 0
|
||||||
@@ -45,6 +41,14 @@ find_workspace_root() {
|
|||||||
|
|
||||||
rules_bun_root="$(find_workspace_root)"
|
rules_bun_root="$(find_workspace_root)"
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${rules_bun_root}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
bundle_output="$(
|
bundle_output="$(
|
||||||
cd "${rules_bun_root}" &&
|
cd "${rules_bun_root}" &&
|
||||||
"${bazel_cmd[@]}" aquery 'mnemonic("BunBundle", //tests/bundle_test/sourcemap_case:sourcemap_bundle)' --output=textproto
|
"${bazel_cmd[@]}" aquery 'mnemonic("BunBundle", //tests/bundle_test/sourcemap_case:sourcemap_bundle)' --output=textproto
|
||||||
|
|||||||
@@ -8,6 +8,14 @@ sh_test(
|
|||||||
data = ["//.github/workflows:ci.yml"],
|
data = ["//.github/workflows:ci.yml"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
sh_test(
|
||||||
|
name = "phase8_ci_targets_test",
|
||||||
|
size = "small",
|
||||||
|
srcs = ["phase8_ci_targets_test.sh"],
|
||||||
|
args = ["$(location :phase8_ci_targets.sh)"],
|
||||||
|
data = [":phase8_ci_targets.sh"],
|
||||||
|
)
|
||||||
|
|
||||||
sh_test(
|
sh_test(
|
||||||
name = "native_wrapper_shape_test",
|
name = "native_wrapper_shape_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
|
|||||||
@@ -22,6 +22,17 @@ check_pattern 'os:[[:space:]]+ubuntu-latest' "missing ubuntu matrix entry"
|
|||||||
check_pattern 'phase8_target:[[:space:]]+linux-x64' "missing linux-x64 matrix target"
|
check_pattern 'phase8_target:[[:space:]]+linux-x64' "missing linux-x64 matrix target"
|
||||||
check_pattern 'os:[[:space:]]+macos-14' "missing macos matrix entry"
|
check_pattern 'os:[[:space:]]+macos-14' "missing macos matrix entry"
|
||||||
check_pattern 'phase8_target:[[:space:]]+darwin-arm64' "missing darwin-arm64 matrix target"
|
check_pattern 'phase8_target:[[:space:]]+darwin-arm64' "missing darwin-arm64 matrix target"
|
||||||
check_pattern 'os:[[:space:]]+windows-latest' "missing windows matrix entry"
|
|
||||||
check_pattern 'phase8_target:[[:space:]]+windows' "missing windows matrix target"
|
has_windows_os=0
|
||||||
|
has_windows_target=0
|
||||||
|
if grep -Eq 'os:[[:space:]]+windows-latest' "${workflow_file}"; then
|
||||||
|
has_windows_os=1
|
||||||
|
fi
|
||||||
|
if grep -Eq 'phase8_target:[[:space:]]+windows' "${workflow_file}"; then
|
||||||
|
has_windows_target=1
|
||||||
|
fi
|
||||||
|
if [[ ${has_windows_os} -ne ${has_windows_target} ]]; then
|
||||||
|
echo "Error: windows matrix entry and windows phase8 target must be added or removed together" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
echo "CI matrix shape checks passed"
|
echo "CI matrix shape checks passed"
|
||||||
|
|||||||
27
tests/ci_test/phase8_ci_targets.sh
Executable file
27
tests/ci_test/phase8_ci_targets.sh
Executable file
@@ -0,0 +1,27 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
phase8_target="${1:-}"
|
||||||
|
if [[ -z ${phase8_target} ]]; then
|
||||||
|
echo "Error: phase8 target required as first argument" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "${phase8_target}" in
|
||||||
|
linux-x64 | darwin-arm64)
|
||||||
|
printf '%s\n' "//tests/..."
|
||||||
|
;;
|
||||||
|
windows)
|
||||||
|
printf '%s\n' \
|
||||||
|
"//tests/binary_test/..." \
|
||||||
|
"//tests/bun_test_test/..." \
|
||||||
|
"//tests/ci_test/..." \
|
||||||
|
"//tests/js_compat_test/..." \
|
||||||
|
"//tests/script_test/..." \
|
||||||
|
"//tests/toolchain_test/..."
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Error: unsupported phase8 target: ${phase8_target}" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
44
tests/ci_test/phase8_ci_targets_test.sh
Executable file
44
tests/ci_test/phase8_ci_targets_test.sh
Executable file
@@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
resolver="${1:-}"
|
||||||
|
if [[ -z ${resolver} ]]; then
|
||||||
|
echo "Error: resolver path required as first argument" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
linux_targets="$("${resolver}" linux-x64)"
|
||||||
|
if [[ ${linux_targets} != "//tests/..." ]]; then
|
||||||
|
echo "Error: linux-x64 should resolve to //tests/..." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
darwin_targets="$("${resolver}" darwin-arm64)"
|
||||||
|
if [[ ${darwin_targets} != "//tests/..." ]]; then
|
||||||
|
echo "Error: darwin-arm64 should resolve to //tests/..." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
windows_targets="$("${resolver}" windows)"
|
||||||
|
expected_windows_targets="$(
|
||||||
|
cat <<'EOF'
|
||||||
|
//tests/binary_test/...
|
||||||
|
//tests/bun_test_test/...
|
||||||
|
//tests/ci_test/...
|
||||||
|
//tests/js_compat_test/...
|
||||||
|
//tests/script_test/...
|
||||||
|
//tests/toolchain_test/...
|
||||||
|
EOF
|
||||||
|
)"
|
||||||
|
if [[ ${windows_targets} != "${expected_windows_targets}" ]]; then
|
||||||
|
echo "Error: unexpected windows targets" >&2
|
||||||
|
printf 'Expected:\n%s\nActual:\n%s\n' "${expected_windows_targets}" "${windows_targets}" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if "${resolver}" unsupported >/dev/null 2>&1; then
|
||||||
|
echo "Error: unsupported phase8 target should fail" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Phase 8 CI targets resolve correctly"
|
||||||
@@ -32,6 +32,14 @@ config_setting(
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
config_setting(
|
||||||
|
name = "windows_x86_64",
|
||||||
|
constraint_values = [
|
||||||
|
"@platforms//os:windows",
|
||||||
|
"@platforms//cpu:x86_64",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
sh_test(
|
sh_test(
|
||||||
name = "bun_install_clean_install_test",
|
name = "bun_install_clean_install_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
@@ -41,6 +49,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -48,6 +57,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
@@ -61,6 +71,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -68,6 +79,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
@@ -97,6 +109,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -104,6 +117,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
@@ -117,6 +131,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -124,18 +139,22 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
|
|
||||||
sh_test(
|
sh_test(
|
||||||
name = "bun_install_workspace_parity_test",
|
name = "bun_install_workspace_parity_test",
|
||||||
|
size = "large",
|
||||||
srcs = ["workspace_parity.sh"],
|
srcs = ["workspace_parity.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
args = select({
|
args = select({
|
||||||
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -143,11 +162,13 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}) + [
|
}) + [
|
||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
"//bun:repo_runtime_files",
|
"//bun:repo_runtime_files",
|
||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
],
|
],
|
||||||
env_inherit = ["PATH"],
|
env_inherit = ["PATH"],
|
||||||
)
|
)
|
||||||
@@ -164,11 +185,13 @@ sh_test(
|
|||||||
name = "bun_install_repeatability_test",
|
name = "bun_install_repeatability_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
srcs = ["repeatability.sh"],
|
srcs = ["repeatability.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
args = select({
|
args = select({
|
||||||
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -176,11 +199,13 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}) + [
|
}) + [
|
||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
"//bun:repo_runtime_files",
|
"//bun:repo_runtime_files",
|
||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
],
|
],
|
||||||
env_inherit = ["PATH"],
|
env_inherit = ["PATH"],
|
||||||
)
|
)
|
||||||
@@ -189,11 +214,13 @@ sh_test(
|
|||||||
name = "bun_install_lifecycle_scripts_test",
|
name = "bun_install_lifecycle_scripts_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
srcs = ["lifecycle_scripts.sh"],
|
srcs = ["lifecycle_scripts.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
args = select({
|
args = select({
|
||||||
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -201,11 +228,13 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}) + [
|
}) + [
|
||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
"//bun:repo_runtime_files",
|
"//bun:repo_runtime_files",
|
||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
],
|
],
|
||||||
env_inherit = ["PATH"],
|
env_inherit = ["PATH"],
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,22 +1,24 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
|
setup_nested_bazel_cmd
|
||||||
|
|
||||||
bun_path="$1"
|
bun_path="$1"
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazel)
|
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazelisk)
|
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
|
||||||
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
||||||
|
|
||||||
workdir="$(mktemp -d)"
|
workdir="$(mktemp -d)"
|
||||||
trap 'rm -rf "${workdir}"' EXIT
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${fixture_dir:-}"
|
||||||
|
rm -rf "${workdir}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
fixture_dir="${workdir}/fixture"
|
fixture_dir="${workdir}/fixture"
|
||||||
mkdir -p "${fixture_dir}"
|
mkdir -p "${fixture_dir}"
|
||||||
|
|||||||
@@ -1,22 +1,24 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
|
setup_nested_bazel_cmd
|
||||||
|
|
||||||
bun_path="$1"
|
bun_path="$1"
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazel)
|
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazelisk)
|
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
|
||||||
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
||||||
|
|
||||||
workdir="$(mktemp -d)"
|
workdir="$(mktemp -d)"
|
||||||
trap 'rm -rf "${workdir}"' EXIT
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${fixture_dir:-}"
|
||||||
|
rm -rf "${workdir}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
fixture_dir="${workdir}/fixture"
|
fixture_dir="${workdir}/fixture"
|
||||||
mkdir -p "${fixture_dir}"
|
mkdir -p "${fixture_dir}"
|
||||||
|
|||||||
@@ -1,22 +1,24 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
|
setup_nested_bazel_cmd
|
||||||
|
|
||||||
bun_path="${1:-bun}"
|
bun_path="${1:-bun}"
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazel)
|
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
|
||||||
bazel_cmd=(bazelisk)
|
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
|
||||||
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
||||||
|
|
||||||
workdir="$(mktemp -d)"
|
workdir="$(mktemp -d)"
|
||||||
trap 'rm -rf "${workdir}"' EXIT
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${bazel_dir:-}"
|
||||||
|
rm -rf "${workdir}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
fixture_dir="${workdir}/fixture"
|
fixture_dir="${workdir}/fixture"
|
||||||
plain_dir="${workdir}/plain"
|
plain_dir="${workdir}/plain"
|
||||||
|
|||||||
@@ -3,4 +3,6 @@ set -euo pipefail
|
|||||||
|
|
||||||
workflow_file="$1"
|
workflow_file="$1"
|
||||||
|
|
||||||
grep -Eq 'bazel test //(tests/)?\.\.\.' "${workflow_file}"
|
grep -Fq './tests/ci_test/phase8_ci_targets.sh "${{ matrix.phase8_target }}"' "${workflow_file}"
|
||||||
|
grep -Fq 'targets="$(./tests/ci_test/phase8_ci_targets.sh "${{ matrix.phase8_target }}")"' "${workflow_file}"
|
||||||
|
grep -Fq 'bazel test ${targets}' "${workflow_file}"
|
||||||
|
|||||||
24
tests/nested_bazel_test.sh
Normal file
24
tests/nested_bazel_test.sh
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
setup_nested_bazel_cmd() {
|
||||||
|
if command -v bazel >/dev/null 2>&1; then
|
||||||
|
bazel_cmd=(bazel)
|
||||||
|
elif command -v bazelisk >/dev/null 2>&1; then
|
||||||
|
bazel_cmd=(bazelisk)
|
||||||
|
else
|
||||||
|
echo "bazel or bazelisk is required on PATH" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
shutdown_nested_bazel_workspace() {
|
||||||
|
local workspace_dir="${1:-}"
|
||||||
|
if [[ -z ${workspace_dir} || ! -d ${workspace_dir} ]]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
(
|
||||||
|
cd "${workspace_dir}"
|
||||||
|
"${bazel_cmd[@]}" shutdown >/dev/null 2>&1
|
||||||
|
) || true
|
||||||
|
}
|
||||||
@@ -32,15 +32,25 @@ config_setting(
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
config_setting(
|
||||||
|
name = "windows_x86_64",
|
||||||
|
constraint_values = [
|
||||||
|
"@platforms//os:windows",
|
||||||
|
"@platforms//cpu:x86_64",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
sh_test(
|
sh_test(
|
||||||
name = "npm_translate_lock_workspace_test",
|
name = "npm_translate_lock_workspace_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
srcs = ["npm_translate_lock_workspace_test.sh"],
|
srcs = ["npm_translate_lock_workspace_test.sh"],
|
||||||
|
tags = ["exclusive"],
|
||||||
args = select({
|
args = select({
|
||||||
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
":linux_x86_64": ["$(location @bun_linux_x64//:bun)"],
|
||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -48,6 +58,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}) + [
|
}) + [
|
||||||
"//:repo_runtime_files",
|
"//:repo_runtime_files",
|
||||||
@@ -55,6 +66,7 @@ sh_test(
|
|||||||
"//internal:repo_runtime_files",
|
"//internal:repo_runtime_files",
|
||||||
"//js:repo_runtime_files",
|
"//js:repo_runtime_files",
|
||||||
"//npm:repo_runtime_files",
|
"//npm:repo_runtime_files",
|
||||||
|
"//tests:nested_bazel_test.sh",
|
||||||
],
|
],
|
||||||
env_inherit = ["PATH"],
|
env_inherit = ["PATH"],
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,22 +1,24 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
if command -v bazel >/dev/null 2>&1; then
|
|
||||||
bazel_bin="$(command -v bazel)"
|
|
||||||
elif command -v bazelisk >/dev/null 2>&1; then
|
|
||||||
bazel_bin="$(command -v bazelisk)"
|
|
||||||
else
|
|
||||||
echo "bazel or bazelisk is required on PATH" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
bun_path="${1:-bun}"
|
bun_path="${1:-bun}"
|
||||||
|
|
||||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
|
# shellcheck source=../nested_bazel_test.sh
|
||||||
|
source "${script_dir}/../nested_bazel_test.sh"
|
||||||
|
setup_nested_bazel_cmd
|
||||||
|
|
||||||
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
rules_bun_root="$(cd "${script_dir}/../.." && pwd -P)"
|
||||||
|
|
||||||
workdir="$(mktemp -d)"
|
workdir="$(mktemp -d)"
|
||||||
trap 'rm -rf "${workdir}"' EXIT
|
cleanup() {
|
||||||
|
local status="$1"
|
||||||
|
trap - EXIT
|
||||||
|
shutdown_nested_bazel_workspace "${fixture_dir:-}"
|
||||||
|
rm -rf "${workdir}"
|
||||||
|
exit "${status}"
|
||||||
|
}
|
||||||
|
trap 'cleanup $?' EXIT
|
||||||
|
|
||||||
fixture_dir="${workdir}/fixture"
|
fixture_dir="${workdir}/fixture"
|
||||||
mkdir -p "${fixture_dir}"
|
mkdir -p "${fixture_dir}"
|
||||||
@@ -100,7 +102,7 @@ EOF
|
|||||||
|
|
||||||
output="$(
|
output="$(
|
||||||
cd "${fixture_dir}" &&
|
cd "${fixture_dir}" &&
|
||||||
"${bazel_bin}" run //:app
|
"${bazel_cmd[@]}" run //:app
|
||||||
)"
|
)"
|
||||||
|
|
||||||
if [[ ${output} != *"compat:true"* ]]; then
|
if [[ ${output} != *"compat:true"* ]]; then
|
||||||
@@ -110,7 +112,7 @@ fi
|
|||||||
|
|
||||||
query_output="$(
|
query_output="$(
|
||||||
cd "${fixture_dir}" &&
|
cd "${fixture_dir}" &&
|
||||||
"${bazel_bin}" query //:npm__is_number
|
"${bazel_cmd[@]}" query //:npm__is_number
|
||||||
)"
|
)"
|
||||||
if ! grep -Fxq "//:npm__is_number" <<<"${query_output}"; then
|
if ! grep -Fxq "//:npm__is_number" <<<"${query_output}"; then
|
||||||
echo "expected npm_link_all_packages to create //:npm__is_number" >&2
|
echo "expected npm_link_all_packages to create //:npm__is_number" >&2
|
||||||
|
|||||||
@@ -32,6 +32,14 @@ config_setting(
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
config_setting(
|
||||||
|
name = "windows_x86_64",
|
||||||
|
constraint_values = [
|
||||||
|
"@platforms//os:windows",
|
||||||
|
"@platforms//cpu:x86_64",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
sh_test(
|
sh_test(
|
||||||
name = "bun_version_test",
|
name = "bun_version_test",
|
||||||
size = "small",
|
size = "small",
|
||||||
@@ -41,6 +49,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
":linux_aarch64": ["$(location @bun_linux_aarch64//:bun)"],
|
||||||
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
":darwin_x86_64": ["$(location @bun_darwin_x64//:bun)"],
|
||||||
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
":darwin_aarch64": ["$(location @bun_darwin_aarch64//:bun)"],
|
||||||
|
":windows_x86_64": ["$(location @bun_windows_x64//:bun)"],
|
||||||
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
"//conditions:default": ["$(location @bun_linux_x64//:bun)"],
|
||||||
}),
|
}),
|
||||||
data = select({
|
data = select({
|
||||||
@@ -48,6 +57,7 @@ sh_test(
|
|||||||
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
":linux_aarch64": ["@bun_linux_aarch64//:bun"],
|
||||||
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
":darwin_x86_64": ["@bun_darwin_x64//:bun"],
|
||||||
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
":darwin_aarch64": ["@bun_darwin_aarch64//:bun"],
|
||||||
|
":windows_x86_64": ["@bun_windows_x64//:bun"],
|
||||||
"//conditions:default": ["@bun_linux_x64//:bun"],
|
"//conditions:default": ["@bun_linux_x64//:bun"],
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user