upgrade.rst
99 lines
| 2.7 KiB
| text/x-rst
|
RstLexer
/ docs / upgrade.rst
r642 | .. _upgrade: | |||
r2095 | ======= | |||
r642 | Upgrade | |||
======= | ||||
|
r2806 | Upgrading from PyPI (aka "Cheeseshop") | ||
--------------------------------------- | ||||
r642 | ||||
r1092 | .. note:: | |||
r3224 | Firstly, it is recommended that you **always** perform a database and | |||
|
r2806 | configuration backup before doing an upgrade. | ||
r3224 | ||||
(These directions will use '{version}' to note that this is the version of | ||||
Rhodecode that these files were used with. If backing up your RhodeCode | ||||
instance from version 1.3.6 to 1.4.0, the ``production.ini`` file would be | ||||
|
r2806 | backed up to ``production.ini.1-3-6``.) | ||
If using a sqlite database, stop the Rhodecode process/daemon/service, and | ||||
then make a copy of the database file:: | ||||
service rhodecode stop | ||||
cp rhodecode.db rhodecode.db.{version} | ||||
r1092 | ||||
|
r2806 | Back up your configuration file:: | ||
cp production.ini production.ini.{version} | ||||
Ensure that you are using the Python Virtual Environment that you'd originally | ||||
installed Rhodecode in:: | ||||
pip freeze | ||||
r3224 | will list all packages installed in the current environment. If Rhodecode | |||
|
r2806 | isn't listed, change virtual environments to your venv location:: | ||
source /opt/rhodecode-venv/bin/activate | ||||
Once you have verified the environment you can upgrade ``Rhodecode`` with:: | ||||
r642 | ||||
easy_install -U rhodecode | ||||
Or:: | ||||
pip install --upgrade rhodecode | ||||
|
r2806 | Then run the following command from the installation directory:: | ||
r3224 | ||||
r642 | paster make-config RhodeCode production.ini | |||
r3224 | ||||
r1092 | This will display any changes made by the new version of RhodeCode to your | |||
r3224 | current configuration. It will try to perform an automerge. It's recommended | |||
|
r2806 | that you re-check the content after the automerge. | ||
r642 | ||||
r1062 | .. note:: | |||
r2094 | Please always make sure your .ini files are up to date. Often errors are | |||
r2071 | caused by missing params added in new versions. | |||
r1062 | ||||
r3224 | It is also recommended that you rebuild the whoosh index after upgrading since | |||
r2071 | the new whoosh version could introduce some incompatible index changes. Please | |||
Read the changelog to see if there were any changes to whoosh. | ||||
r845 | ||||
r1092 | The final step is to upgrade the database. To do this simply run:: | |||
r845 | ||||
|
r2806 | paster upgrade-db production.ini | ||
r3224 | ||||
r1092 | This will upgrade the schema and update some of the defaults in the database, | |||
r3224 | and will always recheck the settings of the application, if there are no new | |||
r1123 | options that need to be set. | |||
r845 | ||||
r3224 | You may find it helpful to clear out your log file so that new errors are | |||
|
r2806 | readily apparent:: | ||
echo > rhodecode.log | ||||
Once that is complete, you may now start your upgraded Rhodecode Instance:: | ||||
service rhodecode start | ||||
Or:: | ||||
paster serve /var/www/rhodecode/production.ini | ||||
r2115 | .. note:: | |||
If you're using Celery, make sure you restart all instances of it after | ||||
upgrade. | ||||
r642 | ||||
r3224 | .. _virtualenv: http://pypi.python.org/pypi/virtualenv | |||
r642 | .. _python: http://www.python.org/ | |||
.. _mercurial: http://mercurial.selenic.com/ | ||||
.. _celery: http://celeryproject.org/ | ||||
|
r2806 | .. _rabbitmq: http://www.rabbitmq.com/ | ||