%define name nodemanager-lib
%define version 5.2
-%define taglevel 13
+%define taglevel 19
%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
%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
#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
Requires: gnupg
# sioc/plnet
##############################
%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
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
%{_datadir}/NodeManager/slivermanager.*
%{_datadir}/NodeManager/ticket.*
%{_datadir}/NodeManager/tools.*
-%{_datadir}/NodeManager/plugins/codemux.*
+%{_datadir}/NodeManager/plugins/__init__.*
%{_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.*
%{_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
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
%{_datadir}/NodeManager/sliver_lxc.*
%{_datadir}/NodeManager/cgroups.*
%{_datadir}/NodeManager/coresched_lxc.*
+%{_datadir}/NodeManager/plugins/privatebridge.*
%endif
##############################
# 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
%{_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
+* Sun Jul 10 2016 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - 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 <thierry.parmentelat@sophia.inria.fr> - 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 <thierry.parmentelat@sophia.inria.fr> - 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 <thierry.parmentelat@sophia.inria.fr> - 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 <thierry.parmentelat@sophia.inria.fr> - 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 <dreibh@simula.no> - 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 <thierry.parmentelat@sophia.inria.fr> - nodemanager-5.2-14
+- review packaging : one single spec file
+- review packaging : some cleanup towards debians although not complete yet
+- minor tweaks in exposing user's .ssh dir readonly
+
* Mon Apr 28 2014 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - nodemanager-5.2-13
- improve network management in slices
- _has_systemctl was not declared as global - vsys was failing to restart
* Wed Oct 03 2007 Faiyaz Ahmed <faiyaza@cs.princeton.edu> .
- Switched to SVN.
-* Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> -
+* Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> -
- Initial build.