Directory A hosts the site and contains code repository of askbot, on branch
To upgrade - I copy entire directory
cp -pr A B (-pr to preserve file permissions), then jump into
B, bring the updated code and merge it:
git fetch origin master:github-master #bring new code from github git merge origin github-master #may need to resolve conflicts if there are customizations
Then I check if there are new database migrations:
If there any any new .py files -> back up the database, create copy of the database, reflect database change in the settings.py and run
python manage.py migrate
If there are no migrations - test run the site. It is also possible to run the test suite - all should succeed except PageLoadTests (there is a missing piece of test data)
Once everything works - swap the directories.
The git method has advantage that it makes it easy to maintain your customizations while being able to upgrade, but one has to learn basic git manipulations.
First install askbot into virtual environment. Then make a copy of that environment and the project directory.
In the copy of your virtual environment run
pip upgrade askbot python manage.py migrate --list
If there are new database migrations, clone the database as well and reflect the change in the settings.py
Run the migrations
python manage.py migrate# there may be other apps to migrate besides askbot
See whether everything works, then either swap the project directories and the python environment or change the server configuration to serve from the new directory.
Create your Q&A site at askbot.com. Managed Askbot hosting at just $15/mo. Dedicated hosting, support contracts, consulting services.create your Q&A site
Asked: 2011-02-18 13:16:14 -0500
Seen: 196 times
Last updated: Feb 18 '11