
OpenStack Nova EC2 API Flow
I recently decided to poke around with the OpenStack Nova EC2 API implementation in order to have a go at bug 855663. I hadn’t looked inside nova-api before, so had some reading to do in order to figure out the…
Using EC2 APIs with Devstack
Devstack works very well when using the standard OpenStack APIs/Clients, however it wasn’t obvious how to get environment setup for testing EC2 compatibility. # Install and run devstack git clone https://github.com/openstack-dev/devstack.git cd devstack && ./stack.sh # Source environment source eurcarc…

iMac Target Display mode, bluetooth keyboard and mouse
When using an iMac as a secondary monitor for a macbook pro (target display mode), it is more comfortable to use the iMac’s keyboard and mouse rather than the MBPs, however this is not straight forward.
Why you shouldn’t jump in front of a train
There have been two deaths at Hayes and Harlington train station in two weeks. This prompted me to write this handy list of reasons not to jump in front of a train. It will probably make me late for work/dinner…

Django RelatedFieldWidgetWrapper
The Django admin interface represents an Foreign Key field, as a select with a + button. This allows you to select an existing item from the foreign table, or create a new one with a pop up window. Very useful….
Django RemoteUserBackend for REMOTE_USER authentication and LDAP authorisation.
This class was written to integrate a django app with our LDAP/Kerberos setup. Apache handles Kerberos and passes the name of an authorised user via the REMOTE_USER variable. This script does a simple LDAP lookup to determine if the user…
Django Middleware Order
I got stung by this today. I was presented with the following error: The Django remote user auth middleware requires the authentication middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert ‘django.contrib.auth.middleware.AuthenticationMiddleware’ before the RemoteUserMiddleware class. Even though my…

Creating a debian package from a python distutils package
This is the process for converting a python package into a debian package, this is helpful when runnign a debian system, as you can then manage python modules with standard debian package management tools. Install python-stdeb Convert python package to…
Django template tag for tabulating model fields
This django template tag outputs each field’s name and value as a table row. The fields are output in the order they are defined in the model. I use this in templates called by DetailView. Usage:{% property_list model_instance %}