sync_id.py
1020 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import sys
from configparser import ConfigParser
from argparse import ArgumentParser
from opensipkd.iso8583.bjb.scripts.common import get_module_object
from .logger import setup_logging
from .sync import make_pid_file
def get_parser():
pars = ArgumentParser()
pars.add_argument('conf')
pars.add_argument('--update-from-id')
return pars
def get_option(argv):
pars = get_parser()
return pars.parse_args(argv)
def main(argv=sys.argv[1:]):
option = get_option(argv)
conf = ConfigParser()
conf.read(option.conf)
cf = dict(conf.items('main'))
if not make_pid_file(cf['pid_file']):
return
setup_logging(option.conf)
if option.update_from_id:
try:
cf['id_awal'] = int(option.update_from_id)
except ValueError:
t = option.update_from_id.split(',')
cf['id_awal'] = int(t[0])
cf['id_akhir'] = int(t[1])
module = get_module_object(conf.get('main', 'module'))
app = module.App(cf)
app.run()