X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa.spec;h=8027d5c155f9146cae0863caa668f37041ae386f;hb=959c535951d5a4ebf0d56a41e76b97843c722b23;hp=ce705abf8a1c15a3a09ff923da73e8f80ed01717;hpb=2d2a85edf02c635b592dfdb52c92dfa97b845f68;p=sfa.git diff --git a/sfa.spec b/sfa.spec index ce705abf..8027d5c1 100644 --- a/sfa.spec +++ b/sfa.spec @@ -1,6 +1,6 @@ %define name sfa -%define version 3.1 -%define taglevel 22 +%define version 4.0 +%define taglevel 2 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) @@ -24,31 +24,32 @@ URL: %{SCMURL} Summary: Server-side for SFA, generic implementation derived from PlanetLab Group: Applications/System BuildRequires: make -BuildRequires: python-setuptools +# for uuidgen - used in db password generation +Requires: util-linux-ng # for the registry Requires: postgresql >= 8.2, postgresql-server >= 8.2 Requires: postgresql-python -Requires: python-psycopg2 -# f8=0.4 - f12=0.5 f14=0.6 f16=0.7 -Requires: python-sqlalchemy -Requires: python-migrate -# for uuidgen - used in db password generation -# on f8 this actually comes with e2fsprogs, go figure -Requires: util-linux-ng -# and the SFA libraries of course +Requires: python2-psycopg2 +Requires: python2-sqlalchemy +Requires: python2-migrate +# and of course the bulk of it Requires: sfa-common %package common Summary: Python libraries for SFA, generic implementation derived from PlanetLab Group: Applications/System -Requires: python >= 2.7 -Requires: pyOpenSSL >= 0.7 +Requires: python +Requires: pyOpenSSL Requires: m2crypto -Requires: python-dateutil -Requires: python-lxml -Requires: libxslt-python +Requires: python2-dateutil +Requires: python2-lxml +%if "%{distro}" == "Fedora" && "%{distrorelease}" <= "27" Requires: python-ZSI +%else +Requires: python2-zsi +%endif +Requires: libxslt-python Requires: xmlsec1-openssl-devel %package client @@ -62,16 +63,6 @@ Summary: the SFA layer around MyPLC Group: Applications/System Requires: sfa -%package federica -Summary: the SFA layer around Federica -Group: Applications/System -Requires: sfa - -%package nitos -Summary: the SFA layer around NITOS -Group: Applications/System -Requires: sfa - %package iotlab Summary: the SFA layer around IotLab Group: Applications/System @@ -108,12 +99,6 @@ sfi.py, together with other utilities. This package implements the SFA interface which serves as a layer between the existing PlanetLab interfaces and the SFA API. -%description federica -The SFA driver for FEDERICA. - -%description nitos -The SFA driver for NITOS. - %description iotlab The SFA driver for IotLab. @@ -142,7 +127,7 @@ make VERSIONTAG="%{version}-%{taglevel}" SCMURL="%{SCMURL}" install DESTDIR="$RP rm -rf $RPM_BUILD_ROOT %files -/usr/lib/systemd/system/*.service +/lib/systemd/system/*.service %{_bindir}/sfa-start.py* %{_bindir}/sfaadmin.py* %{_bindir}/sfaadmin @@ -185,7 +170,6 @@ rm -rf $RPM_BUILD_ROOT %files plc %defattr(-,root,root) %{python_sitelib}/sfa/planetlab -%{python_sitelib}/sfa/openstack /etc/sfa/pl.rng /etc/sfa/credential.xsd /etc/sfa/top.xsd @@ -194,12 +178,6 @@ rm -rf $RPM_BUILD_ROOT /etc/sfa/protogeni-rspec-common.xsd /etc/sfa/topology -%files federica -%{python_sitelib}/sfa/federica - -%files nitos -%{python_sitelib}/sfa/nitos - %files iotlab %{python_sitelib}/sfa/iotlab @@ -214,33 +192,51 @@ rm -rf $RPM_BUILD_ROOT %files tests %{_datadir}/sfa/tests -### sfa installs the 'sfa' service +# arbitrary choice here, subject to manual tweaks if needed +# this is in line with default_config.xml +# no need to enable sfa-db, will be activated as a dependency %post -chkconfig --add sfa +systemctl enable sfa-aggregate +systemctl enable sfa-registry %preun if [ "$1" = 0 ] ; then - /sbin/service sfa stop || : - /sbin/chkconfig --del sfa || : + for service in sfa-aggregate sfa-registry sfa-db; do + systemctl is-enabled $service && systemctl disable $service + systemctl is-active $service && systemctl stop $service + done fi %postun -[ "$1" -ge "1" ] && { service sfa dbdump ; service sfa restart ; } - -#### sfa-cm installs the 'sfa-cm' service -#%post cm -#chkconfig --add sfa-cm -# -#%preun cm -#if [ "$1" = 0 ] ; then -# /sbin/service sfa-cm stop || : -# /sbin/chkconfig --del sfa-cm || : -#fi -# -#%postun cm -#[ "$1" -ge "1" ] && service sfa-cm restart || : +if [ "$1" -ge "1" ] ; then + for service in sfa-db sfa-registry sfa-aggregate; do + systemctl is-active $service && systemctl restart $service + done +fi %changelog +* Mon Jan 07 2019 Thierry - sfa-4.0-2 +- have shebangs mention python2 since it is what this version runs on +- use rpm names in python2-something for expressing dependencies +- remove build dependency to python-setuptools +- Handle C-BAS hrn format with "\" (Loic) +- sfa-start does not daemonize anymore (this is handled by systemd) +- a little nicer logs when troubleshooting auth issues +- use systemctl in Makefile when syncing + +* Wed May 30 2018 Thierry - sfa-4.0-1 +- systemd service files install in /lib instead of /usr/lib for ubuntus +- removed all features relating to slice manager +- removed all features relating to component manager + +* Mon May 28 2018 Thierry - sfa-4.0-0 +- expose geni_api_versions as https:// +- avoid publishing non-relevant entries in GetVersion +- fixes in the IoT-lab driver (thanks Loic) +- reviewed logging policy, less awkward and more reliable; /var/log/sfa{,-import}.log should now be alive and time rotate +- rewrote init-style startup script into systemd-native services: sfa-aggregate and sfa-registry, that both depend on sfa-db +- huge cleanup, removed everything related to init.d; debian; flash-policy; max aggregate; federica, openstack/nova and nitos drivers + * Fri Mar 16 2018 Thierry - sfa-3.1-22 - pl: tweaks for exposing country / city on nodes from site tags if set - pl: tweaks for exposing hardware_types on nodes from node tag 'hardware_type' if set