73 print |
73 print |
74 default_user = source.get('db-user', os.environ.get('USER', '')) |
74 default_user = source.get('db-user', os.environ.get('USER', '')) |
75 user = raw_input('Connect as user ? [%r]: ' % default_user) |
75 user = raw_input('Connect as user ? [%r]: ' % default_user) |
76 user = user.strip() or default_user |
76 user = user.strip() or default_user |
77 if user == source.get('db-user'): |
77 if user == source.get('db-user'): |
78 password = source['db-password'] |
78 password = source.get('db-password') |
79 else: |
79 else: |
80 password = getpass('password: ') |
80 password = getpass('password: ') |
81 else: |
81 else: |
82 user = password = None |
82 user = password = None |
83 extra_args = source.get('db-extra-arguments') |
83 extra_args = source.get('db-extra-arguments') |
217 os.unlink, source['db-name']) is not ERROR: |
217 os.unlink, source['db-name']) is not ERROR: |
218 print '-> database %s dropped.' % dbname |
218 print '-> database %s dropped.' % dbname |
219 return |
219 return |
220 user = source['db-user'] or None |
220 user = source['db-user'] or None |
221 cnx = confirm_on_error_or_die('connecting to database %s' % dbname, |
221 cnx = confirm_on_error_or_die('connecting to database %s' % dbname, |
222 _db_sys_cnx, source, 'DROP DATABASE', user=user) |
222 _db_sys_cnx, source, 'DROP DATABASE') |
223 if cnx is ERROR: |
223 if cnx is ERROR: |
224 return |
224 return |
225 cursor = cnx.cursor() |
225 cursor = cnx.cursor() |
226 try: |
226 try: |
227 if confirm_on_error_or_die( |
227 if confirm_on_error_or_die( |
326 ASK.confirm('Database %s already exists. Drop it?' % dbname)): |
326 ASK.confirm('Database %s already exists. Drop it?' % dbname)): |
327 os.unlink(dbname) |
327 os.unlink(dbname) |
328 elif self.config.create_db: |
328 elif self.config.create_db: |
329 print '\n'+underline_title('Creating the system database') |
329 print '\n'+underline_title('Creating the system database') |
330 # connect on the dbms system base to create our base |
330 # connect on the dbms system base to create our base |
331 dbcnx = _db_sys_cnx(source, 'CREATE/DROP DATABASE and / or USER', verbose=verbose) |
331 dbcnx = _db_sys_cnx(source, 'CREATE/DROP DATABASE and / or USER', |
|
332 verbose=verbose) |
332 cursor = dbcnx.cursor() |
333 cursor = dbcnx.cursor() |
333 try: |
334 try: |
334 if helper.users_support: |
335 if helper.users_support: |
335 user = source['db-user'] |
336 user = source['db-user'] |
336 if not helper.user_exists(cursor, user) and (automatic or \ |
337 if not helper.user_exists(cursor, user) and (automatic or \ |
337 ASK.confirm('Create db user %s ?' % user, default_is_yes=False)): |
338 ASK.confirm('Create db user %s ?' % user, default_is_yes=False)): |
338 helper.create_user(source['db-user'], source['db-password']) |
339 helper.create_user(source['db-user'], source.get('db-password')) |
339 print '-> user %s created.' % user |
340 print '-> user %s created.' % user |
340 if dbname in helper.list_databases(cursor): |
341 if dbname in helper.list_databases(cursor): |
341 if automatic or ASK.confirm('Database %s already exists -- do you want to drop it ?' % dbname): |
342 if automatic or ASK.confirm('Database %s already exists -- do you want to drop it ?' % dbname): |
342 cursor.execute('DROP DATABASE %s' % dbname) |
343 cursor.execute('DROP DATABASE %s' % dbname) |
343 else: |
344 else: |