-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
135 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
{ | ||
"binaries": { | ||
"linux/arm64": "https://github.com/osmosis-labs/osmosis/releases/download/v28.0.0-rc1/osmosisd-28.0.0-rc1-linux-arm64?checksum=sha256:f223e899d973e934536632f04b59086f032e9bfd58434504f73159d2d4969caa", | ||
"linux/amd64": "https://github.com/osmosis-labs/osmosis/releases/download/v28.0.0-rc1/osmosisd-28.0.0-rc1-linux-amd64?checksum=sha256:653c2834668b67454e19149a96d7835127c637f66e4d5a1b7d8f56e758c4239e" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
# v27 to v28 Testnet Upgrade Guide | ||
|
||
| | | | ||
|-----------------|----------------------------------------------------------| | ||
| Chain-id | `osmo-test-5` | | ||
| Upgrade Version | `v28.0.0-rc1` | | ||
| Upgrade Height | 12855000 | | ||
| Countdown | <https://www.mintscan.io/osmosis-testnet/block/12855000> | | ||
|
||
## Memory Requirements | ||
|
||
This upgrade will **not** be resource intensive. With that being said, we still recommend having 32GB of memory. If having 32GB of physical memory is not possible, the next best thing is to set up swap. | ||
|
||
Short version swap setup instructions: | ||
|
||
``` {.sh} | ||
sudo swapoff -a | ||
sudo fallocate -l 32G /swapfile | ||
sudo chmod 600 /swapfile | ||
sudo mkswap /swapfile | ||
sudo swapon /swapfile | ||
``` | ||
|
||
To persist swap after restart: | ||
|
||
``` {.sh} | ||
sudo cp /etc/fstab /etc/fstab.bak | ||
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab | ||
``` | ||
|
||
In depth swap setup instructions: | ||
<https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-20-04> | ||
|
||
## First Time Cosmovisor Setup | ||
|
||
If you have never setup Cosmovisor before, follow the following instructions. | ||
|
||
If you have already setup Cosmovisor, skip to the next section. | ||
|
||
We highly recommend validators use cosmovisor to run their nodes. This | ||
will make low-downtime upgrades smoother, as validators don't have to | ||
manually upgrade binaries during the upgrade, and instead can | ||
pre-install new binaries, and cosmovisor will automatically update them | ||
based on on-chain SoftwareUpgrade proposals. | ||
|
||
You should review the docs for cosmovisor located here: | ||
<https://docs.cosmos.network/main/tooling/cosmovisor> | ||
|
||
If you choose to use cosmovisor, please continue with these | ||
instructions: | ||
|
||
To install Cosmovisor: | ||
|
||
``` {.sh} | ||
go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/[email protected] | ||
``` | ||
|
||
After this, you must make the necessary folders for cosmosvisor in your | ||
daemon home directory (\~/.osmosisd). | ||
|
||
``` {.sh} | ||
mkdir -p ~/.osmosisd | ||
mkdir -p ~/.osmosisd/cosmovisor | ||
mkdir -p ~/.osmosisd/cosmovisor/genesis | ||
mkdir -p ~/.osmosisd/cosmovisor/genesis/bin | ||
mkdir -p ~/.osmosisd/cosmovisor/upgrades | ||
``` | ||
|
||
Copy the current v27 osmosisd binary into the | ||
cosmovisor/genesis folder and v27 folder. | ||
|
||
```{.sh} | ||
cp $GOPATH/bin/osmosisd ~/.osmosisd/cosmovisor/genesis/bin | ||
mkdir -p ~/.osmosisd/cosmovisor/upgrades/v27/bin | ||
cp $GOPATH/bin/osmosisd ~/.osmosisd/cosmovisor/upgrades/v27/bin | ||
``` | ||
|
||
Cosmovisor is now ready to be set up for v27. | ||
|
||
Set these environment variables: | ||
|
||
```{.sh} | ||
echo "# Setup Cosmovisor" >> ~/.profile | ||
echo "export DAEMON_NAME=osmosisd" >> ~/.profile | ||
echo "export DAEMON_HOME=$HOME/.osmosisd" >> ~/.profile | ||
echo "export DAEMON_ALLOW_DOWNLOAD_BINARIES=false" >> ~/.profile | ||
echo "export DAEMON_LOG_BUFFER_SIZE=512" >> ~/.profile | ||
echo "export DAEMON_RESTART_AFTER_UPGRADE=true" >> ~/.profile | ||
echo "export UNSAFE_SKIP_BACKUP=true" >> ~/.profile | ||
source ~/.profile | ||
``` | ||
|
||
## Cosmovisor Upgrade | ||
|
||
Create the v28 folder, make the build, and copy the daemon over to that folder | ||
|
||
```{.sh} | ||
mkdir -p ~/.osmosisd/cosmovisor/upgrades/v28/bin | ||
cd $HOME/osmosis | ||
git pull | ||
git checkout v28.0.0-rc1 | ||
make build | ||
cp build/osmosisd ~/.osmosisd/cosmovisor/upgrades/v28/bin | ||
``` | ||
|
||
Now, at the upgrade height, Cosmovisor will upgrade to the v28 binary | ||
|
||
## Manual Option | ||
|
||
1. Wait for Osmosis to reach the upgrade height (12855000) | ||
|
||
2. Look for a panic message, followed by endless peer logs. Stop the daemon | ||
|
||
3. Run the following commands: | ||
|
||
```{.sh} | ||
cd $HOME/osmosis | ||
git pull | ||
git checkout v28.0.0-rc1 | ||
make install | ||
``` | ||
4. Start the osmosis daemon again, watch the upgrade happen, and then continue to hit blocks | ||
## Further Help | ||
If you need more help, please: | ||
- go to <https://docs.osmosis.zone> | ||
- join our discord at <https://discord.gg/pAxjcFnAFH>. |