-
Notifications
You must be signed in to change notification settings - Fork 296
Deployment checklist
redshiftzero edited this page May 2, 2022
·
13 revisions
- Update hardcoded testnet URL in code
- Create droplet & associated floating IP
- Add droplet to database trusted sources in DO
- Add team member SSH keys to droplet
- Create A record in Namecheap for testnet DNS
- Configure Caddy (./config/Caddyfile in repo will need the correct domain name set)
-
git clone https://github.com/penumbra-zone/penumbra.git
-
sudo apt-get install python3 docker-compose build-essential pkg-config libssl-dev clang libclang-dev
- Install the DO metrics clients (for setting up alerts for e.g. disk utilization)
-
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
source $HOME/.cargo/env
-
cargo install sqlx-cli
- Configure Grafana (currently the penumbra_grafana_configs volume needs OAuth creds for GitHub set in grafana.ini)
- Update
discord-addresses
file using the Galileo bot (cargo run --release history --channel <channel>
) - Create a new
testnet/<moon>/allocations.csv
file describing the initial genesis allocations for this testnet (make sure all current team members have some assets!) - Update the User Guide to mention the git tag
- Create new git tag e.g.
006-orthosie
, push to shared remote:git tag -a <tag_name>
- must be annotated tag for Vergen build -
cd penumbra
and check out new git tag on DO droplet - Install any new apt dependencies
- Archive the old configs:
mv ~/.penumbra/testnet_data ~/.penumbra-MOON
- Generate new configs:
cargo run --release --bin pd -- generate-testnet --preserve-chain-id
- Fix permissions or tendermint will immediately crash:
chmod -R 777 ~/.penumbra/testnet_data
- Start the prod docker-compose:
docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build
- Make an announcement 🎉
- Make GH release object
- Bounce galileo: git checkout latest tag, stop, do pcli wallet reset, restart