From: yomguy Date: Sun, 19 Jul 2009 16:48:43 +0000 (+0000) Subject: fix recover dir X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=9b6d4b7d01bf65ad37407a3fa7a0900189d54456;p=tools.git fix recover dir git-svn-id: http://svn.parisson.org/svn/tools/trunk@67 457c0346-1240-4656-8a5a-9edca8063506 --- diff --git a/python-zopebackup/zope_backup.py b/python-zopebackup/zope_backup.py index e4240f7..b8afb29 100755 --- a/python-zopebackup/zope_backup.py +++ b/python-zopebackup/zope_backup.py @@ -2,7 +2,7 @@ # Backups all zope instances (any versions) # # Depends : zope_instance.py -# Copyright (C) 2007-2008 Guillaume Pellerin +# Copyright (C) 2007-2009 Guillaume Pellerin import os import sys @@ -10,15 +10,15 @@ from zope_instance import * version = '0.2' info = 'zope_backup v'+version+'\n'+ \ - """Copyright (C) 2007-2008 Guillaume Pellerin + """Copyright (C) 2007-2009 Guillaume Pellerin Usage: zope_backup DIRECTORY where DIRECTORY is the directory where you want to backup the instances of the different versions of zope.""" +print info -if len(sys.argv) < 2: - sys.exit(info) -else : - backup_dir = sys.argv[1] +backup_dir = sys.argv[-1] +if os.path.exists(backup_dir): + sys.exit('This backup directory does not exists !') z = ZopeInstall() instances = z.get_instances() @@ -28,13 +28,11 @@ def backup_all(): for version in instances: for instance in instances[version]: z = ZopeInstance(version, instance) - print z.get_instance_dir() + print 'Backuping : ' + z.get_instance_dir() + '...' z.backup(backup_dir) - print version + ': ' + instance + ' backuped !' + print version + ': ' + instance + ' backuped !' if __name__ == '__main__': backup_all() print "Backup_all Zopes done !" - - diff --git a/python-zopebackup/zope_instance.py b/python-zopebackup/zope_instance.py index 1d9c778..1dda76c 100644 --- a/python-zopebackup/zope_instance.py +++ b/python-zopebackup/zope_instance.py @@ -33,10 +33,9 @@ class ZopeInstall: distribution used""" def __init__(self): - self.versions = ['2.7', '2.9', '2.8', '2.10'] - self.instance_main_dir = '/var/lib' - self.zope_main_dir = '/usr/lib' - + self.versions = ['2.7', '2.9', '2.8', '2.10'] + self.instance_main_dir = '/var/lib' + self.zope_main_dir = '/usr/lib' def get_instances(self): """Return all instances in all zope versions installed""" @@ -66,7 +65,6 @@ class ZopeInstance(ZopeInstall): self.instance_etc = self.instance_dir + os.sep + 'etc' + os.sep self.instance_lib = self.instance_dir + os.sep + 'lib' + os.sep self.repozo = self.zope_main_dir + os.sep + 'zope' + self.version + os.sep + 'bin' + os.sep + 'repozo.py' - self.instance_backup_dir = self.backup_dir + os.sep + self.version + os.sep + self.instance def get_instance_dir(self): return self.instance_dir @@ -78,7 +76,7 @@ class ZopeInstance(ZopeInstall): os.system(command) def untar(self, name, sub_dir): - os.chdir(self.instance_backup_dir) + os.chdir(self.instance_dir) command = 'tar xzf '+self.instance_backup_dir+os.sep+name+'.tar.gz && ' + \ 'rsync -a --delete ' + self.instance_backup_dir+os.sep+sub_dir + \ ' ' + sub_dir + os.sep + ' && ' + \ @@ -89,7 +87,7 @@ class ZopeInstance(ZopeInstall): def backup(self, backup_dir): """Backup the instance""" self.backup_dir = backup_dir - + self.instance_backup_dir = self.backup_dir + os.sep + self.version + os.sep + self.instance path = self.instance_backup_dir+ os.sep + 'Data' if not os.path.exists(path):