comparison web/hgbook/dbutil.py @ 673:ad304b606163

Initial cut at web comment system import
author Bryan O'Sullivan <bos@serpentine.com>
date Tue, 10 Mar 2009 21:42:19 -0700
parents
children 3b062018273a
comparison
equal deleted inserted replaced
672:40025381bded 673:ad304b606163
1 import MySQLdb as mysql
2
3 def connect():
4 try:
5 import secrets
6 except ImportError:
7 print >> sys.stderr, 'Decrypt secrets.py.gpg or create a new copy!'
8 sys.exit(1)
9
10 if secrets.DATABASE_ENGINE != 'mysql':
11 print >> sys.stderr, ('You are using a %s database' %
12 secrets.DATABASE_ENGINE)
13 sys.exit(1)
14
15 kwargs = {
16 'charset': 'utf8',
17 'use_unicode': True,
18 }
19 if secrets.DATABASE_USER:
20 kwargs['user'] = secrets.DATABASE_USER
21 if secrets.DATABASE_NAME:
22 kwargs['db'] = secrets.DATABASE_NAME
23 if secrets.DATABASE_PASSWORD:
24 kwargs['passwd'] = secrets.DATABASE_PASSWORD
25 if secrets.DATABASE_HOST.startswith('/'):
26 kwargs['unix_socket'] = secrets.DATABASE_HOST
27 elif secrets.DATABASE_HOST:
28 kwargs['host'] = secrets.DATABASE_HOST
29 if secrets.DATABASE_PORT:
30 kwargs['port'] = int(secrets.DATABASE_PORT)
31 return mysql.connect(**kwargs)