diff --git a/bin/createUser.py b/bin/createUser.py index 3b1c7ed..090008f 100755 --- a/bin/createUser.py +++ b/bin/createUser.py @@ -1,53 +1,53 @@ #!/usr/bin/python import getpass import psycopg2 import string from random import * import argparse from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT ################################################################ def generatePassword(): characters = string.ascii_letters + string.digits password = "".join(choice(characters) for x in range(randint(8, 16))) return password ################################################################ def createUser(new_user): connection_params = dict() connection_params["user"] = 'postgres' try: connection = psycopg2.connect(**connection_params) except Exception as e: raise Exception(str(e)+'\n'+'*'*30 + '\ncannot connect to database\n' + '*'*30) connection.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) curs = connection.cursor() try: curs.execute('create database {0}'.format(new_user)) - except: pass + except Exception as e: print e try: curs.execute('alter database {0} owner to {0}'.format(new_user)) - except: pass + except Exception as e: print e curs.execute('grant create on database {0} to {0}'.format(new_user)) password = generatePassword() curs.execute('alter role {0} with password \'{1}\' '.format(new_user,password)) bdconf = open('{0}.bd'.format(new_user),'w') bdconf.write('password = {0}'.format(password)) ################################################################ parser = argparse.ArgumentParser(description='User creation tool for blackdynamite') parser.add_argument("--user",type=str,help="name of the user to create",required = True) args = parser.parse_args() args = vars(args) new_user = args['user'] createUser(new_user)