mirror of
				https://github.com/mail-in-a-box/mailinabox.git
				synced 2025-11-03 19:30:54 +00:00 
			
		
		
		
	Add sqlite migration
This commit is contained in:
		
							parent
							
								
									ee01eae55e
								
							
						
					
					
						commit
						7c4eb0fb70
					
				@ -437,7 +437,6 @@ def two_factor_auth_get_status():
 | 
			
		||||
def totp_post_enable():
 | 
			
		||||
	email, _ = auth_service.authenticate(request, env)
 | 
			
		||||
 | 
			
		||||
	# TODO: Handle case where user already has TOTP enabled
 | 
			
		||||
	secret = request.form.get('secret')
 | 
			
		||||
	token = request.form.get('token')
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -22,7 +22,6 @@ if [ ! -f $db_path ]; then
 | 
			
		||||
	echo Creating new user database: $db_path;
 | 
			
		||||
	echo "CREATE TABLE users (id INTEGER PRIMARY KEY AUTOINCREMENT, email TEXT NOT NULL UNIQUE, password TEXT NOT NULL, extra, privileges TEXT NOT NULL DEFAULT '');" | sqlite3 $db_path;
 | 
			
		||||
	echo "CREATE TABLE aliases (id INTEGER PRIMARY KEY AUTOINCREMENT, source TEXT NOT NULL UNIQUE, destination TEXT NOT NULL, permitted_senders TEXT);" | sqlite3 $db_path;
 | 
			
		||||
  # TODO: Add migration
 | 
			
		||||
	echo "CREATE TABLE totp_credentials (id INTEGER PRIMARY KEY AUTOINCREMENT, user_email TEXT NOT NULL UNIQUE, secret TEXT NOT NULL, mru_token TEXT, FOREIGN KEY (user_email) REFERENCES users(email) ON DELETE CASCADE);" | sqlite3 $db_path;
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -181,6 +181,10 @@ def migration_12(env):
 | 
			
		||||
            conn.commit()
 | 
			
		||||
            conn.close()
 | 
			
		||||
 | 
			
		||||
def migration_13(env):
 | 
			
		||||
	# Add a table for `totp_credentials`
 | 
			
		||||
	db = os.path.join(env["STORAGE_ROOT"], 'mail/users.sqlite')
 | 
			
		||||
	shell("check_call", ["sqlite3", db, "CREATE TABLE IF NOT EXISTS totp_credentials (id INTEGER PRIMARY KEY AUTOINCREMENT, user_email TEXT NOT NULL UNIQUE, secret TEXT NOT NULL, mru_token TEXT, FOREIGN KEY (user_email) REFERENCES users(email) ON DELETE CASCADE);"])
 | 
			
		||||
 | 
			
		||||
def get_current_migration():
 | 
			
		||||
	ver = 0
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user