Skip to content

suiware/walrus-sites-deploy

Repository files navigation

Walrus Sites Deploy CLI

Deploys a folder to Walrus Sites seamlessly.

Uses CLI tools provided by Suibase.

Unique Features

Why it's better than the native Walrus site-builder script:

  • No additional configuration needed (thanks to Suibase).
  • Stores the published site object ID in an environment file.
  • Allows to swap SUI for WAL to fund the deployment if necessary.
  • Allows to override already deployed files if necessary.

Prerequisites

Usage

Make sure you started testnet or mainnet locally:

testnet start
# or
mainnet start

To get current deployer address:

tsui client active-address
# or
msui client active-address

To get current deployer address balance:

tsui client balance
# or
msui client balance

Refer to the Suibase docs for more commands.

Finally, to deploy the site:

pnpx walrus-sites-deploy
pnpx walrus-sites-deploy ./dist
pnpx walrus-sites-deploy ./dist -n testnet
pnpx walrus-sites-deploy ./dist -n testnet -o ./.env.local
pnpx walrus-sites-deploy ./dist -n testnet -o ./.env.local -e 1
pnpx walrus-sites-deploy ./dist -n testnet -o ./.env.local -e 1 -b
pnpx walrus-sites-deploy ./dist -n testnet -o ./.env.local -e 1 -b -f

Parameters

Parameter Shorthand Description Default Value
source - The folder to deploy to Walrus Sites './dist'
--network -n Network to use (testnet or mainnet) testnet
--site-object-id-file -o Path to the config file where the site object ID is stored. If this env file already has site object ID, the site is going to be updated on Walrus Sites. If not, once the site is published the first time, the site object ID gets written to the env file. The other environment variables in the file are preserved. ./.env.local
--epochs -e Number of epochs to store the files for. "max" means 53 epochs (2 years) 1
--buy-wal-before-run -b Buy WAL tokens before running the script. Currently 0.5 WAL. false
--force-update -f Force update false

Used by

Links