Hi all,
Here’s another upgrade guide for 10.1.1 for the og Coincashew users that have the older folder structure and file names.
The is the Chang#2 hardfork version. No need to rush this out to mainnet yet, but update your testnet nodes as you see fit.
As always, test first, then deploy.
Update your instance:
sudo apt-get update && sudo apt-get upgrade
Download latest cardano-node git and checkout latest branch:
cd $HOME/git
git clone https://github.com/IntersectMBO/cardano-node.git cardano-node2
cd cardano-node2/
git fetch --all --recurse-submodules --tags
git checkout tags/10.1.1
Then upgrade ghcup and do a cabal update.
ghcup upgrade
ghcup install ghc 8.10.7
ghcup set ghc 8.10.7
ghcup install cabal 3.8.1.0
ghcup set cabal 3.8.1.0
cabal update
ghc --version
cabal --version
Note: make sure you have ghc 8.10.7 and cabal 3.8.1.0 before proceeding.
Build the node:
cd $HOME/git/cardano-node2
cabal configure -O0 -w ghc-8.10.7
cabal build cardano-node cardano-cli
As a note, if you are on Ubuntu 22.04, you will need to add a constraint to your cabal.project.local file to force it to use the right HsOpenSSL, i.e. constraints: HsOpenSSL ==0.11.7.2
Or something like this
cd $HOME/git/cardano-node2
cabal configure -O0 -w ghc-8.10.7
echo "constraints: HsOpenSSL ==0.11.7.2" >> cabal.project.local
cabal build cardano-node cardano-cli
Check cardano-cli and cardano-node that the build was successful:
$(./scripts/bin-path.sh cardano-node) version
$(./scripts/bin-path.sh cardano-cli) version
The cardano-node version should be 10.1.1 and cardano-cli is 10.0.0.0
Stop your node
sudo systemctl stop cardano-node
Then copy over the new executables
sudo cp -p "$(./scripts/bin-path.sh cardano-node)" /usr/local/bin/cardano-node
sudo cp -p "$(./scripts/bin-path.sh cardano-cli)" /usr/local/bin/cardano-cli
Again, check that successful version is reported:
cardano-node version
cardano-cli version
Then start your node.
sudo systemctl start cardano-node
Monitor the progress by either using gliveview or journalctl, and check if there’s any errors starting:
journalctl --unit=cardano-node --follow
Warning - this requires a full replay, so make sure you have many hours free for your relays or BP to work through it.
Then a quick clean up:
cd $HOME/git/
rm -rf cardano-node-old
mv cardano-node cardano-node-old
mv cardano-node2 cardano-node