On Tue, 2015-10-20 at 14:01 -0200, Aline Manera wrote:
On 19/10/2015 16:06, Paulo Ricardo Paz Vital wrote:
> On Mon, 2015-10-19 at 14:46 -0200, Lucio Correia wrote:
> > Wok and Kimchi currently share the same object store. This
> > patch creates a specific store for Kimchi and uses it as
> > default location for Kimchi's model.
> >
> > This patch depends on "Fix Kimchi Model V2" just sent, due to
> > conflicts.
> >
> > Signed-off-by: Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
> > ---
> > Makefile.am | 3 ++-
> > contrib/wok.spec.fedora.in | 3 ++-
> > contrib/wok.spec.suse.in | 3 ++-
> > src/wok/plugins/kimchi/Makefile.am | 2 --
> > src/wok/plugins/kimchi/config.py.in | 4 ++++
> > src/wok/plugins/kimchi/contrib/kimchi.spec.fedora.in | 2 +-
> > src/wok/plugins/kimchi/contrib/kimchi.spec.suse.in | 2 +-
> > src/wok/plugins/kimchi/model/model.py | 3 ++-
> > src/wok/plugins/kimchi/root.py | 1 +
> > src/wok/plugins/kimchi/tests/test_mockmodel.py | 2 +-
> > 10 files changed, 16 insertions(+), 9 deletions(-)
> >
> > diff --git a/Makefile.am b/Makefile.am
> > index 3d3b5d6..430d6bc 100644
> > --- a/Makefile.am
> > +++ b/Makefile.am
> > @@ -81,6 +81,7 @@ install-deb: install
> > cp -R $(top_srcdir)/contrib/wokd
> > -upstart.conf.debian
> > \
> > $(DESTDIR)/etc/init/wokd.conf; \
> > fi
> > + $(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/wok/
> > $(MKDIR_P) $(DESTDIR)/usr/lib/firewalld/services
> > cp -R $(top_srcdir)/src/firewalld.xml \
> > $(DESTDIR)/usr/lib/firewalld/services/wokd.xml
> > @@ -126,7 +127,7 @@ install-data-local:
> > mkdir -p $(DESTDIR)/etc/init.d/; \
> > $(INSTALL_DATA) contrib/wokd.sysvinit
> > $(DESTDIR)/etc/init.d/wokd; \
> > chmod +x $(DESTDIR)/etc/init.d/wokd; \
> > - fi; \
> > + fi; \
> > if test -d /usr/lib/firewalld/services/; then \
> > mkdir -p
> > $(DESTDIR)/usr/lib/firewalld/services/; \
> > $(INSTALL_DATA) src/firewalld.xml
> > $(DESTDIR)/usr/lib/firewalld/services/wokd.xml; \
> > diff --git a/contrib/wok.spec.fedora.in
> > b/contrib/wok.spec.fedora.in
> > index 7987fa8..176bf05 100644
> > --- a/contrib/wok.spec.fedora.in
> > +++ b/contrib/wok.spec.fedora.in
> > @@ -122,6 +122,7 @@ rm -rf $RPM_BUILD_ROOT
> > %if 0%{?with_systemd}
> > %{_sysconfdir}/nginx/conf.d/wok.conf
> > %{_sharedstatedir}/wok/
> > +%{_sharedstatedir}/wok/objectstore
> > %{_localstatedir}/log/wok/*
> > %{_localstatedir}/log/wok/
> > %{_unitdir}/wokd.service
> > @@ -135,7 +136,7 @@ rm -rf $RPM_BUILD_ROOT
> > %endif
> >
> > %changelog
> > -* Fri Jun 19 2015 Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
> > 1.6
> > +* Fri Jun 19 2015 Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
> > 2.0
> > - Rename to wokd
> > - Remove kimchi specifics
> >
> > diff --git a/contrib/wok.spec.suse.in b/contrib/wok.spec.suse.in
> > index f749b9e..742ac72 100644
> > --- a/contrib/wok.spec.suse.in
> > +++ b/contrib/wok.spec.suse.in
> > @@ -95,6 +95,7 @@ rm -rf $RPM_BUILD_ROOT
> > %{_sysconfdir}/nginx/conf.d/wok.conf.in
> > %{_sysconfdir}/nginx/conf.d/wok.conf
> > %{_var}/lib/wok/
> > +%{_var}/lib/wok/objectstore
> > %{_localstatedir}/log/wok/*
> > %{_localstatedir}/log/wok/
> > %{_mandir}/man8/wokd.8.gz
> > @@ -115,7 +116,7 @@ rm -rf $RPM_BUILD_ROOT
> >
> >
> > %changelog
> > -* Fri Jun 19 2015 Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
> > 1.6
> > +* Fri Jun 19 2015 Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
> > 2.0
> > - Rename to wokd
> > - Remove kimchi specifics
> >
> > diff --git a/src/wok/plugins/kimchi/Makefile.am
> > b/src/wok/plugins/kimchi/Makefile.am
> > index 47212fe..82c4b19 100644
> > --- a/src/wok/plugins/kimchi/Makefile.am
> > +++ b/src/wok/plugins/kimchi/Makefile.am
> > @@ -99,7 +99,6 @@ config.py: config.py.in Makefile
> > install-deb: install
> > cp -R $(top_srcdir)/contrib/DEBIAN $(DESTDIR)/
> > mkdir -p $(DESTDIR)/$(localstatedir)/lib/kimchi
> > - touch $(DESTDIR)/$(localstatedir)/lib/wok/objectstore
> Need let this line on Makefile or the build of DEB will fail.
> However,
> the path must be $(DESTDIR)/$(localstatedir)/lib/kimchi/objectstore
You can remove the file from the %files in the spec file to avoid
problems in the build.
Yeah, this also can be done!
Since the objectstore will be created by Kimchi if it doesn't exist, I
think this is the better option - remove the objectstore line from
%files section.
> > mkdir -p $(DESTDIR)/$(localstatedir)/lib/kimchi/vnc
> > -tokens
> > mkdir -p
> > $(DESTDIR)/$(localstatedir)/lib/kimchi/debugreports
> > mkdir -p
> > $(DESTDIR)/$(localstatedir)/lib/kimchi/screenshots
> > @@ -144,7 +143,6 @@ install-data-local:
> > $(INSTALL_DATA) contrib/kimchid.service.fedora
> > $(DESTDIR)/etc/systemd/system/wokd.service.d/kimchi.conf; \
> > fi; \
> > $(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/kimchi/
> > - touch $(DESTDIR)/$(localstatedir)/lib/wok/objectstore
> Same here, or RPM creation will fail. Let the line but modify the
> path.
>
> > $(MKDIR_P) $(DESTDIR)$(kimchidir)
> > $(INSTALL_DATA) API.json
> > $(DESTDIR)$(kimchidir)/API.json
> > mkdir -p $(DESTDIR)/$(localstatedir)/lib/kimchi/vnc
> > -tokens
> > diff --git a/src/wok/plugins/kimchi/config.py.in
> > b/src/wok/plugins/kimchi/config.py.in
> > index 6ae0ccd..43e94e1 100644
> > --- a/src/wok/plugins/kimchi/config.py.in
> > +++ b/src/wok/plugins/kimchi/config.py.in
> > @@ -42,6 +42,10 @@ def get_debugreports_path():
> > return os.path.join(PluginPaths('kimchi').state_dir,
> > 'debugreports')
> >
> >
> > +def get_object_store():
> > + return os.path.join(PluginPaths('kimchi').state_dir,
> > 'objectstore')
> > +
> > +
> > def get_screenshot_path():
> > return os.path.join(PluginPaths('kimchi').state_dir,
> > 'screenshots')
> >
> > diff --git a/src/wok/plugins/kimchi/contrib/kimchi.spec.fedora.in
> > b/src/wok/plugins/kimchi/contrib/kimchi.spec.fedora.in
> > index e4b7b6d..41a8a86 100644
> > --- a/src/wok/plugins/kimchi/contrib/kimchi.spec.fedora.in
> > +++ b/src/wok/plugins/kimchi/contrib/kimchi.spec.fedora.in
> > @@ -100,10 +100,10 @@ rm -rf $RPM_BUILD_ROOT
> > %{_sysconfdir}/kimchi/
> > %{_sharedstatedir}/kimchi/debugreports/
> > %{_sharedstatedir}/kimchi/isos/
> > +%{_sharedstatedir}/kimchi/objectstore
> > %{_sharedstatedir}/kimchi/screenshots/
> > %{_sharedstatedir}/kimchi/vnc-tokens/
> > %{_sharedstatedir}/kimchi/
> > -%{_sharedstatedir}/wok/objectstore
> >
> >
> > %changelog
> > diff --git a/src/wok/plugins/kimchi/contrib/kimchi.spec.suse.in
> > b/src/wok/plugins/kimchi/contrib/kimchi.spec.suse.in
> > index 03dfa7b..6fbdb3e 100644
> > --- a/src/wok/plugins/kimchi/contrib/kimchi.spec.suse.in
> > +++ b/src/wok/plugins/kimchi/contrib/kimchi.spec.suse.in
> > @@ -87,10 +87,10 @@ rm -rf $RPM_BUILD_ROOT
> > %{_sysconfdir}/kimchi/
> > %{_var}/lib/kimchi/debugreports/
> > %{_var}/lib/kimchi/isos/
> > +%{_var}/lib/kimchi/objectstore
> > %{_var}/lib/kimchi/screenshots/
> > %{_var}/lib/kimchi/vnc-tokens/
> > %{_var}/lib/kimchi/
> > -%{_var}/lib/wok/objectstore
> >
> >
> > %changelog
> > diff --git a/src/wok/plugins/kimchi/model/model.py
> > b/src/wok/plugins/kimchi/model/model.py
> > index 39097c4..95bd7f3 100644
> > --- a/src/wok/plugins/kimchi/model/model.py
> > +++ b/src/wok/plugins/kimchi/model/model.py
> > @@ -22,6 +22,7 @@ import os
> >
> > from wok.basemodel import BaseModel
> > from wok.objectstore import ObjectStore
> > +from wok.plugins.kimchi import config
> > from wok.utils import import_module, listPathModules
> >
> > from libvirtconnection import LibvirtConnection
> > @@ -41,7 +42,7 @@ class Model(BaseModel):
> >
> > return instances
> >
> > - self.objstore = ObjectStore(objstore_loc)
> > + self.objstore = ObjectStore(objstore_loc or
> > config.get_object_store())
> > self.conn = LibvirtConnection(libvirt_uri)
> > kargs = {'objstore': self.objstore, 'conn':
self.conn}
> > models = []
> > diff --git a/src/wok/plugins/kimchi/root.py
> > b/src/wok/plugins/kimchi/root.py
> > index 9cbc70f..c59f859 100644
> > --- a/src/wok/plugins/kimchi/root.py
> > +++ b/src/wok/plugins/kimchi/root.py
> > @@ -54,6 +54,7 @@ class KimchiRoot(WokRoot):
> > self.messages = messages
> >
> > make_dirs = [
> > +
> > os.path.dirname(os.path.abspath(config.get_object_store())),
> > os.path.abspath(config.get_distros_store()),
> > os.path.abspath(config.get_debugreports_path()),
> > os.path.abspath(config.get_screenshot_path())
> > diff --git a/src/wok/plugins/kimchi/tests/test_mockmodel.py
> > b/src/wok/plugins/kimchi/tests/test_mockmodel.py
> > index ffbf8d5..2e6b60f 100644
> > --- a/src/wok/plugins/kimchi/tests/test_mockmodel.py
> > +++ b/src/wok/plugins/kimchi/tests/test_mockmodel.py
> > @@ -135,7 +135,7 @@ class MockModelTests(unittest.TestCase):
> > self.assertEquals(get_template_default('old',
> > 'memory'),
> > info['memory'])
> > self.assertEquals(1, info['cpus'])
> > - self.assertEquals('images/icon-vm.png', info['icon'])
> > + self.assertEquals('plugins/kimchi/images/icon-vm.png',
> > info['icon'])
> > self.assertEquals(stats_keys,
> > set(info['stats'].keys()))
> > self.assertEquals('vnc',
info['graphics']['type'])
> > self.assertEquals('127.0.0.1',
> > info['graphics']['listen'])
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel(a)ovirt.org
>
http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>