X-Git-Url: http://git.onelab.eu/?p=nodemanager.git;a=blobdiff_plain;f=nodemanager.spec;h=e4ef6db07440aed78609b628fb36c21b31c93545;hp=51da084b3e45505bda1f18cfd10b341b9a55da6b;hb=HEAD;hpb=0419f0aba568a51b19ee6321e1f64797c38b0754 diff --git a/nodemanager.spec b/nodemanager.spec index 51da084..e4ef6db 100644 --- a/nodemanager.spec +++ b/nodemanager.spec @@ -1,8 +1,8 @@ %define slicefamily %{pldistro}-%{distroname}-%{_arch} %define name nodemanager-lib -%define version 5.2 -%define taglevel 14 +%define version 7.0 +%define taglevel 0 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} @@ -13,16 +13,10 @@ %define _unpackaged_files_terminate_build 0 ############################## -# use initscripts or systemd unit files to start installed services -%if "%{distro}" == "Fedora" && "%{distrorelease}" >= "18" +# only systemd unit files to start installed services %define make_options WITH_SYSTEMD=true -%define initdir /usr/lib/systemd/system +%define systemddir /usr/lib/systemd/system %define build_lxc 1 -%else -%define make_options WITH_INIT=true -%define initdir %{_initrddir} -%define build_vs 1 -%endif ############################## Summary: PlanetLab Node Manager Library @@ -43,16 +37,19 @@ URL: %{SCMURL} #BuildArch: noarch # make sure we can invoke systemctl in post install script -%if "%{initdir}" != "%{_initrddir}" Requires: systemd -%endif # Uses function decorators -Requires: python >= 2.7 +Requires: python3 # connecting PLC -Requires: python-pycurl +Requires: python3-pycurl # Signed tickets +# see myplc/plc.d/gpg for more details on the gnupg / gpg topic +%if "%{distro}" == "Fedora" && %{distrorelease} >= 31 +Requires: gnupg1 +%else Requires: gnupg +%endif # sioc/plnet Requires: pyplnet >= 4.3 # we do need the slice images in any case @@ -84,22 +81,6 @@ rm -rf $RPM_BUILD_ROOT ############################## %post -########## traditional init -%if "%{initdir}" == "%{_initrddir}" -########## -chkconfig --add conf_files -chkconfig conf_files on -chkconfig --add nm -chkconfig nm on -chkconfig --add fuse-pl -chkconfig fuse-pl on -if [ "$PL_BOOTCD" != "1" ] ; then - service nm restart - service fuse-pl restart -fi -########## -%else -########## systemd systemctl enable nm.service systemctl enable conf_files.service # empty @@ -108,33 +89,15 @@ if [ "$PL_BOOTCD" != "1" ] ; then systemctl restart nm.service # systemctl restart fuse-pl.service fi -########## -%endif ############################## %preun # 0 = erase, 1 = upgrade -########## traditional init -%if "%{initdir}" == "%{_initrddir}" -########## -if [ $1 -eq 0 ] ; then - chkconfig fuse-pl off - chkconfig --del fuse-pl - chkconfig nm off - chkconfig --del nm - chkconfig conf_files off - chkconfig --del conf_files -fi -########## -%else -########## systemd if [ $1 -eq 0 ] ; then # systemctl disable fuse-pl.service systemctl disable conf_files.service systemctl disable nm.service fi -########## -%endif ############################## %clean @@ -163,11 +126,9 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/NodeManager/ticket.* %{_datadir}/NodeManager/tools.* %{_datadir}/NodeManager/plugins/__init__.* -%{_datadir}/NodeManager/plugins/codemux.* %{_datadir}/NodeManager/plugins/hostmap.* %{_datadir}/NodeManager/plugins/interfaces.* %{_datadir}/NodeManager/plugins/omf_resctl.* -%{_datadir}/NodeManager/plugins/privatebridge.* %{_datadir}/NodeManager/plugins/rawdisk.* %{_datadir}/NodeManager/plugins/reservation.* %{_datadir}/NodeManager/plugins/sfagids.* @@ -176,10 +137,12 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/NodeManager/plugins/syndicate.* %{_datadir}/NodeManager/plugins/vsys.* %{_datadir}/NodeManager/plugins/vsys_privs.* +%{_datadir}/NodeManager/plugins/ipv6.* +%{_datadir}/NodeManager/plugins/update_ipv6addr_slivertag.* %{_datadir}/NodeManager/sliver-initscripts/ %{_datadir}/NodeManager/sliver-systemd/ %{_bindir}/forward_api_calls -%{initdir}/ +%{systemddir}/ %{_sysconfdir}/logrotate.d/nodemanager /var/lib/nodemanager/ %config(noreplace) /etc/sysconfig/nodemanager @@ -192,9 +155,9 @@ Summary: PlanetLab Node Manager Plugin for lxc nodes Group: System Environment/Daemons # we use libvirt Requires: libvirt -Requires: libvirt-python +Requires: python3-libvirt # cgroups.py needs this -Requires: python-inotify +Requires: python3-inotify # the common package for nodemanager Requires: nodemanager-lib = %{version} # the lxc-specific tools for using slice images @@ -209,6 +172,7 @@ nodemanager-lxc provides the lxc code for the PlanetLab Node Manager. %{_datadir}/NodeManager/sliver_lxc.* %{_datadir}/NodeManager/cgroups.* %{_datadir}/NodeManager/coresched_lxc.* +%{_datadir}/NodeManager/plugins/privatebridge.* %endif ############################## @@ -222,7 +186,7 @@ Group: System Environment/Daemons # old name, when all came as a single package with vserver wired in Obsoletes: NodeManager -# for nodeupdate +# for nodeupdate Provides: nodemanager # our interface to the vserver patch @@ -242,12 +206,57 @@ nodemanager-vs provides the vserver code for the PlanetLab Node Manager. %{_datadir}/NodeManager/coresched_vs.* # this plugin uses vserver for now %{_datadir}/NodeManager/plugins/drl.* +# in vs only : turn off the codemux plugin in lxc for now as +# it is responsible for the slice re-creation issue +%{_datadir}/NodeManager/plugins/codemux.* %endif ############################## ############################## %changelog +* Mon Jan 07 2019 Thierry Parmentelat - nodemanager-7.0-0 +- ported to python3 +- add a systemd dependency to network-online so the service won't start too early +- only support systemd, removed init-oriented business +- also removed debian-oriented business + +* Mon Jan 07 2019 Thierry Parmentelat - nodemanager-5.2-20 +- simply make conf_files.py executable, so that bootmanager can be py2/py3 compliant + +* Sun Jul 10 2016 Thierry Parmentelat - nodemanager-5.2-19 +- tweak to run against libvirt-python-1.3.3 under f24 +- fix by Thomas Dreibholz - misspelled ovs-ovsctl +- default vrf is f24 - not that it matters much + +* Fri Nov 13 2015 Thierry Parmentelat - nodemanager-5.2-18 +- remove codemux plugin from lxc - was causing slice re-creation issue +- has reconnect capabilities to libvirt deamon +- reinstate code from a previous version, that deals with btrfs cleaning up +- cleaned up cgroups.py + +* Fri Jun 26 2015 Thierry Parmentelat - nodemanager-5.2-17 +- first step towards auto slice-reimaging +- slices that would be reimaged because of a change of slicefamily are +- identified in the nodemanager's log +- might have fixed fd leaks (use context managers whenever possible) + +* Fri Apr 03 2015 Thierry Parmentelat - nodemanager-5.2-16 +- initscript plugin reviewed +- turn off the initscript machinery completely on hosts that run f>=20 +- some tweaks related to cgroup naming in f>=20, including for ipv6 +- ideally all code depending on the cgroup naming scheme should use cgroups.py +- we are not there yet but this is a bit cleaner already + +* Wed Feb 18 2015 Thierry Parmentelat - nodemanager-5.2-15 +- addition to support for ipv6 to lxc slivers +- (thanks to Guilherme Sperb Machado) +- privatebridge plugin is back to the -lxc rpm +- add systemd dependency to network.target + +* Tue Jul 22 2014 Thomas Dreibholz - nodeimage-5.2-15 +- nm.service fix: the node manager needs network.target, since it needs to contact the PLC. + * Wed Jul 16 2014 Thierry Parmentelat - nodemanager-5.2-14 - review packaging : one single spec file - review packaging : some cleanup towards debians although not complete yet @@ -663,5 +672,5 @@ nodemanager-vs provides the vserver code for the PlanetLab Node Manager. * Wed Oct 03 2007 Faiyaz Ahmed . - Switched to SVN. -* Mon Nov 13 2006 Mark Huang - +* Mon Nov 13 2006 Mark Huang - - Initial build.