Index: trunk/packages/invirt-database/debian/changelog
===================================================================
--- trunk/packages/invirt-database/debian/changelog	(revision 2213)
+++ trunk/packages/invirt-database/debian/changelog	(revision 2218)
@@ -1,2 +1,8 @@
+invirt-database (0.2.0) unstable; urgency=low
+
+  * Merge invirt-database-server into invirt-database.
+
+ -- Evan Broder <broder@mit.edu>  Fri, 27 Feb 2009 19:38:55 -0500
+
 invirt-database (0.1.9) unstable; urgency=low
 
Index: trunk/packages/invirt-database/debian/control
===================================================================
--- trunk/packages/invirt-database/debian/control	(revision 2213)
+++ trunk/packages/invirt-database/debian/control	(revision 2218)
@@ -4,6 +4,7 @@
 Maintainer: Invirt project <invirt@mit.edu>
 Build-Depends: cdbs (>= 0.4.23-1.1), debhelper (>= 4.2.0),
- python-all-dev (>=2.3.5-11), python-support (>= 0.5.3),
- python-setuptools, python-debian, python-apt
+ config-package-dev, postgresql-8.3, python-all-dev (>=2.3.5-11),
+ python-support (>= 0.5.3), python-setuptools, python-debian,
+ python-apt
 Standards-Version: 3.8.0
 
@@ -16,2 +17,12 @@
 Description: Installs the Invirt database schema files
  This contains the Python modules to access the Invirt database
+
+Package: invirt-database-server
+Architecture: all
+Depends: ${misc:Depends}, ${python:Depends}, postgresql-8.3,
+ python-sqlalchemy, python-psycopg2, invirt-database, adduser,
+ invirt-base
+Provides: ${diverted-files}
+Conflicts: ${diverted-files}
+Description: Installs the Invirt database server
+ This tracks all the user VMs and is accessed from the VM host
Index: trunk/packages/invirt-database/debian/invirt-database-server.init
===================================================================
--- trunk/packages/invirt-database/debian/invirt-database-server.init	(revision 2218)
+++ trunk/packages/invirt-database/debian/invirt-database-server.init	(revision 2218)
@@ -0,0 +1,19 @@
+#!/bin/bash
+### BEGIN INIT INFO
+# Provides:          invirt-database-server
+# Required-Start:    $local_fs $remote_fs
+# Required-Stop:     $local_fs $remote_fs
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Invirt database server
+# Description:       
+### END INIT INFO
+
+PACKAGE=invirt-database-server
+PARENTPACKAGE=postgresql-8.3
+GEN_FILES=/etc/postgresql/8.3/main/pg_hba.conf
+
+dpkg -s "$PACKAGE" >/dev/null 2>/dev/null || exit 0
+
+. /lib/init/config-init.sh
+config_init "$1"
Index: trunk/packages/invirt-database/debian/invirt-database-server.install
===================================================================
--- trunk/packages/invirt-database/debian/invirt-database-server.install	(revision 2218)
+++ trunk/packages/invirt-database/debian/invirt-database-server.install	(revision 2218)
@@ -0,0 +1,3 @@
+postgresql-8.3.invirt etc/init.d
+pg_hba.conf.mako etc/postgresql/8.3/main
+invirt-database-tables usr/bin
Index: trunk/packages/invirt-database/debian/invirt-database-server.postinst
===================================================================
--- trunk/packages/invirt-database/debian/invirt-database-server.postinst	(revision 2218)
+++ trunk/packages/invirt-database/debian/invirt-database-server.postinst	(revision 2218)
@@ -0,0 +1,53 @@
+#!/bin/sh
+# postinst script for invirt-database-server
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+# Note that by moving this above our generated code we could run into significant problems
+# if we happened to start a daemon, and use debconf
+# We move this up here because we need the diversion of postgresql.conf to happen before we create tables
+
+#DEBHELPER#
+
+
+case "$1" in
+    configure)
+        #Don't create users on upgrade
+        if [ -z "$2" ]; then
+            # Don't fail if the user/database already exists
+            su postgres -c 'createuser invirt -S -d -R'    || true
+            su postgres -c 'createdb invirt -O invirt'   || true
+            adduser --system invirt
+        fi
+	invoke-rc.d postgresql-8.3 restart
+        su invirt -s /bin/sh -c 'invirt-database-tables create'
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+exit 0
+
+
Index: trunk/packages/invirt-database/debian/invirt-database-server.prerm
===================================================================
--- trunk/packages/invirt-database/debian/invirt-database-server.prerm	(revision 2218)
+++ trunk/packages/invirt-database/debian/invirt-database-server.prerm	(revision 2218)
@@ -0,0 +1,45 @@
+#!/bin/sh
+# prerm script for invirt-database-server
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    remove|deconfigure)
+
+        # This will destroy data -- do we want to do this?
+        # su postgres -c 'dropdb invirt'
+        # su postgres -c 'dropuser invirt'
+        deluser invirt
+    ;;
+
+    upgrade|failed-upgrade)
+    ;;
+
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
Index: trunk/packages/invirt-database/debian/invirt-database.install
===================================================================
--- trunk/packages/invirt-database/debian/invirt-database.install	(revision 2218)
+++ trunk/packages/invirt-database/debian/invirt-database.install	(revision 2218)
@@ -0,0 +1,1 @@
+debian/tmp/* .
Index: trunk/packages/invirt-database/debian/rules
===================================================================
--- trunk/packages/invirt-database/debian/rules	(revision 2213)
+++ trunk/packages/invirt-database/debian/rules	(revision 2218)
@@ -3,6 +3,15 @@
 DEB_PYTHON_SYSTEM=pysupport
 
+DEB_DIVERT_EXTENSION = .invirt
+
+DEB_TRANSFORM_FILES_invirt-database-server += \
+	/etc/postgresql/8.3/main/postgresql.conf.invirt
+
+DEB_DIVERT_FILES_invirt-database-server += \
+	/etc/init.d/postgresql-8.3.invirt
+
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/python-distutils.mk
+include /usr/share/cdbs/1/rules/config-package.mk
 
 clean::
Index: trunk/packages/invirt-database/debian/transform_postgresql.conf.invirt
===================================================================
--- trunk/packages/invirt-database/debian/transform_postgresql.conf.invirt	(revision 2218)
+++ trunk/packages/invirt-database/debian/transform_postgresql.conf.invirt	(revision 2218)
@@ -0,0 +1,4 @@
+#!/usr/bin/perl -0p
+
+s/^#?listen_addresses = '[^']*'(.*)$/listen_addresses = '*'$1/m or die;
+s/^#?port = [0-9]*(.*)$/port = 5432$1/m or die;
