[ckan-dev] CKAN Packaging and MultiInstance

James Gardner james at 3aims.com
Mon Jun 13 10:54:21 UTC 2011


Hi all,

I'm just writing to keep you up to date with some packaging discussion.

At the moment I've written a script called repo.py (with David Read) 
which automatically builds Debian packages from pip requirements such as 
these:

https://bitbucket.org/okfn/ckan/src/1ab655b7b76a/requires/lucid_missing.txt

That's pretty handy in itself but I've also gone further and written a 
set of common helper functions in bash which each help you perform one 
part of the CKAN install process for setting up an instance:

https://bitbucket.org/okfn/ckan-debs-public/src/877b300622dc/ckan-common/usr/lib/ckan/common.sh

They each check for a condition and only perform their action if they 
need to so they are safe to run multiple times.

Finally, I've gone even further and written DEBAIN postinst scripts so 
that a CKAN instance can be automatically set up, using the bash 
functions in common.sh, when a package is installed.

The repo.py script mentioned above is capable of building packages that 
use the postinst scripts so it should be soon be possible to install 
multiple instances of CKAN alongside each other on Ubuntu 10.04 amd64 as 
simply as this:

sudo apt-get install ckan-std ckan-dgu etc

If we can automate the generation of sample instance templates, we can 
automatically build the packages above and that will get us a long way 
towards being able to easily host and manage lots of CKAN instances on a 
single machine.

More to come soon...

Cheers,

James





More information about the ckan-dev mailing list