Skip to content

Download and install Devilry

dragly edited this page Jan 20, 2012 · 30 revisions

Note: If you are a developer, you should rather visit the Developer section of the wiki and follow the install instructions there. The install instructions on this page are made for system administrators looking to set up a production environment.

Requirements

Devilry requires python 2.6, or a later version of python 2. Python 3 does not work with devilry at this time.

Download

Currently we only provide devilry through our git reposity on GitHub. For production environments, we recommend that you checkout devilry to /var/devilry. We use /var/devilry in this guide, and our example configuration uses /var/devilry. To download devilry into /var/devilry, run:

~$ cd /var
~$ git clone https://github.com/devilry/devilry-django.git devilry
~$ cd devilry
~$ git checkout latest-stable

This will get you the latest stable version of Devilry. To update Devilry, see Updating devilry in a production environment. You can also Check out a specific version of Devilry.

Install

Copy the example configs

 ~$ cp -r example-productionenv productionenv
 ~$ cd productionenv

Bootstrap buildout

 ~$ python ../bootstrap.py

If you wish to use another version of python than the default one to run Devilry, use the executable for that version of python, such as /usr/bin/python2.7, to run the bootstrap script. bootstrap.py adds files and directories to the current directory.

Get dependencies

The default buildout.cfg depends on PostgreSQL. To remove this dependency, add a # to the beginning of the line "eggs += psycopg2" or remove the line completely. If you will use PostgreSQL you'll need the following packages on Ubuntu: libpq-dev, PostgreSQL (e.g. postgresql-8.4) and Python development package (e.g. python2.6-dev).

Download all dependencies into subdirectories of the current directory. This may take a while. Run with -v to see the progress:

 ~$ bin/buildout

Edit settings

Open production/settings/settings.py in your local install and set settings in the section THESE SETTINGS MUST BE SET.

  • The default settings for Devilry are stored in devilry/defaults/ in settings.py and devilry_settings.py.
  • The Django settings are documented here

These settings can be overridden in production/settings/settings.py if necessary.

Static files

Devilry is a collection of small application, each with their own static files. In a production environment, you want to serve these files from a single directory tree. Run:

~$ bin/django_production.py collectstatic

to gather all static files in the devilry-static-files directory.

Check that everything works

Run a test server with an in-memory database using:

 ~$ bin/django_production.py testserver dev_grandma

Visit http://localhost:8000 in a browser. Log in as user:grandma password:test. If you need to try the testserver from another machine, add --addrport 0.0.0.0:8000 to the command above.

Host devilry using a webserver

Devilry uses Django. Django applications can be deployed on webservers that support wsgi, scgi, fastcgi or ajp:

Clone this wiki locally