diff options
author | Florian Dold <florian.dold@gmail.com> | 2016-04-11 21:50:35 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2016-04-11 21:50:35 +0200 |
commit | b35d146a27f1ef473dee553ea32340b2aaa3d446 (patch) | |
tree | 2d663a86134dc75ee790d68a0670b4844cc5881c /taler-bank-manage.in | |
parent | 66a3f3eff13115e57b03a1517d8c462a02623d3b (diff) | |
download | bank-b35d146a27f1ef473dee553ea32340b2aaa3d446.tar.gz bank-b35d146a27f1ef473dee553ea32340b2aaa3d446.tar.bz2 bank-b35d146a27f1ef473dee553ea32340b2aaa3d446.zip |
send signal to process group on sigterm
Diffstat (limited to 'taler-bank-manage.in')
-rwxr-xr-x | taler-bank-manage.in | 37 |
1 files changed, 10 insertions, 27 deletions
diff --git a/taler-bank-manage.in b/taler-bank-manage.in index 77b29ac..7459a9a 100755 --- a/taler-bank-manage.in +++ b/taler-bank-manage.in @@ -2,7 +2,7 @@ import argparse import sys import os - +import signal os.environ.setdefault("DJANGO_SETTINGS_MODULE", "talerbank.settings") @@ -24,12 +24,6 @@ from django.core.management import call_command parser = argparse.ArgumentParser() group = parser.add_mutually_exclusive_group(required=True) -group.add_argument('--all', action='store_true', - help="Define tables, create preaccounts, provide sample data") -group.add_argument('--definetables', action='store_true', - help="Define DB tables needed by the bank") -group.add_argument('--preaccounts', action='store_true', - help="Define the bank's predefined accounts") group.add_argument('--dumpdata', action='store_true', help="Dump DB in JSON format") group.add_argument('--flushdata', action='store_true', @@ -42,26 +36,21 @@ group.add_argument('--bareserver', action='store', type=int, metavar='PORT', default=None, help="Create the database for the bank") -args = parser.parse_args() +def signal_handler(signum, frame): + print("got sigterm") + os.killpg(os.getpgid(0), signal.SIGINT) -if args.all: - call_command('makemigrations') - call_command('migrate') - call_command('basic_accounts') - call_command('pre_accounts') - call_command('sample_donations') - sys.exit(0) +signal.signal(signal.SIGTERM, signal_handler) -if args.definetables: - call_command('migrate') - call_command('basic_accounts') - sys.exit(0) + +args = parser.parse_args() if args.bareserver is not None: - call_command('runserver', str(args.bareserver), noreload=True) + call_command('migrate') + call_command('provide_accounts') + call_command('runserver', str(args.bareserver), noreload=True, nothreading=True) sys.exit(0) - if args.flushdata: call_command('flush') sys.exit(0) @@ -81,9 +70,3 @@ if args.sampledata: call_command('sample_donations') sys.exit(0) - -if args.preaccounts: - call_command('pre_accounts') - sys.exit(0) - - |