1.8 KiB
Develop
prerequsites
- Go >= 1.16
- Starport: `curl https://get.starport.network/starport@v0.19.5! | sudo bash
- nodejs >= 16
Building the blockchain
Run
make
This command creates a build
directory and in particular, the
build/wormchaind
binary, which can be used to run and interact with the
blockchain.
You can start a local development instance by running
make run
Or equivalently
./build/wormchaind --home build
If you want to reset the blockchain, just run
make clean
Then you can make run
again.
Running tests
Golang tests
make test
Client tests, run against the chain. Wormchain must be running via starport chain serve
, make run
or tilt up
cd ./ts-sdk
npm ci
npm run build
cd ../testing/js
npm ci
npm run test
Interacting with the blockchain
You can interact with the blockchain by using the go binary:
./build/wormchaind tx --from tiltGuardian --home build
Note the flags --from tiltGuardian --home build
. These have to be passed
in each time you make a transaction (the tiltGuardian
account is created in
config.yml
). Queries don't need the --from
flag.
Scaffolding stuff with starport
TODO: expand explanation here
starport scaffold type guardian-key key:string --module wormhole --no-message
modify proto/wormhole/guardian_key.proto
(string -> bytes)
starport scaffold message register-account-as-guardian guardian-pubkey:GuardianKey address-bech32:string signature:string --desc "Register a guardian public key with a wormhole chain address." --module wormhole --signer signer
Scaffold a query:
starport scaffold query latest_guardian_set_index --response LatestGuardianSetIndex --module wormhole
(then modify "wormchain/x/wormhole/types/query.pb.go" to change the response type)