Upgrade to 1.27.0

Quick update guide for 1.27.0 This update is required for block-producing nodes.

Quick update guide for SPOs who have the previous version already installed 1.26.2. If you are installing from scratch, then follow the installation guide: https://cardano-node-installation.stakepool247.eu/

  1. Let's start with backing up current binaries

cd ~/.local/bin/
# let's create a folder with the version number
mkdir -p $(cardano-node version | grep -oP '(?<=cardano-node )[0-9\.]+')
# copying files to the created folder
cp cardano-node $(cardano-node version | grep -oP '(?<=cardano-node )[0-9\.]+')/
cp cardano-cli $(cardano-node version | grep -oP '(?<=cardano-node )[0-9\.]+')/

2. Let's move forward with upgrading the system packages

# let's update the system first
sudo bash -c 'sudo apt-get update -y;sudo apt-get upgrade -y'

3. Updating GHC to 8.10.4 and download the cardano-node source files

mkdir -p ~/git
cd ~/git
wget https://downloads.haskell.org/ghc/8.10.4/ghc-8.10.4-x86_64-deb9-linux.tar.xz
tar -xf ghc-8.10.4-x86_64-deb9-linux.tar.xz
rm ghc-8.10.4-x86_64-deb9-linux.tar.xz
cd ghc-8.10.4
./configure
sudo make install
# let's create directory where we will be downloading sourece code
cd ~
mkdir -p source
cd source
# just in case you already had a sourece direcotry with cardano-node source code - let's delete it and download fresh one.
rm -rf cardano-node
# let's clone source code from git
git clone https://github.com/input-output-hk/cardano-node.git
cd cardano-node
git fetch --all --recurse-submodules --tags
# checking out the 1.27.0 version
git checkout tags/1.27.0
# let's update cabal
cabal clean
cabal update
# ensuring that we are using cabal 8.10.4 version
# by specifying the particular compiler to be used.
cabal configure --with-compiler=ghc-8.10.4
# addinng extra flages for libsodium library
echo "package cardano-crypto-praos" >> cabal.project.local
echo " flags: -external-libsodium-vrf" >> cabal.project.local
# now let's compile the code
cabal build all

Before the next step - STOP your node so it doesn't lock the carano-node file for overwriting

# moving the freshly compiled binaries to bin folder
mkdir -p ~/.local/bin/
cp -p dist-newstyle/build/x86_64-linux/ghc-8.10.4/cardano-cli-1.27.0/x/cardano-cli/build/cardano-cli/cardano-cli ~/.local/bin/
cp -p dist-newstyle/build/x86_64-linux/ghc-8.10.4/cardano-node-1.27.0/x/cardano-node/build/cardano-node/cardano-node ~/.local/bin/
# let's check if we have successfully installed the latst cardano-node and cardano-cli versions.
which cardano-node && which cardano-cli
cardano-node --version
cardano-cli --version

you should now have similar output:

[email protected]:~/cnode/scripts$ which cardano-node && which cardano-cli /home/cardano/.local/bin/cardano-node /home/cardano/.local/bin/cardano-cli

[email protected]:~/cnode/scripts$ cardano-node --version cardano-node 1.27.0 - linux-x86_64 - ghc-8.10 [email protected]:~/cnode/scripts$ cardano-cli --version cardano-cli 1.27.0 - linux-x86_64 - ghc-8.10

that's it - you have upgraded your node to 1.27.0, now do the same update on all of your other production servers.

Need help? 👉🏼 Join our Telegram support Group: https://t.me/StakePool247help