On Tue, Aug 04, 2015 at 08:11:09PM +0000, Eren Yagdiran wrote: > Any custom source provider can be added to virt-sandbox-image as a source > --- > .gitignore | 1 + > bin/Makefile.am | 16 ++++++++++++---- > bin/virt-sandbox-image.in | 3 +++ > configure.ac | 2 ++ > virt-sandbox-image/Makefile.am | 13 +++++++++++++ > virt-sandbox-image/sources/Source.py | 31 +++++++++++++++++++++++++++++++ > virt-sandbox-image/sources/__init__.py | 29 +++++++++++++++++++++++++++++ > virt-sandbox-image/virt-sandbox-image.py | 13 ++++++++++++- > 8 files changed, 103 insertions(+), 5 deletions(-) > create mode 100644 bin/virt-sandbox-image.in > create mode 100644 virt-sandbox-image/Makefile.am > create mode 100644 virt-sandbox-image/sources/Source.py > create mode 100644 virt-sandbox-image/sources/__init__.py > mode change 100644 => 100755 virt-sandbox-image/virt-sandbox-image.py > diff --git a/virt-sandbox-image/sources/Source.py b/virt-sandbox-image/sources/Source.py > new file mode 100644 > index 0000000..43f0720 > --- /dev/null > +++ b/virt-sandbox-image/sources/Source.py > @@ -0,0 +1,31 @@ > +''' > +* > +* libvirt-sandbox-config-diskaccess.h: libvirt sandbox configuration > +* > +* Copyright (C) 2015 Universitat Politècnica de Catalunya. > +* > +* This library is free software; you can redistribute it and/or > +* modify it under the terms of the GNU Lesser General Public > +* License as published by the Free Software Foundation; either > +* version 2.1 of the License, or (at your option) any later version. > +* > +* This library is distributed in the hope that it will be useful, > +* but WITHOUT ANY WARRANTY; without even the implied warranty of > +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +* Lesser General Public License for more details. > +* > +* You should have received a copy of the GNU Lesser General Public > +* License along with this library; if not, write to the Free Software > +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA > +* > +* Author: Eren Yagdiran <erenyagdiran@xxxxxxxxx> > +* > +''' Python comment syntax is '# ' What you have done here is declare a string. Also since the copyright line has accents in it, you need to add #coding=utf-8 as the 2nd line in the file, otherwise python refuses to load the code at all saying it doens't know the character encoding. > +#!/usr/bin/python THis should be the first line > + > +from abc import ABCMeta, abstractmethod > + > +class Source(): > + __metaclass__ = ABCMeta > + def __init__(self): > + pass > diff --git a/virt-sandbox-image/sources/__init__.py b/virt-sandbox-image/sources/__init__.py > new file mode 100644 > index 0000000..4830c7a > --- /dev/null > +++ b/virt-sandbox-image/sources/__init__.py > @@ -0,0 +1,29 @@ > +''' > +* > +* libvirt-sandbox-config-diskaccess.h: libvirt sandbox configuration > +* > +* Copyright (C) 2015 Universitat Politècnica de Catalunya. > +* > +* This library is free software; you can redistribute it and/or > +* modify it under the terms of the GNU Lesser General Public > +* License as published by the Free Software Foundation; either > +* version 2.1 of the License, or (at your option) any later version. > +* > +* This library is distributed in the hope that it will be useful, > +* but WITHOUT ANY WARRANTY; without even the implied warranty of > +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +* Lesser General Public License for more details. > +* > +* You should have received a copy of the GNU Lesser General Public > +* License along with this library; if not, write to the Free Software > +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA > +* > +* Author: Eren Yagdiran <erenyagdiran@xxxxxxxxx> > +* > +''' > +#!/usr/bin/python Same here about comment syntax, encoding and #!/usr being the first line. > + > +import os > +import glob > +modules = glob.glob(os.path.dirname(__file__)+"/*.py") > +__all__ = [ os.path.basename(f)[:-3] for f in modules] I don't think any of this stuff is needed, since we are directly importing the module we want based on its name > diff --git a/virt-sandbox-image/virt-sandbox-image.py b/virt-sandbox-image/virt-sandbox-image.py > old mode 100644 > new mode 100755 > index a9cb0ff..b20b240 > --- a/virt-sandbox-image/virt-sandbox-image.py > +++ b/virt-sandbox-image/virt-sandbox-image.py > @@ -1,5 +1,5 @@ > #!/usr/bin/python -Es > -# > +# -*- coding: utf-8 -*- > # Authors: Daniel P. Berrange <berrange@xxxxxxxxxx> > # Eren Yagdiran <erenyagdiran@xxxxxxxxx> > # > @@ -38,6 +38,17 @@ default_template_dir = "/var/lib/libvirt/templates" > debug = True > verbose = True > > +sys.dont_write_bytecode = True This kind of change doesn't belong in the code. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list