update_config_0.4.x-0.5.py
branchv0.6.x
changeset 167 bb58aedefa3a
parent 166 b152ad5c7071
child 168 fd496561acc6
--- a/update_config_0.4.x-0.5.py	Wed Jan 13 00:08:44 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,113 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: UTF-8 -*-
-# Copyright (c) 2008 - 2010, Pascal Volk
-# See COPYING for distribution information.
-
-import os
-os.sys.path.remove(os.sys.path[0])
-from time import time
-from ConfigParser import ConfigParser
-from shutil import copy2
-from VirtualMailManager.constants.VERSION import VERSION
-
-
-def get_config_file():
-    f = None
-    for d in ('/root', '/usr/local/etc', '/etc'):
-        tmp = os.path.join(d, 'vmm.cfg')
-        if os.path.isfile(tmp):
-            f = tmp
-            break
-    if f:
-        return f
-    else:
-        os.sys.stderr.write('error: vmm.cfg not found\n')
-        os.sys.exit(2)
-
-def update(cp):
-    if VERSION == '0.4':
-        upd_040(cp)
-    elif VERSION == '0.5':
-        upd_050(cp)
-    elif VERSION == '0.5.1':
-        upd_051(cp)
-    elif VERSION == '0.5.2':
-        os.sys.stdout.write('info: nothing to do for version %s\n' % VERSION)
-        os.sys.exit(0)
-    else:
-        os.sys.stderr.write(
-            'error: the version %s is not supported by this script\n' % VERSION)
-        os.sys.exit(3)
-
-def get_cfg_parser(cf):
-    fh = file(cf, 'r')
-    cp = ConfigParser()
-    cp.readfp(fh)
-    fh.close()
-    return cp
-
-def update_cfg_file(cp, cf):
-    copy2(cf, cf+'.bak.'+str(time()))
-    fh = file(cf, 'w')
-    cp.write(fh)
-    fh.close()
-
-def upd_040(cp):
-    if not cp.has_option('maildir', 'name') or not cp.has_option('maildir',
-        'folders') or cp.has_option('maildir', 'folder'):
-        if not cp.has_option('maildir', 'name'):
-            if cp.has_option('maildir', 'folder'):
-                cp.set('maildir', 'name', cp.get('maildir', 'folder'))
-                cp.remove_option('maildir', 'folder')
-                sect_opt.append(('maildir', 'name'))
-            else:
-                cp.set('maildir', 'name', 'Maildir')
-                sect_opt.append(('maildir', 'name'))
-        if not cp.has_option('maildir', 'folders'):
-            cp.set('maildir', 'folders', 'Drafts:Sent:Templates:Trash')
-            sect_opt.append(('maildir', 'folders'))
-        if cp.has_option('maildir', 'folder'):
-            cp.remove_option('maildir', 'folder')
-    upd_050(cp)
-
-def upd_050(cp):
-    if not cp.has_option('bin', 'postconf'):
-        try:
-            postconf = os.sys.argv[1].strip()
-            if len(postconf):
-                cp.set('bin', 'postconf', postconf)
-                sect_opt.append(('bin', 'postconf'))
-            else: # possible?
-                cp.set('bin', 'postconf', '/usr/sbin/postconf')
-                sect_opt.append(('bin', 'postconf'))
-        except IndexError:
-            cp.set('bin', 'postconf', '/usr/sbin/postconf')
-            sect_opt.append(('bin', 'postconf'))
-    upd_051(cp)
-
-def upd_051(cp):
-    if not cp.has_option('misc', 'dovecotvers') or cp.has_option('services',
-            'managesieve'):
-        if not cp.has_option('misc', 'dovecotvers'):
-            cp.set('misc', 'dovecotvers', os.sys.argv[2].strip())
-            sect_opt.append(('misc', 'dovecotvers'))
-        if cp.has_option('services', 'managesieve'):
-            cp.set('services','sieve',cp.getboolean('services', 'managesieve'))
-            cp.remove_option('services', 'managesieve')
-            sect_opt.append(('services', 'sieve'))
-
-# def main():
-if __name__ == '__main__':
-    sect_opt = []
-    cf = get_config_file()
-    cp = get_cfg_parser(cf)
-    update(cp)
-    if len(sect_opt): 
-        update_cfg_file(cp, cf)
-        print 'Please have a look at your configuration: %s' %cf
-        print 'and verify the value from:'
-        for s_o in sect_opt:
-            print '  [%s] %s' % s_o
-        print
-
-