6b59cac
%global srcname keycloak-httpd-client-install
6b59cac
%global summary Tools to configure Apache HTTPD as Keycloak client
6b59cac
6b59cac
%if 0%{?fedora}
6b59cac
%global with_python3 1
6b59cac
%endif
6b59cac
6b59cac
Name:           %{srcname}
19924ee
Version:        0.6
e0d3046
Release:        1%{?dist}
6b59cac
Summary:        %{summary}
6b59cac
6b59cac
%global git_tag RELEASE_%(r=%{version}; echo $r | tr '.' '_')
6b59cac
6b59cac
License:        GPLv3
6b59cac
URL:            https://github.com/jdennis/keycloak-httpd-client-install
6b59cac
Source0:        https://github.com/jdennis/keycloak-httpd-client-install/archive/%{git_tag}.tar.gz#/%{srcname}-%{version}.tar.gz
6b59cac
6b59cac
BuildArch:      noarch
6b59cac
6b59cac
BuildRequires:  python2-devel
6b59cac
%if 0%{?with_python3}
6b59cac
BuildRequires:  python3-devel
6b59cac
%endif
6b59cac
6b59cac
Requires:       %{_bindir}/keycloak-httpd-client-install
6b59cac
6b59cac
%description
6b59cac
Keycloak is a federated Identity Provider (IdP). Apache HTTPD supports
6b59cac
a variety of authentication modules which can be configured to utilize
6b59cac
a Keycloak IdP to perform authentication. This package contains
6b59cac
libraries and tools which can automate and simplify configuring an
6b59cac
Apache HTTPD authentication module and registering as a client of a
6b59cac
Keycloak IdP.
6b59cac
6b59cac
%package -n python2-%{srcname}
6b59cac
Summary:        %{summary}
6b59cac
6b59cac
%{?python_provide:%python_provide python2-%{srcname}}
6b59cac
6b59cac
Requires:       %{name} = %{version}-%{release}
6b59cac
Requires:       python-requests
6b59cac
Requires:       python-requests-oauthlib
6b59cac
Requires:       python-jinja2
6b59cac
Requires:       %{_bindir}/keycloak-httpd-client-install
6b59cac
6b59cac
%description -n python2-%{srcname}
6b59cac
Keycloak is an authentication server. This package contains libraries and
6b59cac
programs which can invoke the Keycloak REST API and configure clients
6b59cac
of a Keycloak server.
6b59cac
6b59cac
%if 0%{?with_python3}
6b59cac
%package -n python3-%{srcname}
6b59cac
Summary:        %{summary}
6b59cac
6b59cac
%{?python_provide:%python_provide python3-%{srcname}}
6b59cac
6b59cac
Requires:       %{name} = %{version}-%{release}
6b59cac
Requires:       python3-requests
6b59cac
Requires:       python3-requests-oauthlib
6b59cac
Requires:       python3-jinja2
6b59cac
6b59cac
%description -n python3-%{srcname}
6b59cac
Keycloak is an authentication server. This package contains libraries and
6b59cac
programs which can invoke the Keycloak REST API and configure clients
6b59cac
of a Keycloak server.
6b59cac
6b59cac
%endif
6b59cac
6b59cac
%prep
6b59cac
%autosetup -n %{srcname}-%{version}
6b59cac
6b59cac
%build
6b59cac
%py2_build
6b59cac
%if 0%{?with_python3}
6b59cac
%py3_build
6b59cac
%endif
6b59cac
6b59cac
%install
6b59cac
# Must do the python2 install first because the scripts in /usr/bin are
6b59cac
# overwritten with every setup.py install, and in general we want the
6b59cac
# python3 version to be the default.
6b59cac
%py2_install
6b59cac
%if 0%{?with_python3}
6b59cac
# py3_install won't overwrite files if they have a timestamp greater-than
6b59cac
# or equal to the py2 installed files. If both the py2 and py3 builds execute
6b59cac
# quickly the files end up with the same timestamps thus leaving the py2
6b59cac
# version in the py3 install. Therefore remove any files susceptible to this.
6b59cac
rm %{buildroot}%{_bindir}/keycloak-httpd-client-install
6b59cac
%py3_install
6b59cac
%endif
6b59cac
6b59cac
install -d -m 755 %{buildroot}/%{_mandir}/man8
6b59cac
install -c -m 644 doc/keycloak-httpd-client-install.8 %{buildroot}/%{_mandir}/man8
6b59cac
6b59cac
%files
6b59cac
%license LICENSE.txt
6b59cac
%doc README.md doc/ChangeLog
6b59cac
%{_datadir}/%{srcname}/
6b59cac
6b59cac
# Note that there is no %%files section for the unversioned python module if we are building for several python runtimes
6b59cac
%files -n python2-%{srcname}
6b59cac
%{python2_sitelib}/*
6b59cac
%if ! 0%{?with_python3}
6b59cac
%{_bindir}/keycloak-httpd-client-install
6b59cac
%{_mandir}/man8/*
6b59cac
%endif
6b59cac
6b59cac
%if 0%{?with_python3}
6b59cac
%files -n python3-%{srcname}
6b59cac
%{python3_sitelib}/*
6b59cac
%{_bindir}/keycloak-httpd-client-install
6b59cac
%{_mandir}/man8/*
6b59cac
%endif
6b59cac
6b59cac
%changelog
19924ee
* Wed Mar  1 2017 John Dennis <jdennis@redhat.com> - 0.6-1
19924ee
- Resolves: rhbz#1427720, if --mellon-root is not supplied and defaults to /
19924ee
  you end up with double slashes in entityId and endpoints
19924ee
- add --tls-verify option to control python-requests behavor when
19924ee
  using tls to connect. With this option you can use a self-signed
19924ee
  cert or point to a CA bundle.
19924ee
- Fix warnings and checks when using client originate method
19924ee
  'registration' with 'anonymous' authentication.
19924ee
e0d3046
* Fri Jan  6 2017 John Dennis <jdennis@redhat.com> - 0.5-1
e0d3046
- Resolves: bug #1410940 Using default ports produces bad request error
e0d3046
  Strip the port from the URL if it matches the scheme (e.g. 80 for
e0d3046
  http and 443 for https)
e0d3046
f7d02ae
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-2
f7d02ae
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
f7d02ae
a3050f2
* Mon Jun 27 2016 John Dennis <jdennis@redhat.com> - 0.4-1
a3050f2
- new upstream
a3050f2
  See ChangeLog for details
a3050f2
6b59cac
* Fri May 20 2016 John Dennis <jdennis@redhat.com> - 0.3-1
6b59cac
- new upstream
6b59cac
  See ChangeLog for details
6b59cac
6b59cac
* Tue May 17 2016 John Dennis <jdennis@redhat.com> - 0.2-1
6b59cac
- new upstream
6b59cac
- Add keycloak-httpd-client-install.8 man page
6b59cac
6b59cac
* Fri May 13 2016 John Dennis <jdennis@redhat.com> - 0.1-1
6b59cac
- Initial version