# Bundling request for bootstrap/patternfly: https://fedorahosted.org/fpc/ticket/483
Name: ipsilon
-Version: 0.3.0
-Release: 5%{?dist}
+Version: 1.1.0
+Release: 1%{?builddate}%{?gittag}%{?dist}
Summary: An Identity Provider Server
Group: System Environment/Base
BuildRequires: lasso-python
BuildRequires: python-openid, python-openid-cla, python-openid-teams
BuildRequires: m2crypto
+
+Requires: python-requests
+Requires: %{name}-base = %{version}-%{release}
+BuildArch: noarch
+
+%description
+Ipsilon is a multi-protocol Identity Provider service. Its function is to
+bridge authentication providers and applications to achieve Single Sign On
+and Federation.
+
+
+%package base
+Summary: Ipsilon base IDP server
+Group: System Environment/Base
+License: GPLv3+
Requires: httpd
Requires: mod_ssl
-Requires: ipsilon-tools = %{version}-%{release}
-Requires: ipsilon-provider = %{version}-%{release}
+Requires: %{name}-filesystem = %{version}-%{release}
+Requires: %{name}-provider = %{version}-%{release}
Requires: mod_wsgi
-Requires: mod_intercept_form_submit
Requires: python-cherrypy
Requires: python-jinja2
Requires: python-lxml
Requires(post): %_sbindir/semanage, %_sbindir/restorecon
Requires(postun): %_sbindir/semanage
-%description
-Ipsilon is a multi-protocol Identiy Provider service. Its function is to
-bridge authentication providers and applications to achieve Single Sign On
-and Federation.
+%description base
+The Ipsilon IdP server without installer
-%package tools
-Summary: Client tools for the Ipsilon IDP
+
+%package filesystem
+Summary: Package providing files required by Ipsilon
Group: System Environment/Base
License: GPLv3+
-Requires: python-requests
-Requires: python-lxml
-Requires: lasso-python
+
+%description filesystem
+Package providing basic directory structure required
+for all Ipsilon parts
+
+
+%package client
+Summary: Tools for configuring Ipsilon clients
+Group: System Environment/Base
+License: GPLv3+
+Requires: %{name}-filesystem = %{version}-%{release}
+Requires: %{name}-saml2-base = %{version}-%{release}
Requires: mod_auth_mellon
+Requires: mod_ssl
BuildArch: noarch
-%description tools
-Convenience client install tools for the Ipsilon identity Provider
+%description client
+Client install tools
%package tools-ipa
summary: IPA helpers
Group: System Environment/Base
License: GPLv3+
-Requires: %{name}-tools = %{version}-%{release}
+Requires: %{name}-authgssapi = %{version}-%{release}
+Requires: %{name}-authform = %{version}-%{release}
%if 0%{?rhel}
Requires: ipa-client
Requires: ipa-admintools
Convenience client install tools for IPA support in the Ipsilon identity Provider
+%package saml2-base
+Summary: SAML2 base
+Group: System Environment/Base
+License: GPLv3+
+Requires: lasso-python
+Requires: python-lxml
+BuildArch: noarch
+
+%description saml2-base
+Provides core SAML2 utilities
+
+
%package saml2
Summary: SAML2 provider plugin
Group: System Environment/Base
License: GPLv3+
Provides: ipsilon-provider = %{version}-%{release}
Requires: %{name} = %{version}-%{release}
-Requires: lasso-python
+Requires: %{name}-saml2-base = %{version}-%{release}
BuildArch: noarch
%description saml2
Provides a login plugin to authenticate against the Fedora Authentication System
+%package authform
+Summary: mod_intercept_form_submit login plugin
+Group: System Environment/Base
+License: GPLv3+
+Requires: %{name} = %{version}-%{release}
+Requires: mod_intercept_form_submit
+BuildArch: noarch
+
+%description authform
+Provides a login plugin to authenticate with mod_intercept_form_submit
+
+
%package authpam
Summary: PAM based login plugin
Group: System Environment/Base
Provides a login plugin to authenticate against the local PAM stack
-%package authkrb
-Summary: mod_auth_kerb based login plugin
+%package authgssapi
+Summary: mod_auth_gssapi based login plugin
Group: System Environment/Base
License: GPLv3+
Requires: %{name} = %{version}-%{release}
-Requires: mod_auth_kerb
+Requires: mod_auth_gssapi
BuildArch: noarch
-%description authkrb
-Provides a login plugin to allow authentication via the mod_auth_kerb Apache
-module.
+%description authgssapi
+Provides a login plugin to allow authentication via the mod_auth_gssapi
+Apache module.
%package authldap
-Summary: mod_auth_kerb based login plugin
+Summary: LDAP info and login plugin
Group: System Environment/Base
License: GPLv3+
Requires: %{name} = %{version}-%{release}
%description authldap
Provides a login plugin to allow authentication and info retrieval via LDAP.
+%package infosssd
+Summary: SSSD & mod_lookup_identity-based identity plugin
+Group: System Environment/Base
+License: GPLv3+
+Requires: %{name} = %{version}-%{release}
+Requires: mod_lookup_identity
+Requires: libsss_simpleifp
+Requires: sssd >= 1.12.4
+BuildArch: noarch
+
+%description infosssd
+Provides an info plugin to allow retrieval via mod_lookup_identity and
+SSSD.
%prep
%setup -q
%install
%{__python} setup.py install --skip-build --root %{buildroot}
mkdir -p %{buildroot}%{_sbindir}
+mkdir -p %{buildroot}%{_libexecdir}
mkdir -p %{buildroot}%{_defaultdocdir}
+mkdir -p %{buildroot}%{_localstatedir}/cache/ipsilon
# These 0700 permissions are because ipsilon will store private keys here
install -d -m 0700 %{buildroot}%{_sharedstatedir}/ipsilon
install -d -m 0700 %{buildroot}%{_sysconfdir}/ipsilon
-mv %{buildroot}/%{_bindir}/ipsilon %{buildroot}/%{_sbindir}
+mv %{buildroot}/%{_bindir}/ipsilon %{buildroot}/%{_libexecdir}
mv %{buildroot}/%{_bindir}/ipsilon-server-install %{buildroot}/%{_sbindir}
+mv %{buildroot}/%{_bindir}/ipsilon-upgrade-database %{buildroot}/%{_sbindir}
mv %{buildroot}%{_defaultdocdir}/%{name} %{buildroot}%{_defaultdocdir}/%{name}-%{version}
rm -fr %{buildroot}%{python2_sitelib}/tests
ln -s %{_datadir}/fonts %{buildroot}%{_datadir}/ipsilon/ui/fonts
fi
+%files filesystem
+%doc COPYING README
+%dir %{_datadir}/ipsilon
+%dir %{_datadir}/ipsilon/templates
+%dir %{_datadir}/ipsilon/templates/install
+%dir %{python2_sitelib}/ipsilon
+%{python2_sitelib}/ipsilon/__init__.py*
+%{python2_sitelib}/ipsilon-*.egg-info
+%dir %{python2_sitelib}/ipsilon/tools
+%{python2_sitelib}/ipsilon/tools/__init__.py*
+%{python2_sitelib}/ipsilon/tools/files.py*
+
%files
+%{_sbindir}/ipsilon-server-install
+%{_sbindir}/ipsilon-upgrade-database
+%{_datadir}/ipsilon/templates/install/*.conf
+%{_datadir}/ipsilon/ui/saml2sp
+%dir %{python2_sitelib}/ipsilon/helpers
+%{python2_sitelib}/ipsilon/helpers/common.py*
+%{python2_sitelib}/ipsilon/helpers/__init__.py*
+
+%files base
%{_defaultdocdir}/%{name}-%{version}
-%{python2_sitelib}/ipsilon-*.egg-info
-%dir %{python2_sitelib}/ipsilon
%{python2_sitelib}/ipsilon/admin
+%{python2_sitelib}/ipsilon/rest
+%{python2_sitelib}/ipsilon/tools/dbupgrade.py*
%dir %{python2_sitelib}/ipsilon/login
%{python2_sitelib}/ipsilon/login/__init__*
%{python2_sitelib}/ipsilon/login/common*
-%{python2_sitelib}/ipsilon/login/authform*
%{python2_sitelib}/ipsilon/login/authtest*
%dir %{python2_sitelib}/ipsilon/info
%{python2_sitelib}/ipsilon/info/__init__*
%{python2_sitelib}/ipsilon/info/common*
-%{python2_sitelib}/ipsilon/info/nss*
+%{python2_sitelib}/ipsilon/info/infonss*
%dir %{python2_sitelib}/ipsilon/providers
%{python2_sitelib}/ipsilon/providers/__init__*
%{python2_sitelib}/ipsilon/providers/common*
%{python2_sitelib}/ipsilon/root.py*
%{python2_sitelib}/ipsilon/util
%{_mandir}/man*/ipsilon*
-%dir %{_datadir}/ipsilon
-%dir %{_datadir}/ipsilon/templates
%{_datadir}/ipsilon/templates/*.html
%{_datadir}/ipsilon/templates/admin
%dir %{_datadir}/ipsilon/templates/login
%{_datadir}/ipsilon/templates/login/index.html
%{_datadir}/ipsilon/templates/login/form.html
-%dir %{_datadir}/ipsilon/templates/install
-%{_datadir}/ipsilon/templates/install/*.conf
%dir %{_datadir}/ipsilon/ui
%{_datadir}/ipsilon/ui/css
%{_datadir}/ipsilon/ui/img
%{_datadir}/ipsilon/ui/js
%{_datadir}/ipsilon/ui/fonts
-%{_sbindir}/ipsilon
-%{_sbindir}/ipsilon-server-install
-%dir %attr(0700,ipsilon,ipsilon) %{_sharedstatedir}/ipsilon
-%dir %attr(0700,ipsilon,ipsilon) %{_sysconfdir}/ipsilon
+%{_datadir}/ipsilon/ui/fonts-local
+%{_libexecdir}/ipsilon
+%dir %attr(0751,root,root) %{_sharedstatedir}/ipsilon
+%dir %attr(0751,root,root) %{_sysconfdir}/ipsilon
+%dir %attr(0750,ipsilon,apache) %{_localstatedir}/cache/ipsilon
-%files tools
-%doc COPYING README
-%{python2_sitelib}/ipsilon-*.egg-info
-%{python2_sitelib}/ipsilon/__init__.py*
-%{python2_sitelib}/ipsilon/tools
-%dir %{python2_sitelib}/ipsilon/helpers
-%{python2_sitelib}/ipsilon/helpers/common.py*
-%{python2_sitelib}/ipsilon/helpers/__init__.py*
-%{_datadir}/ipsilon/templates/install/saml2
-%{_datadir}/ipsilon/ui/saml2sp
+%files client
%{_bindir}/ipsilon-client-install
+%{_datadir}/ipsilon/templates/install/saml2
%files tools-ipa
%{python2_sitelib}/ipsilon/helpers/ipa.py*
+%files saml2-base
+%{python2_sitelib}/ipsilon/tools/saml2metadata.py*
+%{python2_sitelib}/ipsilon/tools/certs.py*
+
%files saml2
%{python2_sitelib}/ipsilon/providers/saml2*
%{_datadir}/ipsilon/templates/saml2
%files authfas
%{python2_sitelib}/ipsilon/login/authfas*
+%files authform
+%{python2_sitelib}/ipsilon/login/authform*
+
%files authpam
%{python2_sitelib}/ipsilon/login/authpam*
-%files authkrb
-%{python2_sitelib}/ipsilon/login/authkrb*
-%{_datadir}/ipsilon/templates/login/krb.html
+%files authgssapi
+%{python2_sitelib}/ipsilon/login/authgssapi*
+%{_datadir}/ipsilon/templates/login/gssapi.html
%files authldap
%{python2_sitelib}/ipsilon/login/authldap*
%{python2_sitelib}/ipsilon/info/infoldap*
+%files infosssd
+%{python2_sitelib}/ipsilon/info/infosssd.*
%changelog
+* Sat Sep 05 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 1.1.0-1
+- Release 1.1.0
+
+* Mon Jun 22 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 1.0.0-2
+- Added mod_ssl requirement for ipsilon-client
+
+* Mon May 11 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 1.0.0-1
+- Release 1.0.0
+
+* Wed Apr 15 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.6.0-1
+- Release 0.6.0
+
+* Mon Mar 30 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.5.0-1
+- Released 0.5.0
+
+* Fri Feb 27 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.4.0-1
+- Released 0.4.0
+
+* Tue Feb 24 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.3.0-7
+- Split the installer into -tools
+- Split authform into -authform
+
+* Thu Feb 12 2015 Rob Crittenden <rcritten@redhat.com> - 0.3.0-6
+- Add mod_identity_lookup info plugin package
+
* Wed Jan 28 2015 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.3.0-5
- Split IPA tools