Hello community, here is the log from the commit of package open-ovf for openSUSE:Factory checked in at Fri Apr 16 01:10:29 CEST 2010. -------- --- open-ovf/open-ovf.changes 2009-11-20 00:34:45.000000000 +0100 +++ /mounts/work_src_done/STABLE/open-ovf/open-ovf.changes 2010-04-13 17:25:45.000000000 +0200 @@ -1,0 +2,7 @@ +Tue Apr 6 16:15:10 MDT 2010 - jfehlig@novell.com + +- Fix unpacking ova that contains absolute paths in file references + bnc#590221 + ova-unpack.patch + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- ova-unpack.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ open-ovf.spec ++++++ --- /var/tmp/diff_new_pack.SiAVFD/_old 2010-04-16 01:10:06.000000000 +0200 +++ /var/tmp/diff_new_pack.SiAVFD/_new 2010-04-16 01:10:06.000000000 +0200 @@ -19,7 +19,7 @@ Name: open-ovf Version: 0.1 -Release: 2 +Release: 3 Summary: Tool for importing and exporting OVF Url: http://open-ovf.wiki.sourceforge.net/ License: EPL @@ -38,6 +38,7 @@ Patch9: lsovf.patch Patch10: rmovf.patch Patch11: chovf.patch +Patch12: ova-unpack.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: python python-devel %if 0%{?suse_version} > 1110 @@ -64,6 +65,7 @@ %patch9 -p1 %patch10 -p1 %patch11 -p1 +%patch12 -p1 %build %{__python} setup.py build @@ -77,4 +79,5 @@ %defattr(-,root,root) %doc %dir %{_docdir}/%{name} %doc %{_docdir}/%{name}/README.SuSE + %changelog ++++++ ova-unpack.patch ++++++ Index: open-ovf-0.1/py/ovf/OvfSet.py =================================================================== --- open-ovf-0.1.orig/py/ovf/OvfSet.py +++ open-ovf-0.1/py/ovf/OvfSet.py @@ -298,6 +298,23 @@ class OvfSet(object): except IOError, (errno, strerror): raise IOError("I/O error(%s): %s" % (errno, strerror)) + def copyArchive(self, path): + """ + Copy contents of archivePath to given path. + @type path: String + @param path: path to destination directory + @raise IOError: file or directory does not exist + """ + try: + if self.archivePath == None: + raise IOError("source archive does not exist") + + for curFile in os.listdir(self.archivePath): + shutil.move(os.path.join(self.archivePath, curFile), path) + + except IOError, (errno, strerror): + raise IOError("I/O error(%s): %s" % (errno, strerror)) + def getOvfFile(self): """ This function will return the object instance of the L{OvfFile} Index: open-ovf-0.1/py/scripts/ova =================================================================== --- open-ovf-0.1.orig/py/scripts/ova +++ open-ovf-0.1/py/scripts/ova @@ -144,7 +144,7 @@ def unpackOva(options, args): ovaSet = OvfSet(options.ovfFile, "r", FORMAT_TAR) if not os.path.isdir(options.targetDir): os.mkdir(options.targetDir) - ovaSet.writeAsDir(options.targetDir) + ovaSet.copyArchive(options.targetDir) else: raise IOError("Specified appliance archive " + options.ovfFile + \ " does not exist") ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org