From 201263237f443acdf61da05ecc18424c9afe3437 Mon Sep 17 00:00:00 2001 From: blitzmann Date: Sat, 19 Mar 2016 21:20:20 -0400 Subject: [PATCH] Add migration to update fits tablet for implant source --- eos/db/migration.py | 6 ++++-- eos/db/migrations/upgrade13.py | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 eos/db/migrations/upgrade13.py diff --git a/eos/db/migration.py b/eos/db/migration.py index c99be1ffc..a0824f812 100644 --- a/eos/db/migration.py +++ b/eos/db/migration.py @@ -4,6 +4,9 @@ import time import re import os import migrations +import logging + +logger = logging.getLogger(__name__) def getVersion(db): cursor = db.execute('PRAGMA user_version') @@ -30,10 +33,9 @@ def update(saveddata_engine): shutil.copyfile(config.saveDB, toFile) for version in xrange(dbVersion, appVersion): - func = migrations.updates[version+1] if func: - print "applying update",version+1 + logger.info("Applying database update: %d", version+1) func(saveddata_engine) # when all is said and done, set version to current diff --git a/eos/db/migrations/upgrade13.py b/eos/db/migrations/upgrade13.py new file mode 100644 index 000000000..047dc7129 --- /dev/null +++ b/eos/db/migrations/upgrade13.py @@ -0,0 +1,15 @@ +""" +Migration 13 + +- Alters fits table to introduce implant location attribute +""" + +import sqlalchemy + +def upgrade(saveddata_engine): + # Update fits schema to include implant location attribute + try: + saveddata_engine.execute("SELECT implantLocation FROM fits LIMIT 1") + except sqlalchemy.exc.DatabaseError: + saveddata_engine.execute("ALTER TABLE fits ADD COLUMN implantLocation INTEGER;") + saveddata_engine.execute("UPDATE fits SET implantLocation = 0") \ No newline at end of file