[Et-mgmt-commits-list] [SCM] virt-factory branch, master now at c2ffdad1f2722489d2f7690207dc7d540c265ac2

Michael DeHaan mdehaan at redhat.com
Mon Jun 4 16:57:08 UTC 2007


Hello,

This is an automated email from the git hooks/update script, it was
generated because a ref change was pushed to the repository.

Updating branch, master,
       via  c2ffdad1f2722489d2f7690207dc7d540c265ac2 (commit)
       via  b04ce6ff67d0d959bf90718902ff3028158d6333 (commit)
      from  4187c349f94df36c83f3096be22dc5efef2f494f (commit)

- Log -----------------------------------------------------------------
commit c2ffdad1f2722489d2f7690207dc7d540c265ac2
Author: Michael DeHaan <mdehaan at mdehaan.rdu.redhat.com>
Date:   Mon Jun 4 12:58:17 2007 -0400

    Replaces the sqlite db setup scripts with postgres scripts, which run under
    the postgres user account.  Further, the directory /etc/virt-factory/db is
    now defattr'd to postgres, and stores a file /etc/virt-factory/db/access
    which holds a randomized DB password -- unique to all virt-factory
    installs.  Any script wanting DB access will need to read this file.
    
    vf_upgrade_db needs to be modified to match accordingly, as does the server
    app itself.

commit b04ce6ff67d0d959bf90718902ff3028158d6333
Author: Michael DeHaan <mdehaan at mdehaan.rdu.redhat.com>
Date:   Mon Jun 4 12:27:18 2007 -0400

    Fix makefile typo.
-----------------------------------------------------------------------

Diffstat:
 misc/create_old.py                                 |   55 -------
 misc/schema/schema.sql                             |  155 --------------------
 misc/schema/upgrade/bootstrap-upgrade.sql          |   21 ---
 misc/schema/upgrade/upgrades.conf                  |    4 -
 register/po/messages.pot                           |    2 +-
 service/Makefile                                   |    2 +-
 .../db/schema/obsolete}/populate.sql               |    0 
 service/db/schema/{ => obsolete}/schema.sql        |    0 
 service/db/schema/populate.sql                     |   16 --
 misc/vf_create_db.sh => service/db/vf_create_db    |   19 ++-
 service/db/vf_create_db.sh                         |    5 -
 service/init-scripts/virt-factory-server           |    6 +-
 service/setup.py                                   |    2 +-
 service/virt-factory-server.spec                   |   10 +-
 14 files changed, 21 insertions(+), 276 deletions(-)

diff --git a/misc/create_old.py b/misc/create_old.py
deleted file mode 100755
index 1fccfd6..0000000
--- a/misc/create_old.py
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/python 
-
-import subprocess
-import random
-
-PW_FILE="/etc/virt-factory/dbaccess"  # must be chown postgres, chmod 550
-
-DATABASE='vfdb'
-
-CREATE_SCHEMA_SQL = """
-    CREATE SCHEMA %(DATABASE)s;
-    CREATE TABLE demo (foo text, bar text);
-"""
-
-CREATE_USER_SQL = """
-    DELETE ROLE %(username)s;
-    CREATE ROLE %(username)s LOGIN PASSWORD '%(password)s'
-    NOINHERIT
-    VALID UNTIL 'infinity';
-
-    ALTER ROLE %(username)s SET search_path=%(DATABASE)s,public;
-        
-    GRANT usage ON SCHEMA %(DATABASE)s TO %(username)s;
-    GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE demo TO %(username)s;
-"""
-
-def adduser(username,password):
-    dvr = open("/dev/urandom","r")
-    r = random.Random(dvr.read(255))
-    dvr.close()
-    password = "".join([ chr(x) for x in r.sample(range(ord('a'),ord('z')),10) ])
-    pwf = open(PW_FILE, "w+")
-    pwf.write(password)
-    pwf.close()
-    data = CREATE_USER_SQL % {
-        "username"    : username,
-        "password"    : password,
-        "DATABASE"    : DATABASE
-    }
-    __runsql(data)
-
-def createdb():
-    data = CREATE_SCHEMA_SQL % { "DATABASE" : DATABASE }
-    __runsql(data)
-   
-def __runsql(data):
-    print data
-    p = subprocess.Popen("psql --dbname %s" % (DATABASE), shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
-    (stdout, stderr) = p.communicate(data)
-
-if __name__ == "__main__":
-    createdb()
-    adduser("foosball","foosball")
-
-
diff --git a/misc/schema/schema.sql b/misc/schema/schema.sql
deleted file mode 100755
index cfbce5b..0000000
--- a/misc/schema/schema.sql
+++ /dev/null
@@ -1,155 +0,0 @@
-CREATE SCHEMA virtfactory;
-
-CREATE ROLE virtfactory LOGIN PASSWORD '%(password)s'
-NOINHERIT
-VALID UNTIL 'infinity';
-
-ALTER ROLE virtfactory SET search_path=virtfactory,public;
-
-CREATE TABLE tasks (
-   id              INTEGER PRIMARY KEY,
-   user_id         INTEGER NOT NULL,
-   action_type     INTEGER NOT NULL,
-   machine_id      INTEGER NOT NULL,
-   deployment_id   INTEGER NOT NULL,
-   state           INTEGER NOT NULL,
-   time            REAL NOT NULL
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE tasks TO virtfactory;
-
-CREATE TABLE users (
-   id              INTEGER PRIMARY KEY,
-   username        VARCHAR (255) UNIQUE NOT NULL,
-   password        VARCHAR (255) NOT NULL,
-   first           VARCHAR (255) NOT NULL,
-   middle          VARCHAR (255),
-   last            VARCHAR (255) NOT NULL,
-   description     VARCHAR (255),
-   email           VARCHAR (255) NOT NULL
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE users TO virtfactory;
-
-CREATE TABLE events (
-   id              INTEGER PRIMARY KEY,
-   time            INTEGER NOT NULL,
-   user_id         INTEGER NOT NULL,
-   machine_id      INTEGER,
-   deployment_id   INTEGER,
-   profile_id      INTEGER,
-   severity        INTEGER NOT NULL,
-   category        VARCHAR (255) NOT NULL,
-   action          VARCHAR (255) NOT NULL,
-   user_comment    VARCHAR (255)
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE events TO virtfactory;
-
-CREATE TABLE distributions (
-   id                  INTEGER PRIMARY KEY,
-   kernel              VARCHAR(255) NOT NULL,
-   initrd              VARCHAR(255) NOT NULL,
-   options             VARCHAR(255),
-   kickstart           VARCHAR(255),
-   name                VARCHAR(255) UNIQUE,
-   architecture        INTEGER NOT NULL,
-   kernel_options      VARCHAR(255),       
-   kickstart_metadata  VARCHAR(255)   
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE distributions TO virtfactory;
-
-CREATE TABLE profiles (
-   id INTEGER PRIMARY KEY,
-   name               VARCHAR (255) UNIQUE,
-   version            VARCHAR (255) NOT NULL,
-   distribution_id    INTEGER NOT NULL,
-   virt_storage_size  INTEGER,
-   virt_ram           INTEGER,
-   kickstart_metadata VARCHAR(255),
-   kernel_options     VARCHAR(255),
-   valid_targets      INTEGER NOT NULL,
-   is_container       INTEGER NOT NULL,
-   puppet_classes     TEXT
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE profiles TO virtfactory;
-
-CREATE TABLE deployments (
-   id                  INTEGER PRIMARY KEY,
-   hostname            VARCHAR(255),
-   ip_address          VARCHAR(255),
-   registration_token  VARCHAR(255),
-   mac_address         VARCHAR(255),
-   machine_id          INTEGER NOT NULL,
-   profile_id          INTEGER NOT NULL,
-   state               INTEGER NOT NULL,
-   display_name        VARCHAR(255) NOT NULL,
-   puppet_node_diff    TEXT,
-   netboot_enabled     INTEGER,
-   is_locked           INTEGER
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE deployments TO virtfactory;
-
-CREATE TABLE machines (
-   id                 INTEGER PRIMARY KEY,
-   hostname           VARCHAR(255),
-   ip_address         VARCHAR(255),
-   registration_token VARCHAR(255),
-   architecture       INTEGER,
-   processor_speed    INTEGER,
-   processor_count    INTEGER,
-   memory             INTEGER,
-   kernel_options     VARCHAR(255),
-   kickstart_metadata VARCHAR(255),
-   list_group         VARCHAR(255),
-   mac_address        VARCHAR(255),
-   is_container       INTEGER,
-   profile_id         INTEGER NOT NULL,
-   puppet_node_diff   TEXT,
-   netboot_enabled    INTEGER,
-   is_locked          INTEGER
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE machines TO virtfactory;
-
-CREATE TABLE regtokens (
-   id                 INTEGER PRIMARY KEY,
-   token              VARCHAR(255),
-   profile_id         INTEGER, 
-   uses_remaining     INTEGER
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE regtokens TO virtfactory;
-
-CREATE TABLE sessions (
-   session_token      VARCHAR(255) UNIQUE NOT NULL,
-   user_id	      INTEGER NOT NULL,
-   session_timestamp  REAL NOT NULL
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE sessions TO virtfactory;
-   
-CREATE TABLE schema_versions (
-  id                  INTEGER PRIMARY KEY,
-  version             INTEGER,
-  git_tag             VARCHAR(100),
-  install_timestamp   REAL NOT NULL,
-  status              VARCHAR(20) NOT NULL,
-  notes               VARCHAR(4000)
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE schema_versions TO virtfactory;
-
-create table upgrade_log_messages (
-  id   	              INTEGER PRIMARY KEY,
-  action              VARCHAR(50),
-  message_type	      VARCHAR(50), --info, warning, error
-  message_timestamp   REAL NOT NULL,
-  message	      VARCHAR(4000)
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE upgrade_log_messages TO virtfactory;
-
diff --git a/misc/schema/upgrade/bootstrap-upgrade.sql b/misc/schema/upgrade/bootstrap-upgrade.sql
deleted file mode 100644
index 9670f59..0000000
--- a/misc/schema/upgrade/bootstrap-upgrade.sql
+++ /dev/null
@@ -1,21 +0,0 @@
-CREATE TABLE schema_versions (
-  id                  INTEGER PRIMARY KEY,
-  version             INTEGER,
-  git_tag             VARCHAR(100),
-  install_timestamp   REAL NOT NULL,
-  status              VARCHAR(20) NOT NULL,
-  notes               VARCHAR(4000)
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE schema_versions TO virtfactory;
-
-create table upgrade_log_messages (
-  id                  INTEGER PRIMARY KEY,
-  action              VARCHAR(50),
-  message_type        VARCHAR(50), --info, warning, error
-  message_timestamp   REAL NOT NULL,
-  message             VARCHAR(4000)
-);
-
-GRANT SELECT, UPDATE, INSERT, DELETE ON TABLE upgrade_log_messages TO virtfactory;
-
diff --git a/misc/schema/upgrade/upgrades.conf b/misc/schema/upgrade/upgrades.conf
deleted file mode 100644
index e13eba3..0000000
--- a/misc/schema/upgrade/upgrades.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-[upgrade.0001]
-git_tag=db-initial-upgrade
-notes=Initial upgrade creates the required tables for the upgrade infrastructure
-files=bootstrap-upgrade.sql
diff --git a/register/po/messages.pot b/register/po/messages.pot
index b59726a..07e6415 100644
--- a/register/po/messages.pot
+++ b/register/po/messages.pot
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: virt-factory-register 0.0.3-1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-01 13:39-0400\n"
+"POT-Creation-Date: 2007-06-04 12:25-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
diff --git a/service/Makefile b/service/Makefile
index 8e4c063..9715431 100755
--- a/service/Makefile
+++ b/service/Makefile
@@ -38,7 +38,7 @@ build: clean
 install: build messages
 	python setup.py install -f
 
-sdist: clean message
+sdist: clean messages
 	python setup.py sdist
 
 # this is just for testing purposes, dont use this
diff --git a/misc/schema/populate.sql b/service/db/schema/obsolete/populate.sql
similarity index 100%
rename from misc/schema/populate.sql
rename to service/db/schema/obsolete/populate.sql
diff --git a/service/db/schema/schema.sql b/service/db/schema/obsolete/schema.sql
similarity index 100%
rename from service/db/schema/schema.sql
rename to service/db/schema/obsolete/schema.sql
diff --git a/service/db/schema/populate.sql b/service/db/schema/populate.sql
deleted file mode 100755
index 48a261c..0000000
--- a/service/db/schema/populate.sql
+++ /dev/null
@@ -1,16 +0,0 @@
-INSERT INTO users VALUES (-1, "system", "locked", "?", "?", "?", "?", "?");
-
-INSERT INTO users VALUES (1, "admin", "fedora", "?", "?", "?", "?", "?");
-
-INSERT INTO distributions VALUES (-1, "*Unassigned*", "", "", "", "", 0, "", "");
-
-INSERT INTO profiles VALUES(-1, "*Unassigned*", "0.00", 1, 0, 0, "", "", -1, -1, "");
-
-INSERT INTO machines VALUES(-1, "*Unassigned*", "", "*NoSuchToken*", 0, 0, 0, 0, "", "", "", "", 0, -1, "", 0, 0);
-
-INSERT INTO regtokens VALUES(-1, "*Unassigned*", -1, NULL);
-
-INSERT INTO deployments VALUES(-1, "*Unassigned*", "", "*NoSuchToken*", "", -1, -1, -1, "__NULL__", "", 0, 0);
-
-
-
diff --git a/misc/vf_create_db.sh b/service/db/vf_create_db
similarity index 68%
rename from misc/vf_create_db.sh
rename to service/db/vf_create_db
index 68fc385..c0e4b8e 100644
--- a/misc/vf_create_db.sh
+++ b/service/db/vf_create_db
@@ -8,9 +8,9 @@ import random
 
 # must be chown postgres, chmod 550
 DATABASE      = "virtfactory"
-PW_FILE       = "/etc/virt-factory/dbaccess"  
-SCHEMA_FILE   = "/var/lib/virt-factory/db_schema/schema.sql"
-POPULATE_FILE = "/var/lib/virt-factory/db_schema/populate.sql"
+PW_FILE       = "/etc/virt-factory/db/dbaccess"  
+#SCHEMA_FILE   = "/var/lib/virt-factory/db_schema/schema.sql"
+#POPULATE_FILE = "/var/lib/virt-factory/db_schema/populate.sql"
 
 ######################################
 
@@ -23,13 +23,14 @@ def createdb():
     pwf.write(password)
     pwf.close()
 
-    sf = open(SCHEMA_FILE, "r")
-    data = sf.read() % { "password" : password }
+    #sf = open(SCHEMA_FILE, "r")
+    #data = sf.read() % { "password" : password }
+    data = "" # no initial schema, use SQLalchemy 
     __runsql(data)
 
-def populate():
-    data = open(POPULATE_FILE, "r")
-    __runsql(data)
+#def populate():
+#    data = open(POPULATE_FILE, "r")
+#    __runsql(data)
 
 def initialize_upgrade_path():
     p = subprocess.Popen("/usr/bin/vf_upgrade_db --initialize", shell=True)
@@ -43,7 +44,7 @@ def __runsql(data):
 if __name__ == "__main__":
     createdb()
     initialize_upgrade_path()
-    populate()
+    # populate() -- let sqlalchemy do this
 
 
 
diff --git a/service/db/vf_create_db.sh b/service/db/vf_create_db.sh
deleted file mode 100644
index 42a3008..0000000
--- a/service/db/vf_create_db.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-
-/usr/bin/sqlite3 /var/lib/virt-factory/primary_db < /usr/share/virt-factory/db_schema/schema.sql
-/usr/bin/vf_upgrade_db --initialize
-/usr/bin/sqlite3 /var/lib/virt-factory/primary_db < /usr/share/virt-factory/db_schema/populate.sql
diff --git a/service/init-scripts/virt-factory-server b/service/init-scripts/virt-factory-server
index 991ac7f..00cb273 100755
--- a/service/init-scripts/virt-factory-server
+++ b/service/init-scripts/virt-factory-server
@@ -23,7 +23,11 @@ start() {
         echo
         return 1
     fi
- 
+    if test -f /var/lib/virt-factory/primary_db ; then
+        sudo -u postgres /usr/bin/vf_upgrade_db
+    else 
+        sudo -u postgres /usr/bin/vf_create_db 
+    fi 
     /usr/bin/vf_server --daemon
     /usr/bin/vf_taskatron --daemon
     RETVAL=$?
diff --git a/service/setup.py b/service/setup.py
index 9bc13d4..3b9d904 100644
--- a/service/setup.py
+++ b/service/setup.py
@@ -40,7 +40,7 @@ if __name__ == "__main__":
 			   "scripts/vf_config_firewall",
 			   "scripts/vf_remove_firewall_rules",
 			   "scripts/vf_gen_profile_stub",
-			   "db/vf_create_db.sh"],
+			   "db/vf_create_db"],
 		package_dir = {"%s" % NAME: "",
 			       "%s/server" % NAME: "server",
 			       "%s/server/modules" % NAME: "modules/",
diff --git a/service/virt-factory-server.spec b/service/virt-factory-server.spec
index c62ff1b..a696220 100644
--- a/service/virt-factory-server.spec
+++ b/service/virt-factory-server.spec
@@ -42,7 +42,7 @@ test "x$RPM_BUILD_ROOT" != "x" && rm -rf $RPM_BUILD_ROOT
 %{_bindir}/vf_taskatron
 %{_bindir}/vf_import
 %{_bindir}/vf_get_puppet_node
-%{_bindir}/vf_create_db.sh
+%{_bindir}/vf_create_db
 %{_bindir}/vf_nodecomm
 %{_bindir}/vf_upgrade_db
 %{_bindir}/vf_config_firewall
@@ -80,16 +80,12 @@ test "x$RPM_BUILD_ROOT" != "x" && rm -rf $RPM_BUILD_ROOT
 /usr/share/virt-factory/profile-template/vf-profile-template.spec
 /usr/share/virt-factory/profile-template/init.pp
 %dir /var/log/virt-factory
-
+%defattr(2770,postgres,postgres)
+%dir /etc/virt-factory/db
 
 %post
 /bin/cp /usr/share/virt-factory/puppet-config/puppetmaster /etc/sysconfig
 /bin/cp /usr/share/virt-factory/puppet-config/puppetd.conf /etc/puppet
-#if [ -f /var/lib/virt-factory/primary_db ]; then
-#    /usr/bin/vf_upgrade_db
-#else
-#    /usr/bin/vf_create_db.sh
-#fi
 /sbin/chkconfig --add virt-factory-server
 exit 0
 

hooks/update
---
Git Source Code Management System
hooks/update refs/heads/master \
  4187c349f94df36c83f3096be22dc5efef2f494f \
  c2ffdad1f2722489d2f7690207dc7d540c265ac2




More information about the Et-mgmt-commits-list mailing list