server/migractions.py
branchtls-sprint
changeset 1016 26387b836099
parent 972 1efba3fd1364
child 1036 593df4919845
equal deleted inserted replaced
1014:4792a1bb72a9 1016:26387b836099
    17 __docformat__ = "restructuredtext en"
    17 __docformat__ = "restructuredtext en"
    18 
    18 
    19 import sys
    19 import sys
    20 import os
    20 import os
    21 from os.path import join, exists
    21 from os.path import join, exists
    22 
    22 from datetime import datetime
    23 from mx.DateTime import now
    23 
    24 from logilab.common.decorators import cached
    24 from logilab.common.decorators import cached
    25 from logilab.common.adbh import get_adv_func_helper
    25 from logilab.common.adbh import get_adv_func_helper
    26 
    26 
    27 from yams.constraints import SizeConstraint
    27 from yams.constraints import SizeConstraint
    28 from yams.schema2sql import eschema2sql, rschema2sql
    28 from yams.schema2sql import eschema2sql, rschema2sql
    81         
    81         
    82     def backup_database(self, backupfile=None, askconfirm=True):
    82     def backup_database(self, backupfile=None, askconfirm=True):
    83         config = self.config
    83         config = self.config
    84         source = config.sources()['system']
    84         source = config.sources()['system']
    85         helper = get_adv_func_helper(source['db-driver'])
    85         helper = get_adv_func_helper(source['db-driver'])
    86         date = now().strftime('%Y-%m-%d_%H:%M:%S')
    86         date = datetime.now().strftime('%Y-%m-%d_%H:%M:%S')
    87         app = config.appid
    87         app = config.appid
    88         backupfile = backupfile or join(config.backup_dir(),
    88         backupfile = backupfile or join(config.backup_dir(),
    89                                         '%s-%s.dump' % (app, date))
    89                                         '%s-%s.dump' % (app, date))
    90         if exists(backupfile):
    90         if exists(backupfile):
    91             if not self.confirm('a backup already exists for %s, overwrite it?' % app):
    91             if not self.confirm('a backup already exists for %s, overwrite it?' % app):
   315                 
   315                 
   316     def cmd_remove_cube(self, cube):
   316     def cmd_remove_cube(self, cube):
   317         removedcubes = super(ServerMigrationHelper, self).cmd_remove_cube(cube)
   317         removedcubes = super(ServerMigrationHelper, self).cmd_remove_cube(cube)
   318         if not removedcubes:
   318         if not removedcubes:
   319             return
   319             return
       
   320         print removedcubes
   320         fsschema = self.fs_schema
   321         fsschema = self.fs_schema
   321         removedcubes_schema = self.config.load_schema()
   322         removedcubes_schema = self.config.load_schema()
   322         reposchema = self.repo.schema
   323         reposchema = self.repo.schema
   323         # execute pre-remove files
   324         # execute pre-remove files
   324         for pack in reversed(removedcubes):
   325         for pack in reversed(removedcubes):