Move updatewrregioncache.py to scripts folder.
[philipp/winterrodeln/wrpylib.git] / scripts / updatewrregioncache.py
1 #!/usr/bin/python2.7
2 # -*- coding: iso-8859-15 -*-
3 """
4 usage: updatewrregioncache.py [-h] inifile [inifile ...]
5
6 Updates the wrregioncache table (by calling
7 wrpylib.wrmwcache.update_wrregioncache()).
8
9 positional arguments:
10   inifile     inifile.ini (See:
11               http://www.winterrodeln.org/trac/wiki/ConfigIni)
12
13 optional arguments:
14   -h, --help  show this help message and exit
15 """
16 import argparse
17 import ConfigParser
18 from sqlalchemy.engine import create_engine
19 import wrpylib.wrmwcache
20
21
22 def update_wrregioncache(inifiles):
23     """
24     :param inifiles: list of .ini file names
25     """
26     config = ConfigParser.SafeConfigParser()
27     config.read(inifiles)
28
29     host = config.get('mysql', 'host')
30     dbname = config.get('mysql', 'dbname')
31     user = config.get('mysql', 'user_name')
32     passwd = config.get('mysql', 'user_pass')
33
34     engine = create_engine(u'mysql://{user}@{host}:3306/{dbname}?charset=utf8&passwd={passwd}&use_unicode=1'.format(host=host, dbname=dbname, user=user, passwd=passwd))
35     wrpylib.wrmwcache.update_wrregioncache(engine.connect())
36
37
38 if __name__=='__main__':
39     parser = argparse.ArgumentParser(description='Updates the wrregioncache table (by calling wrpylib.wrmwcache.update_wrregioncache()).')
40     parser.add_argument('inifile', nargs='+', help='inifile.ini (See: http://www.winterrodeln.org/trac/wiki/ConfigIni)')
41     args = parser.parse_args()
42
43     update_wrregioncache(args.inifile)
44
45
46