70 releases (27 breaking)
new 0.28.1 | May 10, 2024 |
---|---|
0.27.0 | Apr 17, 2024 |
0.27.0-alpha.1 | Mar 18, 2024 |
0.25.0 | Dec 29, 2023 |
0.1.7 | Nov 10, 2020 |
#439 in WebAssembly
1,558 downloads per month
2MB
23K
SLoC
_ _ _____ _ _ _
____| | | | / ____| | | | |
__ ____ _ ___ _ __ ___ / ____| | ___ _ _ __| | | (___ | |__ ___| | |
\ \ /\ / / _` / __| '_ ` _ \| | | |/ _ \| | | |/ _` | \___ \| '_ \ / _ \ | |
\ V V / (_| \__ \ | | | | | |____| | (_) | |_| | (_| | ____) | | | | __/ | |
\_/\_/ \__,_|___/_| |_| |_|\_____|_|\___/ \__,_|\__,_| |_____/|_| |_|\___|_|_|
Why wash
wash
is a bundle of command line tools that, together, form a comprehensive CLI for wasmCloud development. Everything from generating new wasmCloud projects, starting local development infrastructure, interacting with OCI compliant registries, and deploying applications is contained within the subcommands of wash
. Our goal with wash
is to encapsulate our tools into a single binary to make developing WebAssembly with wasmCloud painless and simple.
Installing wash
Cargo
cargo install wash-cli
Linux (deb/rpm + apt)
# Debian / Ubuntu (deb)
curl -s https://packagecloud.io/install/repositories/wasmcloud/core/script.deb.sh | sudo bash
# Fedora (rpm)
curl -s https://packagecloud.io/install/repositories/wasmcloud/core/script.rpm.sh | sudo bash
sudo apt install wash
Linux (snap)
sudo snap install wash --edge --devmode
Linux (brew)
brew install wasmcloud/wasmcloud/wash
MacOS (brew)
brew install wasmcloud/wasmcloud/wash
Windows (choco)
choco install wash
Nix
nix run github:wasmCloud/wash
Using wash
wash
has multiple subcommands, each specializing in one specific area of the wasmCloud development process.
Build:
new Create a new project from a template
build Build (and sign) a wasmCloud component or capability provider
dev Start a developer loop to hot-reload a local wasmCloud component
inspect Inspect a capability provider or Wasm component for signing information and interfaces
par Create, inspect, and modify capability provider archive files
Run:
up Bootstrap a local wasmCloud environment
down Tear down a local wasmCloud environment (launched with wash up)
app Manage declarative applications and deployments (wadm)
spy Spy on all invocations a component sends and receives
ui Serve a web UI for wasmCloud
Iterate:
get Get information about different running wasmCloud resources
start Start a component or capability provider
scale Scale a component running in a host to a certain level of concurrency
stop Stop a component, capability provider, or host
update Update a component running in a host to newer image reference
link Link one component to another on a set of interfaces
call Invoke a simple function on a component running in a wasmCloud host
label Label (or un-label) a host with a key=value label pair
config Create configuration for components, capability providers and links
Publish:
pull Pull an artifact from an OCI compliant registry
push Push an artifact to an OCI compliant registry
reg Perform operations on an OCI registry
Configure:
completions Generate shell completions for wash
ctx Manage wasmCloud host configuration contexts
drain Manage contents of local wasmCloud caches
keys Utilities for generating and managing signing keys
claims Generate and manage JWTs for wasmCloud components and capability providers
Shell auto-complete
wash
has support for autocomplete for Zsh, Bash, Fish, and PowerShell.
See Completions for instructions for installing
autocomplete for your shell.
Contributing to wash
Visit CONTRIBUTING.md for more information on how to contribute to wash
project.
Dependencies
~97MB
~2M SLoC