Skip to content
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
11 changes: 7 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,10 @@ jobs:
//docs-site/... \
-//examples/cpp_component/multi_component_system:analytics_service \
-//examples/cli_tool_example:file_processor_cli_wasm_lib_release_host \
-//tools/checksum_updater_wasm:checksum_updater_wasm_bin \
-//tools/checksum_updater_wasm:checksum_updater_wasm_wizer_component_release_wasm_lib_release_host
-//tools/checksum_updater_wasm/... \
-//tools/ssh_keygen:ssh_keygen_test \
-//test/integration:wasi_component_wasm_lib_release_host \
-//test/integration:service_b_component_wasm_lib_release_host \

- name: Run Tests
run: bazel test --test_output=errors -- //test/integration:basic_component_build_test //test/integration:basic_component_validation //test/unit:unit_tests
Expand Down Expand Up @@ -213,8 +215,9 @@ jobs:
-//test/integration:validate_consumer_deps \
-//test_wit_deps/consumer:check_deps \
-//examples/cli_tool_example:file_processor_cli_wasm_lib_release_host \
-//tools/checksum_updater_wasm:checksum_updater_wasm_bin \
-//tools/checksum_updater_wasm:checksum_updater_wasm_wizer_component_release_wasm_lib_release_host
-//tools/checksum_updater_wasm/... \
-//test/integration:wasi_component_wasm_lib_release_host \
-//test/integration:service_b_component_wasm_lib_release_host \

- name: Run Tests
run: bazel test --test_output=errors -- //test/integration:basic_component_build_test //test/integration:basic_component_validation //test/unit:unit_tests
Expand Down
37 changes: 21 additions & 16 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,7 @@ bazel_dep(name = "rules_go", version = "0.55.1")
bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True)
bazel_dep(name = "stardoc", version = "0.7.1", dev_dependency = True)

# OpenSSH for proper SSH key generation
bazel_dep(name = "openssh", version = "9.9p1.bcr.1")

# Override rules_coreutils to fix busybox package 404 issue
# openssh depends on outdated rules_coreutils 1.0.0-beta.6 which tries to download
# busybox-static_1.35.0-4+b3_amd64.deb (404). Upgrade to 1.0.1 which should have
# the correct package version (b4).
single_version_override(
module_name = "rules_coreutils",
version = "1.0.1",
)
# Note: SSH key generation now uses hermetic WebAssembly component (tools/ssh_keygen)

# Rust toolchain setup
rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
Expand Down Expand Up @@ -71,7 +61,7 @@ register_toolchains("@go_toolchains//:all")
# WASI WIT interface definitions
wasi_wit_ext = use_extension("//wasm:extensions.bzl", "wasi_wit")
wasi_wit_ext.init()
use_repo(wasi_wit_ext, "wasi_cli", "wasi_cli_v020", "wasi_clocks", "wasi_clocks_v020", "wasi_filesystem", "wasi_http", "wasi_io", "wasi_io_v020", "wasi_random", "wasi_sockets") # Complete WASI ecosystem (0.2.3 + 0.2.0)
use_repo(wasi_wit_ext, "wasi_cli", "wasi_cli_v020", "wasi_clocks", "wasi_clocks_v020", "wasi_filesystem", "wasi_http", "wasi_io", "wasi_io_v020", "wasi_nn", "wasi_nn_v0_2_0_rc_2024_06_25", "wasi_nn_v0_2_0_rc_2024_08_19", "wasi_random", "wasi_sockets") # Complete WASI ecosystem (0.2.3 + 0.2.0 + all NN versions)

# WebAssembly toolchains
wasm_toolchain = use_extension("//wasm:extensions.bzl", "wasm_toolchain")
Expand Down Expand Up @@ -100,7 +90,7 @@ wasi_sdk = use_extension("//wasm:extensions.bzl", "wasi_sdk")
wasi_sdk.register(
name = "wasi",
strategy = "download",
version = "25",
version = "27",
)
use_repo(wasi_sdk, "wasi_sdk")

Expand Down Expand Up @@ -147,7 +137,7 @@ cpp_component = use_extension("//wasm:extensions.bzl", "cpp_component")
cpp_component.register(
name = "cpp",
strategy = "download",
wasi_sdk_version = "25", # Match existing WASI SDK version
wasi_sdk_version = "27", # Match existing WASI SDK version
)
use_repo(cpp_component, "cpp_toolchain")

Expand All @@ -158,7 +148,7 @@ bazel_dep(name = "rules_nodejs", version = "6.5.0")

# Configure Node.js version and tools
node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
node.toolchain(node_version = "18.19.0")
node.toolchain(node_version = "18.20.8")
use_repo(node, "nodejs_toolchains")

# JavaScript/TypeScript WebAssembly components with JCO
Expand Down Expand Up @@ -213,7 +203,22 @@ crate.from_cargo(
"x86_64-pc-windows-msvc",
],
)
use_repo(crate, "crates", "wasmsign2_crates", "wizer_crates")
crate.from_cargo(
name = "ssh_keygen_crates",
cargo_lockfile = "//tools/ssh_keygen:Cargo.lock",
manifests = ["//tools/ssh_keygen:Cargo.toml"],
supported_platform_triples = [
"wasm32-wasip2", # Enable WebAssembly WASI Preview 2 support
"wasm32-wasip1",
"wasm32-unknown-unknown",
"x86_64-unknown-linux-gnu",
"aarch64-unknown-linux-gnu",
"x86_64-apple-darwin",
"aarch64-apple-darwin",
"x86_64-pc-windows-msvc",
],
)
use_repo(crate, "crates", "ssh_keygen_crates", "wasmsign2_crates", "wizer_crates")

# Modernized WASM tool repositories using git_repository + rules_rust
wasm_tool_repos = use_extension("//toolchains:extensions.bzl", "wasm_tool_repositories")
Expand Down
Loading
Loading