~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to doc/upgrade.txt

  • Committer: matt.giuca
  • Date: 2009-01-14 10:10:12 UTC
  • mto: This revision was merged to the branch mainline in revision 1090.
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:branches%2Fstorm:1132
The new ivle.database.User class is now used in Request and usrmgt, which
    means it is now almost universally used in favour of ivle.user.User (now
    deprecated).

Noticeable change: The minor bug where the change to a user object in the
    database is not reflected in the user's session (eg. changing nick doesn't
    update title until log out).

ivle.dispatch:
    Session now contains 'login' (username string) rather than 'user' (full
        ivle.user.User object). This is a unicode string now.

    req.user is now a ivle.database.User object rather than an ivle.user.User
        object. This makes for a whole lot of really subtle differences, but
        largely conforms to the same interface. Note that strings must now all
        be unicode.

    login: Removed use of ivle.db. Now uses User object.

    html: Now handles unicode login and config options.

ivle.db: Removed update_user. Now replaced with Storm model.

ivle.database: Renamed has_cap back to hasCap (saved for later). Fixed small
    unicode bug.

ivle.makeuser.make_svn_auth now takes a store object.

usrmgt-server: Use new User class.

userservice: Now uses User class internally.
    get_user action now returns ISO 8601 date format, rather than a
        time tuple. (Wasn't being used).
    get_user action no longer transmits local_password (small security risk;
        note that it wasn't possible to see this for any user other than
        yourself unless admin).

ivle.util - added function object_to_dict.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Upgrade Procedure for IVLE
 
2
==========================
 
3
 
 
4
Upgrading to a new revision of IVLE SVN is generally fairly painless,
 
5
but there are several steps involved.
 
6
 
 
7
Firstly, in the IVLE checkout, bring your codebase up to date:
 
8
 
 
9
  svn update
 
10
 
 
11
Review the IVLE code changes. The current installed IVLE version can
 
12
be found in /opt/ivle/version/ivle-revision.txt. 
 
13
eg. run 'svn log -v --limit 20' to get the last 20 checking messages.
 
14
Look to see whether there have been any changes to the jails or
 
15
database tables.
 
16
 
 
17
Then configure and build IVLE. New configuration options may sometimes
 
18
be added, so the configuration questions should be watched closely.
 
19
 
 
20
  ./setup.py config
 
21
  sudo ./setup.py build
 
22
 
 
23
Note that this will not perform a full rebuild of the template jail -
 
24
only the IVLE files inside the jail will be updated. To force a full
 
25
jail rebuild, give the build command the -j option.
 
26
 
 
27
Now comes the time to block external access to IVLE. Stopping Apache
 
28
on each server in the cluster and killing any remaining python-console
 
29
processes is highly recommended.
 
30
 
 
31
You should then run any outstanding database migrations. A note of the
 
32
latest applied migration should probably be kept somewhere to avoid
 
33
running the same one twice. This command must be run once for each.
 
34
 
 
35
  sudo -u postgres ivle < userdb/migrations/YYYYMMDD-NN.sql
 
36
 
 
37
Now we can install the new version:
 
38
 
 
39
  sudo ./setup.py install
 
40
 
 
41
... and remake the user jails, as this will occasionally be needed:
 
42
 
 
43
  ivle-remakeuser --all --verbose
 
44
 
 
45
Restart the usrmgt-server and all Apaches, reenable external access,
 
46
check that everything works, and you're done!