mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Allow DB connection values to come from the environment
Stop hardcoding everything everywhere for those of us that don't use the localhost/aur/aur/AUR setup. Also allow for the dummy data to be created in the reload script if it does not exist. Finally, remove two assumptions that the AUR database already exists. Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
parent
b9690972d0
commit
abd41bbb51
3 changed files with 33 additions and 21 deletions
|
@ -1,7 +1,7 @@
|
||||||
-- The MySQL database layout for the AUR. Certain data
|
-- The MySQL database layout for the AUR. Certain data
|
||||||
-- is also included such as AccountTypes, etc.
|
-- is also included such as AccountTypes, etc.
|
||||||
--
|
--
|
||||||
DROP DATABASE AUR;
|
DROP DATABASE IF EXISTS AUR;
|
||||||
CREATE DATABASE AUR DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
|
CREATE DATABASE AUR DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
|
||||||
USE AUR;
|
USE AUR;
|
||||||
|
|
||||||
|
|
|
@ -9,13 +9,20 @@ usage: gendummydata.py outputfilename.sql
|
||||||
# package names. It generates the SQL statements to
|
# package names. It generates the SQL statements to
|
||||||
# insert these users/packages into the AUR database.
|
# insert these users/packages into the AUR database.
|
||||||
#
|
#
|
||||||
|
import random
|
||||||
|
import time
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import cStringIO
|
||||||
|
import commands
|
||||||
|
|
||||||
|
|
||||||
DBUG = 1
|
DBUG = 1
|
||||||
SEED_FILE = "/usr/share/dict/words"
|
SEED_FILE = "/usr/share/dict/words"
|
||||||
DB_HOST = "localhost"
|
DB_HOST = os.getenv("DB_HOST", "localhost")
|
||||||
DB_NAME = "AUR"
|
DB_NAME = os.getenv("DB_NAME", "AUR")
|
||||||
DB_USER = "aur"
|
DB_USER = os.getenv("DB_USER", "aur")
|
||||||
DB_PASS = "aur"
|
DB_PASS = os.getenv("DB_PASS", "aur")
|
||||||
USER_ID = 5 # Users.ID of first bogus user
|
USER_ID = 5 # Users.ID of first bogus user
|
||||||
PKG_ID = 1 # Packages.ID of first package
|
PKG_ID = 1 # Packages.ID of first package
|
||||||
MAX_USERS = 300 # how many users to 'register'
|
MAX_USERS = 300 # how many users to 'register'
|
||||||
|
@ -39,14 +46,6 @@ RANDOM_LOCS = ("pub", "release", "files", "downloads", "src")
|
||||||
FORTUNE_CMD = "/usr/bin/fortune -l"
|
FORTUNE_CMD = "/usr/bin/fortune -l"
|
||||||
|
|
||||||
|
|
||||||
import random
|
|
||||||
import time
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
import cStringIO
|
|
||||||
import commands
|
|
||||||
|
|
||||||
|
|
||||||
if len(sys.argv) != 2:
|
if len(sys.argv) != 2:
|
||||||
sys.stderr.write("Missing output filename argument");
|
sys.stderr.write("Missing output filename argument");
|
||||||
raise SystemExit
|
raise SystemExit
|
||||||
|
@ -60,6 +59,7 @@ out.write("BEGIN;\n")
|
||||||
#
|
#
|
||||||
if not os.path.exists(SEED_FILE):
|
if not os.path.exists(SEED_FILE):
|
||||||
sys.stderr.write("Please install the 'words' Arch package\n");
|
sys.stderr.write("Please install the 'words' Arch package\n");
|
||||||
|
raise SystemExit
|
||||||
|
|
||||||
# Make sure database access will be available
|
# Make sure database access will be available
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,17 +1,29 @@
|
||||||
#!/bin/sh
|
#!/bin/bash -e
|
||||||
|
|
||||||
mydir=`pwd`
|
DB_NAME=${DB_NAME:-AUR}
|
||||||
if [ `basename $mydir` != "schema" ]; then
|
DB_USER=${DB_USER:-aur}
|
||||||
|
# Password should allow empty definition
|
||||||
|
DB_PASS=${DB_PASS-aur}
|
||||||
|
DB_HOST=${DB_HOST:-localhost}
|
||||||
|
DATA_FILE=${DATA_FILE:-dummy-data.sql}
|
||||||
|
|
||||||
|
echo "Using database $DB_NAME, user $DB_USER, host $DB_HOST"
|
||||||
|
|
||||||
|
mydir=$(pwd)
|
||||||
|
if [ $(basename $mydir) != "schema" ]; then
|
||||||
echo "you must be in the aur/support/schema directory to run this script"
|
echo "you must be in the aur/support/schema directory to run this script"
|
||||||
exit
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "recreating database..."
|
echo "recreating database..."
|
||||||
mysql -uaur -paur AUR < ./aur-schema.sql
|
mysql -h $DB_HOST -u $DB_USER -p$DB_PASS < aur-schema.sql
|
||||||
|
|
||||||
|
if [ ! -f $DATA_FILE ]; then
|
||||||
|
echo "creating dumy-data..."
|
||||||
|
python2 gendummydata.py $DATA_FILE
|
||||||
|
fi
|
||||||
|
|
||||||
echo "loading dummy-data..."
|
echo "loading dummy-data..."
|
||||||
bzcat ./dummy-data.sql.bz2 | mysql -uaur -paur AUR
|
mysql -h $DB_HOST -u $DB_USER -p$DB_PASS $DB_NAME < $DATA_FILE
|
||||||
|
|
||||||
echo "done."
|
echo "done."
|
||||||
exit
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue