diff --git a/migrations/versions/87733981ca0e_adds_challenge_types_and_uses_keys_table.py b/migrations/versions/87733981ca0e_adds_challenge_types_and_uses_keys_table.py index 29287cc5..816805f2 100644 --- a/migrations/versions/87733981ca0e_adds_challenge_types_and_uses_keys_table.py +++ b/migrations/versions/87733981ca0e_adds_challenge_types_and_uses_keys_table.py @@ -30,16 +30,16 @@ def upgrade(): # ### commands auto generated by Alembic - please adjust! ### ## Copy over flags data to Keys table - print "Getting bind..." + print("Getting bind...") conn = op.get_bind() - print "Executing: SELECT id, flags from challenges" + print("Executing: SELECT id, flags from challenges") res = conn.execute(text("SELECT id, flags from challenges")) results = res.fetchall() - print "There are {} results".format(len(results)) + print("There are {} results".format(len(results))) new_keys = [] - print "Processing existing flags" + print("Processing existing flags") for r in results: if r[1]: ## Check if flags are NULL data = json.loads(r[1]) @@ -48,44 +48,44 @@ def upgrade(): if new_keys: ## Base CTFd databases actually already insert into Keys but the database does not make use of them ## This prevents duplicate entries of keys - print "Executing: TRUNCATE keys" + print("Executing: TRUNCATE keys") conn.execute(text("TRUNCATE `keys`")) - print "Bulk inserting the keys" + print("Bulk inserting the keys") op.bulk_insert(keys_table, new_keys) ## Add type column to challenges - print "Adding type column to challenges" + print("Adding type column to challenges") op.add_column('challenges', sa.Column('type', sa.Integer(), nullable=True, default=0)) ## Set all NULLs to 0 - print "Setting all NULLs to 0" + print("Setting all NULLs to 0") conn.execute("UPDATE challenges set type=0 WHERE type IS NULL") ## Drop flags from challenges - print "Dropping flags column from challenges" + print("Dropping flags column from challenges") op.drop_column('challenges', 'flags') - print "Finished" + print("Finished") # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### - print "Getting bind..." + print("Getting bind...") conn = op.get_bind() - print "Adding flags column back to challenges table" + print("Adding flags column back to challenges table") op.add_column('challenges', sa.Column('flags', sa.TEXT(), nullable=True)) - print "Dropping type column from challenges table" + print("Dropping type column from challenges table") op.drop_column('challenges', 'type') - print "Executing: SELECT id, flags from challenges" + print("Executing: SELECT id, flags from challenges") res = conn.execute("SELECT id, flags from challenges") results = res.fetchall() - print "There are {} results".format(len(results)) + print("There are {} results".format(len(results))) for chal_id in results: new_keys = Keys.query.filter_by(chal=chal_id[0]).all() old_flags = [] @@ -93,8 +93,8 @@ def downgrade(): flag_dict = {'flag': new_key.flag, 'type': new_key.key_type} old_flags.append(flag_dict) old_flags =json.dumps(old_flags) - print "Updating challenge {} to insert {}".format(chal_id[0], flag_dict) + print("Updating challenge {} to insert {}".format(chal_id[0], flag_dict)) conn.execute(text('UPDATE challenges SET flags=:flags WHERE id=:id'), id=chal_id[0], flags=old_flags) - print "Finished" + print("Finished") # ### end Alembic commands ###