Files
wasmer/tests/wasmer-argus
Edoardo Marangoni a1e1cc86b1 Release 6.0.0-beta.1
2025-03-07 07:11:49 +01:00
..
2025-03-07 07:11:49 +01:00

wasmer-argus

Automatically test packages from the registry.

Building

If you want to use the local wasmer crate, you shall build the project with cargo build --package wasmer-argus --features wasmer_lib.

On macOS, you may encounter an error where the linker does not find zstd: a possible solution to this problem is to install zstd using brew (brew install zstd) and using the following command:

RUSTFLAGS="-L$(brew --prefix)/lib" cargo build --package wasmer-argus --features wasmer_lib

Another possiblity is to add the your brew prefix with /lib (probably = /opt/homebrew/lib/) to the global Cargo config something like:

[target.aarch64-apple-darwin]
rustflags = ["-L/opt/homebrew/lib"]

Usage

This binary fetches packages from the graphql endpoint of a registry. By default, it uses http://registry.wasmer.io/graphql; and the needed authorization token is retrieved from the environment using the WASMER_TOKEN. Users can specify the token via CLI with the appropriate flag.

This testsuite is parallelised, and the degree of parallelism available can be specified both by CLI flag or automatically using std::thread::available_parallelism.

Fetch and test packages from a WebContainer registry

Usage: wasmer-argus [OPTIONS]

Options:
  -r, --registry-url <REGISTRY_URL>  
        The GraphQL endpoint of the registry to test [default: http://registry.wasmer.io/graphql]
  -b, --backend <COMPILER_BACKEND>   
        The backend to test the compilation against [default: singlepass] [possible values: llvm, singlepass, cranelift]
      --run                          
        Whether or not to run packages during tests
  -o, --outdir <OUTDIR>              
        The output directory [default: /home/ecmm/sw/wasmer/wasmer/target/debug/out]
      --auth-token <AUTH_TOKEN>      
        The authorization token needed to see packages [default: <env::WASMER_TOKEN>]
      --jobs <JOBS>                  
        The number of concurrent tests (jobs) to perform [default: 12]
  -h, --help                         Print help
  -V, --version                      Print version