v2.1 : mysql ram conf
[auf_skeleton_django.git] / auf / skeleton / django / templates / django_1_3 / +module_name+ / mysql_ram.py
1 # -*- encoding: utf-8 -*-
2
3 """
4 Configuration du site pour faire fonctionner les tests unitaires avec
5 MySQL en RAM.
6 """
7
8 from production import *
9
10 DATABASES['default']['HOST'] = '/var/run/mysqld/mysqld-ram.sock'
11
12 host = "mysql --socket=%s -uroot -e" % DATABASES['default']['HOST']
13 db = DATABASES['default']['NAME']
14 user = DATABASES['default']['USER']
15 pwd = DATABASES['default']['PASSWORD']
16
17 cmd_creer_bd = "%(host)s \
18 'CREATE DATABASE %(db)s;'" % {
19 'host': host,
20 'db': db,
21 }
22
23 cmd_creer_user = """%(host)s \
24 "GRANT USAGE ON *.* TO %(user)s@localhost \
25 IDENTIFIED BY '%(pwd)s';" """ % {
26 'host': host,
27 'user': user,
28 'pwd': pwd,
29 }
30
31 cmd_creer_privileges = "%(host)s \
32 'GRANT ALL PRIVILEGES ON *.* TO %(user)s@localhost ;'" % {
33 'host': host,
34 'user': user,
35 }
36
37
38 # La bd non préfixée par "test_" a besoin d'exister pour lancer les tests.
39 # Cette commande ne modifie rien, si la table existe déjà.
40 os.system(cmd_creer_bd)
41
42 # Création de l'accès à la base "test_xxx" en fonction de conf.py
43 os.system(cmd_creer_user)
44 os.system(cmd_creer_privileges)