Skip to content

Instantly share code, notes, and snippets.

@QCPOLstakepool
Last active April 7, 2021 13:01
Show Gist options
  • Save QCPOLstakepool/8dccbff3e51fe6b21547f76b478e61fd to your computer and use it in GitHub Desktop.
Save QCPOLstakepool/8dccbff3e51fe6b21547f76b478e61fd to your computer and use it in GitHub Desktop.

Cardano Stake Pool Migration 1.24.2 -> 1.25.1

THIS GUIDE IS FOR EDUCATIONAL PURPOSE ONLY. IT COMES WITH NO WARRANTY AND SHOULD BE USED AT YOUR OWN RISK. MAKE THE APPROPRIATE BACKUPS!!! THIS GUIDE ASSUME YOU FOLLOWED https://www.coincashew.com/coins/overview-ada/guide-how-to-build-a-haskell-stakepool-node

Written by QCPOL (https://qcpol.stakepool.quebec)

Update server

sudo apt update
sudo apt upgrade
sudo apt autoremove

Building 1.25.1

cd ~
git clone https://github.com/input-output-hk/cardano-node.git cardano-node-1.25.1
cd cardano-node-1.25.1
git fetch --all --recurse-submodules --tags
git checkout tags/1.25.1
cabal update
cabal configure -O0 -w ghc-8.10.2
echo -e "package cardano-crypto-praos\n flags: -external-libsodium-vrf" > cabal.project.local
rm -rf $HOME/git/cardano-node/dist-newstyle/build/x86_64-linux/ghc-8.10.2
cabal build cardano-cli cardano-node

Stop service

sudo systemctl stop cardano-node

Backup files

cd ~
mkdir backup-1.24.2
sudo cp /usr/local/bin/cardano-node backup-1.24.2/cardano-node
sudo cp /usr/local/bin/cardano-cli backup-1.24.2/cardano-cli
cp cardano-my-node/mainnet-byron-genesis.json backup-1.24.2/mainnet-byron-genesis.json
cp cardano-my-node/mainnet-config.json backup-1.24.2/mainnet-config.json
cp cardano-my-node/mainnet-shelley-genesis.json backup-1.24.2/mainnet-shelley-genesis.json
cp $HOME/.bashrc backup-1.24.2/.bashrc

Installing 1.25.1

cd ~
sed -i .bashrc -e "s/export NODE_BUILD_NUM=.*/export NODE_BUILD_NUM=5416636/"
source .bashrc
cd $NODE_HOME
wget -N https://hydra.iohk.io/build/${NODE_BUILD_NUM}/download/1/${NODE_CONFIG}-byron-genesis.json
wget -N https://hydra.iohk.io/build/${NODE_BUILD_NUM}/download/1/${NODE_CONFIG}-shelley-genesis.json
wget -N https://hydra.iohk.io/build/${NODE_BUILD_NUM}/download/1/${NODE_CONFIG}-config.json
sed -i ${NODE_CONFIG}-config.json -e "s/127.0.0.1/0.0.0.0/g"
sed -i ${NODE_CONFIG}-config.json -e "s/TraceBlockFetchDecisions\": false/TraceBlockFetchDecisions\": true/g"
sudo cp $(find $HOME/cardano-node-1.25.1/dist-newstyle/build -type f -name "cardano-cli") /usr/local/bin/cardano-cli
sudo cp $(find $HOME/cardano-node-1.25.1/dist-newstyle/build -type f -name "cardano-node") /usr/local/bin/cardano-node

Start service

sudo systemctl start cardano-node
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment