Bug 1279100 - Review Request: mod_auth_openidc - OpenID Connect auth module for Apache HTTP Server
Summary: Review Request: mod_auth_openidc - OpenID Connect auth module for Apache HTTP...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Patrick Uiterwijk
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-11-07 21:54 UTC by Jan Pazdziora (Red Hat)
Modified: 2015-11-19 09:58 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2015-11-19 09:58:37 UTC
Type: ---
Embargoed:
puiterwijk: fedora-review+


Attachments (Terms of Use)

Description Jan Pazdziora (Red Hat) 2015-11-07 21:54:21 UTC
Spec URL: https://adelton.fedorapeople.org/mod_auth_openidc.spec
SRPM URL: https://adelton.fedorapeople.org/mod_auth_openidc-1.8.6-0.7.fc22.src.rpm
Description: This module enables an Apache 2.x web server to operate as an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
Fedora Account System Username: adelton

Comment 1 Patrick Uiterwijk 2015-11-08 19:20:50 UTC
I will do this review.

Comment 2 Patrick Uiterwijk 2015-11-08 23:35:50 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


Issues:
=======
- If (and only if) the source package includes the text of the license(s)
  in its own file, then that file, containing the text of the license(s)
  for the package is included in %license.
  Note: License file LICENSE.txt is marked as %doc instead of %license
  See:
  http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text
- %build honors applicable compiler flags or justifies otherwise.
  %optflags is not used
- Spec file is legible and written in American English.
  Would be nice to have the BuildRequires split over several lines
  for readability
- Uses parallel make %{?_smp_mflags} macro.
  %{_smp_mflags} not used
- Package has no %clean section with rm -rf %{buildroot}
  %clean is present. Is not needed with RHEL>=6 or Fedora>=!EOL
- %check is present and all tests pass.
  No %check present. %check with "make test" should do the trick.


===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
[!]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[!]: Uses parallel make %{?_smp_mflags} macro.
[!]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[!]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on debuginfo package(s).
     Note: There are rpmlint messages (see attachment).
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
[x]: Package should not use obsolete m4 macros
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: mod_auth_openidc-1.8.6-0.7.fc21.x86_64.rpm
          mod_auth_openidc-1.8.6-0.7.fc21.src.rpm
mod_auth_openidc.x86_64: E: summary-too-long C Authentication/Authorization module for the Apache 2.x HTTP server that allows users to authenticate using an OpenID Connect enabled Identity Provider
mod_auth_openidc.x86_64: E: description-line-too-long C This module enables an Apache 2.x web server to operate as an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
mod_auth_openidc.x86_64: W: incoherent-version-in-changelog 1.8.6-1 ['1.8.6-0.7.fc21', '1.8.6-0.7']
mod_auth_openidc.src: E: summary-too-long C Authentication/Authorization module for the Apache 2.x HTTP server that allows users to authenticate using an OpenID Connect enabled Identity Provider
mod_auth_openidc.src: E: description-line-too-long C This module enables an Apache 2.x web server to operate as an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
2 packages and 0 specfiles checked; 4 errors, 1 warnings.




Rpmlint (debuginfo)
-------------------
Checking: mod_auth_openidc-debuginfo-1.8.6-0.7.fc21.x86_64.rpm
mod_auth_openidc-debuginfo.x86_64: W: spelling-error Summary(en_US) auth -> auto, Ruth, author
mod_auth_openidc-debuginfo.x86_64: W: spelling-error Summary(en_US) openidc -> opening
mod_auth_openidc-debuginfo.x86_64: W: spelling-error %description -l en_US auth -> auto, Ruth, author
mod_auth_openidc-debuginfo.x86_64: W: spelling-error %description -l en_US openidc -> opening
1 packages and 0 specfiles checked; 0 errors, 4 warnings.





Rpmlint (installed packages)
----------------------------
mod_auth_openidc.x86_64: E: summary-too-long C Authentication/Authorization module for the Apache 2.x HTTP server that allows users to authenticate using an OpenID Connect enabled Identity Provider
mod_auth_openidc.x86_64: E: description-line-too-long C This module enables an Apache 2.x web server to operate as an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
mod_auth_openidc.x86_64: W: incoherent-version-in-changelog 1.8.6-1 ['1.8.6-0.7.fc21', '1.8.6-0.7']
mod_auth_openidc-debuginfo.x86_64: W: spelling-error Summary(en_US) auth -> auto, Ruth, author
mod_auth_openidc-debuginfo.x86_64: W: spelling-error Summary(en_US) openidc -> opening
mod_auth_openidc-debuginfo.x86_64: W: spelling-error %description -l en_US auth -> auto, Ruth, author
mod_auth_openidc-debuginfo.x86_64: W: spelling-error %description -l en_US openidc -> opening
2 packages and 0 specfiles checked; 2 errors, 5 warnings.



Requires
--------
mod_auth_openidc (rpmlib, GLIBC filtered):
    config(mod_auth_openidc)
    httpd-mmn
    libc.so.6()(64bit)
    libcrypto.so.10()(64bit)
    libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
    libcrypto.so.10(libcrypto.so.10)(64bit)
    libcurl.so.4()(64bit)
    libjansson.so.4()(64bit)
    libpcre.so.1()(64bit)
    libssl.so.10()(64bit)
    rtld(GNU_HASH)



Provides
--------
mod_auth_openidc:
    config(mod_auth_openidc)
    mod_auth_openidc
    mod_auth_openidc(x86-64)



Unversioned so-files
--------------------
mod_auth_openidc: /usr/lib64/httpd/modules/mod_auth_openidc.so

Source checksums
----------------
https://github.com/pingidentity/mod_auth_openidc/archive/v1.8.6.tar.gz#/mod_auth_openidc-1.8.6.tar.gz :
  CHECKSUM(SHA256) this package     : 1d221286fd30687caf7b9d4483dc2aa2284da3b5deea3dea0587596e0ba0ee43
  CHECKSUM(SHA256) upstream package : 1d221286fd30687caf7b9d4483dc2aa2284da3b5deea3dea0587596e0ba0ee43


Generated by fedora-review 0.6.0 (3c5c9d7) last change: 2015-05-20
Command line :/usr/bin/fedora-review -b 1279100
Buildroot used: fedora-21-x86_64
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6

Comment 3 Jan Pazdziora (Red Hat) 2015-11-09 09:33:41 UTC
(In reply to Patrick Uiterwijk from comment #2)
> Package Review

Thanks for the review and sorry for not catching them myself.

I've now uploaded updated https://adelton.fedorapeople.org/mod_auth_openidc.spec and also new .src.rpm: https://adelton.fedorapeople.org/mod_auth_openidc-1.8.6-0.9.fc23.src.rpm.

> Issues:
> =======
> - If (and only if) the source package includes the text of the license(s)
>   in its own file, then that file, containing the text of the license(s)
>   for the package is included in %license.
>   Note: License file LICENSE.txt is marked as %doc instead of %license

Fixed.

> - %build honors applicable compiler flags or justifies otherwise.
>   %optflags is not used

My hope is that %configure takes care of this.

> - Spec file is legible and written in American English.
>   Would be nice to have the BuildRequires split over several lines
>   for readability

Changed.

> - Uses parallel make %{?_smp_mflags} macro.
>   %{_smp_mflags} not used

Fixed.

> - Package has no %clean section with rm -rf %{buildroot}
>   %clean is present. Is not needed with RHEL>=6 or Fedora>=!EOL
> - %check is present and all tests pass.
>   No %check present. %check with "make test" should do the trick.

Removed.

> mod_auth_openidc.x86_64: E: summary-too-long C Authentication/Authorization
> module for the Apache 2.x HTTP server that allows users to authenticate
> using an OpenID Connect enabled Identity Provider
> mod_auth_openidc.x86_64: E: description-line-too-long C This module enables
> an Apache 2.x web server to operate as an OpenID Connect Relying Party
> and/or OAuth 2.0 Resource Server.

Fixed.

> mod_auth_openidc.x86_64: W: incoherent-version-in-changelog 1.8.6-1
> ['1.8.6-0.7.fc21', '1.8.6-0.7']

The final release number will be -1.

Comment 4 Patrick Uiterwijk 2015-11-09 19:03:07 UTC
(In reply to Jan Pazdziora from comment #3)
> (In reply to Patrick Uiterwijk from comment #2)
> > Package Review
> 
> Thanks for the review and sorry for not catching them myself.

No problem at all, that's why we do reviews.

> 
> I've now uploaded updated
> https://adelton.fedorapeople.org/mod_auth_openidc.spec and also new
> .src.rpm:
> https://adelton.fedorapeople.org/mod_auth_openidc-1.8.6-0.9.fc23.src.rpm.
> 
> > - %build honors applicable compiler flags or justifies otherwise.
> >   %optflags is not used
> 
> My hope is that %configure takes care of this.

After checking, I saw that you are correct in this.

> > - Package has no %clean section with rm -rf %{buildroot}
> >   %clean is present. Is not needed with RHEL>=6 or Fedora>=!EOL
> > - %check is present and all tests pass.
> >   No %check present. %check with "make test" should do the trick.
> 
> Removed.

%clean is gone now yes, I still don't see a %check.



It would be great if you could add %check, as that would also help koschei builds be more useful.

Other then that, the package is good.


So: APPROVED

Comment 5 Jan Pazdziora (Red Hat) 2015-11-09 20:31:31 UTC
(In reply to Patrick Uiterwijk from comment #4)
> 
> %clean is gone now yes, I still don't see a %check.
> 
> It would be great if you could add %check, as that would also help koschei
> builds be more useful.

I'm afraid we don't have a reasonable test that we could run there.

> Other then that, the package is good.
> 
> So: APPROVED

Thank you.

Comment 6 Gwyn Ciesla 2015-11-09 20:39:15 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/mod_auth_openidc

Comment 7 Fedora Update System 2015-11-09 21:14:04 UTC
mod_auth_openidc-1.8.6-1.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-9af2aa13e3

Comment 8 Fedora Update System 2015-11-11 02:23:46 UTC
mod_auth_openidc-1.8.6-1.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update mod_auth_openidc'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-9af2aa13e3

Comment 9 Fedora Update System 2015-11-19 09:58:34 UTC
mod_auth_openidc-1.8.6-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.