@title = 'Upgrade to 0.8' @toc = false LEAP Platform release 0.8 introduces several major changes that need do get taken into account while upgrading: * Dropping Debian Wheezy support. You need to upgrade your nodes to jessie before deploying a platform upgrade. * Dropping BigCouch support. LEAP Platform now requires CouchDB and therefore you need to migrate all your data from BigCouch to CouchDB. Upgrading to Platform 0.8 --------------------------------------------- ### Step 1: Get new leap_platform and leap_cli workstation$ gem install leap_cli --version 1.8 workstation$ cd leap_platform workstation$ git pull workstation$ git checkout 0.8 ### Step 2: Upgrade to Jessie #### For couchdb nodes running BigCouch For nodes running BigCouch, you must migrate the data to CouchDB: 1. Export BigCouch Data
Follow [["migrating from BigCouch to plain CouchDB" => services/couchdb#migrating-from-bigcouch-to-plain-couchdb]], but only until the step where you remove BigCouch. 1. Upgrade to Jessie
See below for detailed example of upgrading from Wheezy to Jessie. 1. Import Data to CouchDB
Continue with [["migrating from BigCouch to plain CouchDB" => services/couchdb#migrating-from-bigcouch-to-plain-couchdb]] at the point where you stopped (right after removing BigCouch). #### For all other nodes See below for how to upgrade to Debian Jessie. ## Step 3: Deploy everything When you have upgraded all nodes to Jessie, you are ready to deploy: workstation$ cd workstation$ leap deploy workstation$ leap test Upgrade from Debian Wheezy to Jessie ------------------------------------------------ There are the [Debian release notes on how to upgrade from wheezy to jessie](https://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.html). Here are the steps that worked for us, but please keep in mind that there is no bullet-proof method that will work in every situation. USE AT YOUR OWN RISK. # keep a log of the progress: screen script -t 2>~/leap_upgrade-jessiestep.time -a ~/upgrade-jessiestep.script # ensure you have a good wheezy install: export DEBIAN_FRONTEND=noninteractive apt-get autoremove --yes apt-get update apt-get -y -o DPkg::Options::=--force-confnew dist-upgrade # if anything is held, you need to resolve it before continuing: dpkg --audit dpkg --get-selections | grep 'hold$' # switch sources to jessie sed -i 's/wheezy/jessie/g' /etc/apt/sources.list rm /etc/apt/sources.list.d/* echo "deb http://deb.leap.se/0.8 jessie main" > /etc/apt/sources.list.d/leap.list # remove pinnings to wheezy rm /etc/apt/preferences rm /etc/apt/preferences.d/* # get jessie package lists apt-get update # test if there is enough disk space for the upgrade apt-get clean apt-get -o APT::Get::Trivial-Only=true dist-upgrade # do first stage upgrade apt-get -y -o DPkg::Options::=--force-confnew upgrade # repeat dist-upgrade until it makes no more changes: apt-get -y -o DPkg::Options::=--force-confnew dist-upgrade # resolve any apt issues if there are some apt-get -f install # clean up extra packages apt-get autoremove --yes reboot ### Issues **Failure restarting some services for OpenSSL upgrade** If you get this warning: The following services could not be restarted for the OpenSSL library upgrade: postfix You will need to start these manually by running '/etc/init.d/ start'. Just ignore it, it should be fixed on reboot/deploy.