Upgrading from Mercury 1.0 (or Mercury 1.1-Beta) to Mercury 1.1

Events happening in the community are now at Drupal community events on www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

We know some folks are going want to upgrade their mercury servers from 1.0 or 1.1-Beta to 1.1 once it's released, so we've written instructions on how to do this.

To start off, we've made some changes to the structure of the project on launchpad. We've merged the mercury drupal profile into bcfg2 and edited /usr/local/bin/updated_mercury.sh to reflect this change.

We've also created a 1.0 branch, 1.1 branch and trunk (rather than having bcfg2, bcfg2-dev, profiles and profiles-dev). This will allow us to continue development in trunk without effecting users of 1.0, 1,1 (and future version too). The bcfg2, bcfg2-dev, profiles and profiles-dev branches will remain for folks who want to receive bug fixes only but no functionality updates. The 1.0 branch matches the bcfg2 and profiles branches (but with profiles merged into BCFG2 control).

The process of updating your Mercury server from 1.0 or 1.1-Beta to 1.1 is as follows:
1) make sure your system is up-to-date
2) stop the bcfg2-server
3) install python-genshi
4) add TGenshi to bcfg2.conf
5) change your profile in clients.xml to either mercury-aws (all version of ubuntu on AWS) or mercury-vps (all versions of Ubuntu on non-AWS VPSs)
6) commit any updates you have in /var/lib/bcfg2
7) redirect bzr to the new branch (and resolve any resulting conflicts)
8) start the bcfg2-server
9) run bcfg2
10) restart mysql

which looks like this:

sudo apt-get update; sudo apt-get upgrade; sudo apt-get dist-upgrade
sudo /etc/init.d/bcfg2-server stop
sudo apt-get install python-genshi
sudo nano -w /etc/bcfg2.conf
sudo nano -w /var/lib/bcfg2/Metadata/clients.xml
cd /var/lib/bcfg2/
sudo bzr ci -m "commited by mercury"
sudo bzr pull --overwrite --remember lp:pantheon/1.1
sudo rm *.moved
sudo bzr resolve Metadata
sudo bzr resolve Packages
sudo bzr resolve Probes
cd ~
sudo /etc/init.d/bcfg2-server start; tail -f /var/log/syslog
sudo bcfg2 -vqed
sudo /etc/init.d/mysql restart

We're still fighting a bug that causes BCFG2 to hang after restarting tomcat. We initially reported this as BCFG2 hanging after restarting apache but bcfg2 -vqed (rather than bcfg2 -vq) reports the order of events more accurately. When you see:

Restarting service tomcat6
> /usr/sbin/invoke-rc.d tomcat6 restart
<  * Stopping Tomcat servlet engine tomcat6
<    ...done.
<  * Starting Tomcat servlet engine tomcat6
<    ...done.

You can Control-c the command and re-run bcfg2 -vqed to make sure all the changes/updates have been applied.

5/21/10 Update: The BCFG2 hanging after restarting tomcat bug is fixed in Lucid. It's unclear at this point if this fix will be backported to Jaunty and Karmic or not.

Note: These instructions don't include upgrading a server from Jaunty (or Karmic) to Lucid. This has not been (and likely won't be) tested by us. Instead, we're recommending migrating the site to a new server running Lucid and Mercury 1.1. Update: we're going to test this next week to see if it works. Per http://alestic.com/2010/04/upgrading-servers-to-ubuntu-1004-lucid-on-ama..., it's not currently possible to upgrade a Karmic or Jaunty instance-boot server to Lucid on AWS. We're working on a script that will help with the data migration process (this script will also help folks migrate non-pressflow sites into Mercury.

Mercury

Group organizers

Group categories

Post Type

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: