2012-03-22 15:20:23 +00:00
#!/usr/bin/python
2012-03-23 03:01:56 +00:00
# -*- coding: utf-8 -*-
2012-03-22 15:20:23 +00:00
import os
import sys
2012-03-23 03:01:56 +00:00
import MySQLdb
2012-03-22 15:20:23 +00:00
import settings
try :
dbname = os . environ [ ' DBNAME ' ]
dbuser = os . environ [ ' DBUSER ' ]
dbpasswd = os . environ [ ' DBPASSWD ' ]
except :
print ' Environment not set! Exit '
sys . exit ( 1 )
2012-03-23 03:01:56 +00:00
def do_create ( ) :
conn = MySQLdb . Connect ( host = ' localhost ' , user = dbuser , passwd = dbpasswd )
cursor = conn . cursor ( )
cmd = ( " CREATE DATABASE IF NOT EXISTS ` %s ` default charset utf8 COLLATE utf8_general_ci; " ) % ( dbname )
try :
cursor . execute ( cmd )
except :
pass
cursor . close ( )
conn . close ( )
2012-03-22 15:20:23 +00:00
def do_delete ( prefix ) :
cmd = ( ' echo " select concat( \' drop table \' , table_name , \' ; \' ) from TABLES where TABLE_SCHEMA = \' %s \' and table_name like \' %s _ %% \' ; " | mysql -u %s -p %s information_schema | sed -n \' 2,$p \' | mysql -u %s -p %s %s ' ) % ( dbname , prefix , dbuser , dbpasswd , dbuser , dbpasswd , dbname )
try :
output = os . popen ( cmd ) . read ( )
except :
pass
if __name__ == " __main__ " :
2012-03-23 03:01:56 +00:00
# create database if not exists
do_create ( )
# detele all seahub tables
2012-03-22 15:20:23 +00:00
for app in settings . INSTALLED_APPS :
app_name = app . split ( ' . ' ) [ - 1 ]
do_delete ( app_name )
do_delete ( ' django ' )
print ' [Delete seahub tables...Done] '