Sugioarto

2015-09-27

Upgrade Phabricator

Phabricator is a great project management application. It is also easy to upgrade and this is very important for administrators. I wrote down some steps how to update Phabricator.

Phabricator needs to be installed from the distribution to work correctly. Do not install it from FreeBSD ports or packages.

Stop everything

If you have nginx, stop it instead of Apache. I assume that you are running aphlict with user phd. If not, adjust the command below accordingly. You need to stop php-fpm, too, in case you run it for your webserver.

# /usr/local/lib/php/phabricator/bin/phd stop # /usr/local/etc/rc.d/apache24 stop # sudo -u phd /usr/local/lib/php/phabricator/bin/aphlict stop

Upgrade Ports

It makes sense to upgrade the entire packages before going on.

# portmaster -ad

Update Phabricator Installation

# cd /usr/local/lib/php/libphutil # git pull # cd /usr/local/lib/php/arcanist # git pull # cd /usr/local/lib/php/phabricator # git pull

Make sure you are on the stable branch in each of the repositories above.

Aphlict dependencies update

Aphlict has the package ws installed in directory /usr/local/lib/php/phabricator/support/aphlict/server/. You will want to update it, too, if you run node for notifications.

Upgrade Database Schema

For Phabricator to run properly, you need to update the database schema.

# /usr/local/lib/php/phabricator/bin/storage upgrade

Answer any questions that may appear. Mostly just "yes" is enough. You can re-run the command above to be sure everything has been upgraded properly.

Start Everything Again

If you run php-fpm, start it first. If you have nginx, start it instead of Apache. I assume that you are running aphlict with user phd. If not, adjust the command below accordingly.

# /usr/local/etc/rc.d/apache24 start # /usr/local/lib/php/phabricator/bin/phd start # sudo -u phd /usr/local/lib/php/phabricator/bin/aphlict start