HowTo upgrade Chef from 0.10 to 0.10.2 - rubygems install

A few days ago Opscode released a security fix for chef server 0.10.0 and 0.9.16 and this post will show how upgrade to chef-server 0.10.2. First start by backing up your data. Seriously. In the past I’ve had serious problems when performing similar upgrades (even a minor one like this that looks harmless), and even if now opscode are much better with this process it never hurts to be precautions. Since I use a rubygem install the next steps will focus on this type of installation; if you are using distribution or opscode packages this will not be very helpful as probably packages are not yet available for this upgrade; once they will replace the gem upgrade part with the deb/rpm upgrade and you should be set.

Here is a handy command that will stop all the possible chef server related services:

for svc in server server-webui solr expander
sudo /etc/init.d/chef-${svc} stop

2. Upgrade the chef-server gems

Simply run:

sudo gem update chef chef-server --no-ri --no-rdoc

and this should upgrade all the other gems it needs to. A sample output will look like this:

gem update chef chef-server --no-ri --no-rdoc
Updating installed gems
Updating chef
Successfully installed chef-0.10.2
Updating chef-expander
Successfully installed chef-expander-0.10.2
Updating chef-server
Successfully installed chef-server-api-0.10.2
Successfully installed chef-server-webui-0.10.2
Successfully installed chef-solr-0.10.2
Successfully installed chef-server-0.10.2
Gems updated: chef, chef-expander, chef-server-api, chef-server-webui, chef-solr, chef-server

Optional: if you want you can cleanup the system from old, unused gems with:

sudo gem cleanup

3. Start back the chef server services

Again in a single command, now to start them:

for svc in server server-webui solr expander
sudo /etc/init.d/chef-${svc} start

That’s it, now you should be running the latest and greatest chef server version 0.10.2.

comments powered by Disqus