diff --git a/tracking/migration.py b/tracking/migration.py deleted file mode 100644 index 2f02ea5..0000000 --- a/tracking/migration.py +++ /dev/null @@ -1,40 +0,0 @@ -# cybertools.tracking.migration - -"""Tools for migration ZODB-/BTree-based tracks to SQL-base records.""" - -from datetime import datetime -import time - -import config -from cco.storage.common import Context, getEngine -from cco.storage.tracking import record -from loops.config.base import LoopsOptions - - -def migrate(loopsRoot, recFolderName, storageFactory=record.Storage): - rf = loopsRoot.getRecordManager().get(recFolderName) - if rf is None: - print('*** ERROR: folder %r not found!' % recFolderName) - return - options = LoopsOptions(loopsRoot) - print('*** database:', config.dbname, config.dbuser, config.dbpassword) - schema = options('cco.storage.schema') or None - if schema is not None: - schema = schema[0] - print('*** schema:', schema) - context = Context(getEngine(config.dbengine, config.dbname, - config.dbuser, config.dbpassword, - host=config.dbhost, port=config.dbport), - schema=schema) - storage = storageFactory(context) - for id, inTrack in rf.items(): - #ts = time.mktime(inTrack.timeStamp.timetuple()) - ts = datetime.fromtimestamp(inTrack.timeStamp) - print('*** in:', id, inTrack) - head = [inTrack.metadata[k] for k in storage.trackFactory.headFields] - print('*** out:', head, ts) - track = storage.trackFactory(*head, trackId=int(id), - timeStamp=ts, data=inTrack.data) - storage.upsert(track) - -