Packages are available for Lucid in the SchoolTool PPA:

There are several issues we'd like to resolve at the UDS-M sprint:

  1. init.d script
  2. permissions and ownership of /var/log/schooltool and /var/lib/schooltool
  3. layout of /etc/schooltool, multiple instances and plugins
  4. customization of default schooltool

Currently the standard installation of SchoolTool is defined in three packages: schooltool-2009, schooltool-common, and python-schooltool.stapp2008fall. schooltool-2009 installs init.d script, but it only includes a file from schooltool-common package. It also installs files to /etc/schooltool/schooltool-2009, but they are not marked as conffiles.

init.d script

We need a review of schooltool-2009 init.d script. It is a short file that only includes a file from schooltool-common package. Currently paster serve is used to launch schooltool. This command accepts --user, --group and --pidfile options. The process name is not altered. In the end a running schooltool server looks like this: python /usr/bin/paster serve --user=schooltool --group=schooltool --daemon --pid-file=/var/run/schooltool/ --log-file=/var/log/schooltool/paste.log --quiet /etc/schooltool/schooltool-2009/paste.ini start

We probably need to:

  • convert it to an upstart script
  • use start-stop-daemon
  • use /etc/default/schooltool-2009 to control whether to start the server

There is also a script, /usr/bin/start-schooltool-instance, that can also launch schooltool given an instance, and is used for developer instances. But it hardcodes filenames that are different to ones in /etc/schooltool/INSTANCE, e.g. schooltool.ini file vs. paste.ini. Also, that script does not have --group, --pid-file, or --log-file options, that the init.d script specifies. We could use this script in combination with start-stop-daemon. Look at loggerhead for example.


Common directories /var/log/schooltool and /var/lib/schooltool are created by schooltool-common.postinst script with mode 0750. Is this OK? Why log files should not be available to users?


Currently we have

  • /etc/schooltool/
    • schooltool-2009/
      • plugins/
      • main.conf
      • paste.ini
  • /usr/share/schooltool-2009/site.zcml

Developers's instances have the same files but different names:

  • instance
    • plugins/
    • schooltool.conf
    • schooltool.ini
    • school.zcml


SchoolTool/Maverick (last edited 2010-05-11 05:42:54 by 247)