[Kimchi-devel] [PATCH] Update Wok and Kimchi systemd process.
Aline Manera
alinefm at linux.vnet.ibm.com
Thu Oct 15 14:08:57 UTC 2015
Thanks for the explanation, Paulo!
I will apply it soon.
On 15/10/2015 09:39, Paulo Ricardo Paz Vital wrote:
> Aline, addressing both questions in one answer.
>
> May be the name of the file kimchid.service.fedora is not a good name,
> but there is no Kimchi service. We will work only with Wok service. The
> kimchid.service.fedora file is a configuration extension for the
> wokd.service, where after the installation of the kimchid.service.fedor
> a will provide the information to wokd.service that libvirtd is
> required.
>
> Let'me try to explain how it works using a use case. The user will
> install the RPM or DEB file of Wok, only. This will enable the wokd
> service in systemd. Starting the service, libvirtd will not be
> required.
>
> Then, the user installs the RPM or DEB file of Kimchi. This will
> install an additional file in /etc/systemd/system/wokd.service.d called
> kimchi.conf that extends how wokd.service will works after the
> installation of Kimchi. At this point, wokd.service will read this
> configuration file and used it to start up the service, now requeiring
> libvirtd as required service.
>
> If user uninstall the RPM or DEB file of Kimchi, this configuration
> file will be deleted and libvirtd will not be required anymore to
> wokd.service.
>
> With this approach I can extend wokd service to work with any kind of
> plugin I want to use in my system, by configuring only those
> requirements and particularities that each plugin needs.
>
> Best regards,
> Paulo
>
> On Wed, 2015-10-14 at 18:48 -0300, Aline Manera wrote:
>> Hi Paulo,
>>
>> I am not familiar with systemd config files so I have some questions:
>>
>> 1) The main service now will be wokd. How starting wokd do we make
>> sure
>> kimchid service will be trigged and then libvirtd service?
>>
>> 2) From my view, with your patch the kimchid service would be the
>> main
>> which is not true.
>>
>> Regards,
>> Aline Manera
>>
>> On 09/10/2015 08:18, pvital at linux.vnet.ibm.com wrote:
>>> From: Paulo Vital <pvital at linux.vnet.ibm.com>
>>>
>>> Create kimchid.service.fedora as additional configuration of
>>> wokd.service to
>>> set the correct start-up of Kimchi dependencies. Also, removed
>>> libvirtd.service
>>> as dependency of Wok.
>>>
>>> Signed-off-by: Paulo Vital <pvital at linux.vnet.ibm.com>
>>> ---
>>> contrib/wokd.service.fedora | 2 --
>>> src/wok/plugins/kimchi/Makefile.am | 9
>>> ++++++++-
>>> src/wok/plugins/kimchi/configure.ac | 9
>>> +++++++++
>>> src/wok/plugins/kimchi/contrib/Makefile.am | 6 +++++-
>>> src/wok/plugins/kimchi/contrib/kimchid.service.fedora | 7 +++++++
>>> 5 files changed, 29 insertions(+), 4 deletions(-)
>>> create mode 100644
>>> src/wok/plugins/kimchi/contrib/kimchid.service.fedora
>>>
>>> diff --git a/contrib/wokd.service.fedora
>>> b/contrib/wokd.service.fedora
>>> index 023b1af..33d88d8 100644
>>> --- a/contrib/wokd.service.fedora
>>> +++ b/contrib/wokd.service.fedora
>>> @@ -1,7 +1,5 @@
>>> [Unit]
>>> Description=Wok - Webserver Originated from Kimchi
>>> -Requires=libvirtd.service
>>> -After=libvirtd.service
>>>
>>> [Service]
>>> Type=simple
>>> diff --git a/src/wok/plugins/kimchi/Makefile.am
>>> b/src/wok/plugins/kimchi/Makefile.am
>>> index 34ddef4..236e96f 100644
>>> --- a/src/wok/plugins/kimchi/Makefile.am
>>> +++ b/src/wok/plugins/kimchi/Makefile.am
>>> @@ -1,7 +1,7 @@
>>> #
>>> # Kimchi
>>> #
>>> -# Copyright IBM Corp, 2013
>>> +# Copyright IBM Corp, 2013-2015
>>> #
>>> # This library is free software; you can redistribute it and/or
>>> # modify it under the terms of the GNU Lesser General Public
>>> @@ -139,6 +139,10 @@ ChangeLog:
>>> fi
>>>
>>> install-data-local:
>>> + @if test -d "$(systemdsystemunitdir)" ; then \
>>> + mkdir -p
>>> $(DESTDIR)/etc/systemd/system/wokd.service.d; \
>>> + $(INSTALL_DATA) contrib/kimchid.service.fedora
>>> $(DESTDIR)/etc/systemd/system/wokd.service.d/kimchi.conf; \
>>> + fi; \
>>> $(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/wok/
>>> touch $(DESTDIR)/$(localstatedir)/lib/wok/objectstore
>>> $(MKDIR_P) $(DESTDIR)$(kimchidir)
>>> @@ -147,6 +151,9 @@ install-data-local:
>>> mkdir -p
>>> $(DESTDIR)/$(localstatedir)/lib/wok/plugins/kimchi/{debugreports,is
>>> os,screenshots}
>>>
>>> uninstall-local:
>>> + @if test -f
>>> $(DESTDIR)/etc/systemd/system/wokd.service.d/kimchi.conf; then \
>>> + $(RM)
>>> $(DESTDIR)/etc/systemd/system/wokd.service.d/kimchi.conf; \
>>> + fi; \
>>> $(RM) $(DESTDIR)$(kimchidir)/API.json
>>> $(RM) -rf
>>> $(DESTDIR)/$(localstatedir)/lib/wok/plugins/kimchi
>>>
>>> diff --git a/src/wok/plugins/kimchi/configure.ac
>>> b/src/wok/plugins/kimchi/configure.ac
>>> index adab45b..6b334c6 100644
>>> --- a/src/wok/plugins/kimchi/configure.ac
>>> +++ b/src/wok/plugins/kimchi/configure.ac
>>> @@ -64,6 +64,15 @@ else
>>> AC_SUBST([ENABLE_SAMPLE], [False])
>>> fi
>>>
>>> +# check for systemd
>>> +PKG_PROG_PKG_CONFIG
>>> +AC_ARG_WITH([systemdsystemunitdir],
>>> + AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory
>>> for systemd service files]),
>>> + [], [with_systemdsystemunitdir=$($PKG_CONFIG -
>>> -variable=systemdsystemunitdir systemd)])
>>> +if test "x$with_systemdsystemunitdir" != xno; then
>>> + AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
>>> +fi
>>> +
>>> AC_ARG_WITH(
>>> [spice-html5],
>>> [AS_HELP_STRING([--with-spice-html5],
>>> diff --git a/src/wok/plugins/kimchi/contrib/Makefile.am
>>> b/src/wok/plugins/kimchi/contrib/Makefile.am
>>> index 5001191..d1a4569 100644
>>> --- a/src/wok/plugins/kimchi/contrib/Makefile.am
>>> +++ b/src/wok/plugins/kimchi/contrib/Makefile.am
>>> @@ -1,4 +1,7 @@
>>> -# Copyright IBM Corp, 2013
>>> +#
>>> +# Kimchi
>>> +#
>>> +# Copyright IBM Corp, 2013-2015
>>> #
>>> # This library is free software; you can redistribute it and/or
>>> # modify it under the terms of the GNU Lesser General Public
>>> @@ -18,6 +21,7 @@ SUBDIRS = DEBIAN
>>>
>>> EXTRA_DIST = \
>>> check_i18n.py \
>>> + kimchid.service.fedora \
>>> kimchi.spec.fedora.in \
>>> make-deb.sh.in \
>>> $(NULL)
>>> diff --git a/src/wok/plugins/kimchi/contrib/kimchid.service.fedora
>>> b/src/wok/plugins/kimchi/contrib/kimchid.service.fedora
>>> new file mode 100644
>>> index 0000000..cd8e137
>>> --- /dev/null
>>> +++ b/src/wok/plugins/kimchi/contrib/kimchid.service.fedora
>>> @@ -0,0 +1,7 @@
>>> +[Unit]
>>> +Requires=libvirtd.service wokd.service
>>> +After=libvirtd.service wokd.service
>>> +
>>> +[Service]
>>> +Nice=0
>>> +PrivateTmp=yes
More information about the Kimchi-devel
mailing list