X-Git-Url: http://git.onelab.eu/?p=sfa.git;a=blobdiff_plain;f=sfa.spec;h=9c7f38b4dcb328b2d813dbb25e76ccc9759bb97c;hp=a835e1189fa02a37c57b41ec57220a85c5e634f7;hb=5368ae9d54d4b00d5adf0f8c20b6b7192945dbb8;hpb=3e20cc0cfaac3d5168b269d866a5778fdd4f226e diff --git a/sfa.spec b/sfa.spec index a835e118..9c7f38b4 100644 --- a/sfa.spec +++ b/sfa.spec @@ -1,6 +1,6 @@ %define name sfa %define version 2.1 -%define taglevel 0 +%define taglevel 23 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) @@ -21,24 +21,11 @@ Packager: PlanetLab Central Distribution: PlanetLab %{plrelease} URL: %{SCMURL} -Summary: the SFA python libraries +Summary: Server-side for SFA, generic implementation derived from PlanetLab Group: Applications/System BuildRequires: make +BuildRequires: python-setuptools -Requires: myplc-config -Requires: python >= 2.5 -Requires: pyOpenSSL >= 0.7 -Requires: m2crypto -Requires: xmlsec1-openssl-devel -Requires: libxslt-python -Requires: python-ZSI -# for uuidgen - used in db password generation -# on f8 this actually comes with e2fsprogs, go figure -Requires: util-linux-ng -# xmlbuilder depends on lxml -Requires: python-lxml -Requires: python-setuptools -Requires: python-dateutil # for the registry Requires: postgresql >= 8.2, postgresql-server >= 8.2 Requires: postgresql-python @@ -48,45 +35,57 @@ Requires: python-sqlalchemy Requires: python-migrate # the eucalyptus aggregate uses this module Requires: python-xmlbuilder +# 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: sfa-common -# python 2.5 has uuid module added, for python 2.4 we still need it. -# we can't really check for if we can load uuid as a python module, -# it'll be installed by "devel.pkgs". we have the epel repository so -# python-uuid will be provided. but we can test for the python -# version. -# %define has_py24 %( python -c "import sys;sys.exit(sys.version_info[0:2] == (2,4))" 2> /dev/null; echo $? ) -# %if %has_py24 -# -# this also didn't work very well. I'll just check for distroname - baris -#%if %{distroname} == "centos5" -#Requires: python-uuid -#%endif +%package common +Summary: Python libraries for SFA, generic implementation derived from PlanetLab +Group: Applications/System +Requires: python >= 2.7 +Requires: pyOpenSSL >= 0.7 +Requires: m2crypto +Requires: python-dateutil +Requires: python-lxml +Requires: libxslt-python +Requires: python-ZSI +Requires: xmlsec1-openssl-devel + +%package client +Summary: sfi, the SFA experimenter-side CLI +Group: Applications/System +Requires: sfa-common +Requires: pyOpenSSL >= 0.7 %package plc Summary: the SFA layer around MyPLC Group: Applications/System Requires: sfa -Requires: python-psycopg2 -%package client -Summary: the SFA experimenter-side CLI +%package flashpolicy +Summary: SFA support for flash clients Group: Applications/System Requires: sfa -Requires: pyOpenSSL >= 0.7 -%package sfatables -Summary: sfatables policy tool for SFA +%package federica +Summary: the SFA layer around Federica Group: Applications/System Requires: sfa -%package cm -Summary: the SFA layer around MyPLC NodeManager +%package nitos +Summary: the SFA layer around NITOS Group: Applications/System Requires: sfa -Requires: pyOpenSSL >= 0.6 -%package flashpolicy -Summary: SFA support for flash clients +%package dummy +Summary: the SFA layer around a Dummy Testbed +Group: Applications/System +Requires: sfa + +%package sfatables +Summary: sfatables policy tool for SFA Group: Applications/System Requires: sfa @@ -98,31 +97,41 @@ Provides: python-xmlbuilder %package tests Summary: unit tests suite for SFA Group: Applications/System -Requires: sfa +Requires: sfa-common -%description -This package provides the python libraries for the PlanetLab implementation of SFA +%description +This package provides the registry, aggregate manager and slice +managers for SFA. In most cases it is advisable to install additional +package for a given testbed, like e.g. sfa-plc for a PlanetLab tesbed. -%description plc -This package implements the SFA interface which serves as a layer -between the existing PlanetLab interfaces and the SFA API. +%description common +This package contains the python libraries for SFA both client and server-side. %description client This package provides the client side of the SFA API, in particular sfi.py, together with other utilities. -%description sfatables -sfatables is a tool for defining access and admission control policies -in an SFA network, in much the same way as iptables is for ip -networks. This is the command line interface to manage sfatables - -%description cm +%description plc This package implements the SFA interface which serves as a layer -between the existing PlanetLab NodeManager interfaces and the SFA API. +between the existing PlanetLab interfaces and the SFA API. %description flashpolicy This package provides support for adobe flash client applications. +%description federica +The SFA driver for FEDERICA. + +%description nitos +The SFA driver for NITOS. + +%description dummy +The SFA driver for a Dummy Testbed. + +%description sfatables +sfatables is a tool for defining access and admission control policies +in an SFA network, in much the same way as iptables is for ip +networks. This is the command line interface to manage sfatables + %description xmlbuilder This package contains the xmlbuilder python library, packaged for convenience as it is not supported by fedora @@ -144,12 +153,13 @@ make VERSIONTAG="%{version}-%{taglevel}" SCMURL="%{SCMURL}" install DESTDIR="$RP rm -rf $RPM_BUILD_ROOT %files -# sfa and sfatables depend on each other. -%{python_sitelib}/sfa /etc/init.d/sfa %{_bindir}/sfa-start.py* +%{_bindir}/sfaadmin.py* +%{_bindir}/sfaadmin %{_bindir}/keyconvert.py* %{_bindir}/sfa-config-tty +%{_bindir}/sfa-config %config /etc/sfa/default_config.xml %config (noreplace) /etc/sfa/aggregates.xml %config (noreplace) /etc/sfa/registries.xml @@ -157,20 +167,18 @@ rm -rf $RPM_BUILD_ROOT /usr/share/sfa/examples /var/www/html/wsdl/*.wsdl -%files plc -%defattr(-,root,root) -/etc/sfa/pl.rng -/etc/sfa/credential.xsd -/etc/sfa/top.xsd -/etc/sfa/sig.xsd -/etc/sfa/xml.xsd -/etc/sfa/protogeni-rspec-common.xsd -/etc/sfa/topology -%{_bindir}/sfa-import.py* -%{_bindir}/sfa-nuke.py* -%{_bindir}/sfa-clean-peer-records.py* -%{_bindir}/gen-sfa-cm-config.py* -%{_bindir}/sfa-ca.py* +%files common +%{python_sitelib}/sfa/__init__.py* +%{python_sitelib}/sfa/trust +%{python_sitelib}/sfa/storage +%{python_sitelib}/sfa/util +%{python_sitelib}/sfa/server +%{python_sitelib}/sfa/methods +%{python_sitelib}/sfa/generic +%{python_sitelib}/sfa/managers +%{python_sitelib}/sfa/importer +%{python_sitelib}/sfa/rspecs +%{python_sitelib}/sfa/client %files client %config (noreplace) /etc/sfa/sfi_config @@ -182,20 +190,36 @@ rm -rf $RPM_BUILD_ROOT %{_bindir}/sfascan %{_bindir}/sfadump.py* -%files sfatables -/etc/sfatables/* -%{_bindir}/sfatables -%{python_sitelib}/sfatables - -%files cm -/etc/init.d/sfa-cm -%{_bindir}/sfa_component_setup.py* -# cron jobs here +%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 +/etc/sfa/sig.xsd +/etc/sfa/xml.xsd +/etc/sfa/protogeni-rspec-common.xsd +/etc/sfa/topology %files flashpolicy %{_bindir}/sfa_flashpolicy.py* /etc/sfa/sfa_flashpolicy_config.xml +%files federica +%{python_sitelib}/sfa/federica + +%files nitos +%{python_sitelib}/sfa/nitos + +%files dummy +%{python_sitelib}/sfa/dummy + +%files sfatables +/etc/sfatables/* +%{_bindir}/sfatables +%{python_sitelib}/sfatables + %files xmlbuilder %{python_sitelib}/xmlbuilder @@ -215,20 +239,170 @@ 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 || : +#### 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 || : %changelog +* Sun Jan 20 2013 Thierry Parmentelat - sfa-2.1-23 +- minor fix in registry +- fix for sfi gid, use clientbootstrap +- support for debians and ubuntus (packaging and initscript) +- deprecated cm package altogether +- pl flavour, minor fix for tags +- various fixes for the dummy flavour + +* Sun Dec 16 2012 Thierry Parmentelat - sfa-2.1-22 +- suited (and required) to run with plcapi-5.1-5 b/c of changes to AddPerson +- tweaks in nitos importer +- improvements to sfaadmin check-gid + +* Tue Dec 11 2012 Thierry Parmentelat - sfa-2.1-21 +- PL importer: minor fixes for corner cases +- PL importer: also handles last_updated more accurately +- sfi update can be used to select a key among several in PL +- sfi add/update usage message fixes (no more record) +- new feature sfaadmin registry check_gid [-a] + +* Mon Dec 03 2012 Thierry Parmentelat - sfa-2.1-20 +- fix 2 major bugs in PL importer +- esp. wrt GID management against PLC key + +* Wed Nov 28 2012 Thierry Parmentelat - sfa-2.1-19 +- nicer sfi delegate, can handle multiple delegations and for authorities(pi) as well + +* Wed Nov 28 2012 Thierry Parmentelat - sfa-2.1-18 +- support fordelegation in sfaclientlib +- sfi delegate fixed +- other delegation-related sfi option trashed +- new config (based on ini format) +- new dummy driver and related package +- pl importer has more explicit error messages +- credential dump shows expiration + +* Tue Oct 16 2012 Thierry Parmentelat - sfa-2.1-17 +- bugfix in forwarding Resolve requests +- various fixes in the nitos driver wrt keys and users + +* Mon Oct 01 2012 Thierry Parmentelat - sfa-2.1-16 +- various tweaks for the nitos driver + +* Wed Sep 26 2012 Thierry Parmentelat - sfa-2.1-15 +- first stab at a driver for the NITOS/OMF testbed (sep. pkg) +- deeper cleanup of the data-dependencies between SFA and the testbed +- in particular, sfi create issues Resolve(details=False) +- for that purpose, Resolve exposes reg-* keys for SFA builtins +- which in turn allows sfi list to show PIs, slice members and keys +- NOTE: sfa-config-tty is known to be broken w/ less frequently used func's +- Shows stacktrace when startup fails (DB conn, wrong flavour, etc..) + +* Mon Sep 17 2012 Thierry Parmentelat - sfa-2.1-14 +- configurable data-dir (/var/lib/sfa) +- no more dependent on myplc-config +- some support for hrns with _ instead of \. +- fix for PL importing in presence of gpg keys +- DeleteSliver returns True instead of 1 in case of success +- Various improvements on the openstack/nova side +- new package sfa-nitos + +* Wed Jul 11 2012 Thierry Parmentelat - sfa-2.1-13 +- bugfix that prevented to call 'sfi create' - (was broken in sfa-2.1-12) +- sfi to remove expired credentials + +* Tue Jul 10 2012 Tony Mack - sfa-2.1-12 +- Update Openstack driver to support Essex release/ +- Fix authority xrn bug. + + +* Thu Jun 07 2012 Thierry Parmentelat - sfa-2.1-11 +- review packaging - site-packages/planetlab now come with sfa-plc +- new package sfa-federica +- clientbin moved one step upwards + +* Wed Jun 6 2012 Tony Mack - sfa-2.1-10 +- fix bug in sfi update() + +* Sun Jun 03 2012 Thierry Parmentelat - sfa-2.1-9 +- fix broken sfa.util.xrn class for lowercase + +* Sat Jun 02 2012 Thierry Parmentelat - sfa-2.1-8 +- new 'void' generic_flavour for running in registry-only mode +- first shot at refactoring importers - probably needs more work +- openstack: various enhancements +- sfi interface to registry not based on xml files anymore +- sfi show sorts result on record key +- bugfix in sfa update on users with a pl-backed registry + +* Mon May 14 2012 Thierry Parmentelat - sfa-2.1-7 +- renamed sfa/plc into sfa/planetlab +- plxrn moved in sfa/planetlab as well +- bugfix for sfaadmin reg update --pi <> + +* Sat May 12 2012 Thierry Parmentelat - sfa-2.1-6 +- native data model now has a authority x user (PI) relationship +- no call to 'augment_records_with_testbed_info' for GetCredential +- which means, registry can now be used without an underlying testbed +- reviewed code about relationships b/w objects and related in pl driver +- reviewed PL import wrt roles and pis +- removed mentions to is_enabled in driver +- small changes in update_relation* in driver interface +- sfaadmin: can create authorities and attach pi users to them +- sfaadmin: categories can be abbreviated +- sfi list and sfaadmin list have a new -r/--recursive option +- this means that List now supports an (optional) 'options' argument +- sfi config can display config vars +- sfaadmin code in sfa.client + /usr/bin/sfaadmin shortcut + +* Mon Apr 16 2012 Tony Mack - sfa-2.1-5 +- make sync now supports vserver or lxc. +- Added slice expiration and login info to SliverStatus response. +- Fixed CreateSliver bug that causes the method to fail if any node element is missing + the 'component_name' attribute. +- Fixed various bugs that caused SFA to generate invalid or incorrect sliver ids. + +* Tue Mar 20 2012 Tony Mack - sfa-2.1-4 +- Introduced new administrative command line script, sfaadmin.py. Removed various single + purpose scripts and migrated their functionality into sfaadmin.py. +- Refactored Registry import scripts. +- Removed SQLAlchemy dependency from sfi.py. +- Fixed bugs in sfi.py +- Registry, Aggregate and SliceManager now support the OpenStack framework. + +* Fri Feb 24 2012 Thierry Parmentelat - sfa-2.1-3 +- slice x researcher rel. in database, +- plimporter to maintain that, as well as user.email, and more robust +- ongoing draft for sfaadmin tool +- support for a federica driver +- support for a nova/euca driver +- no more sfa-clean-peer-records script + +* Wed Feb 08 2012 Thierry Parmentelat - sfa-2.1-2 +- registry database has user's keys and mail (known as v0 for migrate) +- pl importer properly maintains user's keys and mail +- pl driver now to handle 'role' when adding person record (exp.) +- first draft of federica driver with config section +- SFA_GENERIC_FLAVOUR in usual variables for sfa-config-tty +- plus, from master as of tag merged-in-sfa-2.1-2: +- disk_image revisited +- new nova_shell nova_driver & various tweaks for openstack + +* Fri Jan 27 2012 Thierry Parmentelat - sfa-2.1-1 +- uses sqlalchemy and related migrate +- thorough migration and upgrade scheme +- sfa-import.py and sfa-nuke.py (no more -plc), uses FLAVOUR +- trashed dbinfo stuff in auth hierarchy +- data model still has little more than plain records +- checkpoint tag, not yet intended for release + * Wed Jan 25 2012 Tony Mack - sfa-2.0-10 - client: added -R --raw sfi cmdline option that displays raw server response. - client: request GENI RSpec by default.