Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1369720 - Review Request: tpm2-tools - a TPM2.0 testing tool build upon TPM2.0-TSS
Summary: Review Request: tpm2-tools - a TPM2.0 testing tool build upon TPM2.0-TSS
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Dan Horák
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1369708
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-08-24 08:39 UTC by Yunying Sun
Modified: 2017-06-09 18:53 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-06-09 18:53:25 UTC
Type: ---
Embargoed:
dan: fedora-review+


Attachments (Terms of Use)

Description Yunying Sun 2016-08-24 08:39:06 UTC
Spec URL: https://github.com/yunyings/share/blob/master/tpm2-tools.spec
SRPM URL: https://github.com/yunyings/share/blob/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm

Description: 
tpm2-tools is a batch of testing tools for tpm2.0. It is based on tpm2-tss.

Fedora Account System Username: yunyings

koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=15360038

Open source repository: https://github.com/01org/tpm2.0-tools

This is my first package, need a sponsor.

Comment 1 Yunying Sun 2016-09-02 08:41:49 UTC
Updated SPEC/SRPM 
SPEC url: https://github.com/yunyings/share/blob/master/tpm2-tools.spec
SRPM url: https://github.com/yunyings/share/blob/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
Koji build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=15468903

Please note that koji build fail since it can not find SAPI libs, which should be installed through another new package - tpm2-tss (bug 1369708).

Currently in SPEC, the line below is commented off:
BuildRequires:	pkgconfig(tpm2-tss-1.0-0.1.beta1) 
I will update SPEC and enable it after tpm2-tss package is available.

Comment 2 Yunying Sun 2016-09-05 09:35:51 UTC
Updated SPEC/SRPM, added Requires/doc/release and some cflags: 
SPEC url: https://github.com/yunyings/share/blob/master/tpm2-tools.spec
SRPM url: https://github.com/yunyings/share/blob/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
Koji build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=15504011

Koji build still fails since tpm2-tss and tpm2-tss-devel package not available yet.

Comment 3 Igor Gnatenko 2016-09-05 09:39:30 UTC
(In reply to yunying.sun from comment #2)
> Updated SPEC/SRPM, added Requires/doc/release and some cflags: 
> SPEC url: https://github.com/yunyings/share/blob/master/tpm2-tools.spec
> SRPM url:
> https://github.com/yunyings/share/blob/master/tpm2-tools-1.1-0.1.beta1.el7.
> src.rpm
> Koji build:
> http://koji.fedoraproject.org/koji/taskinfo?taskID=15504011
> 
> Koji build still fails since tpm2-tss and tpm2-tss-devel package not
> available yet.

you can build both in COPR repository.

https://copr.fedorainfracloud.org/

Comment 4 Yunying Sun 2016-09-06 03:20:53 UTC
(In reply to Igor Gnatenko from comment #3)
> (In reply to yunying.sun from comment #2)
> > Updated SPEC/SRPM, added Requires/doc/release and some cflags: 
> > SPEC url: https://github.com/yunyings/share/blob/master/tpm2-tools.spec
> > SRPM url:
> > https://github.com/yunyings/share/blob/master/tpm2-tools-1.1-0.1.beta1.el7.
> > src.rpm
> > Koji build:
> > http://koji.fedoraproject.org/koji/taskinfo?taskID=15504011
> > 
> > Koji build still fails since tpm2-tss and tpm2-tss-devel package not
> > available yet.
> 
> you can build both in COPR repository.
> 
> https://copr.fedorainfracloud.org/

Thanks for the remind, Igor. Here are the succeeded COPR build:
https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/449768/

@Igor, could you help to review the SPEC for this package? 
https://github.com/yunyings/share/blob/master/tpm2-tools.spec

Comment 5 Yunying Sun 2016-09-06 09:19:23 UTC
Updated SPEC to address dependencies to some of tpm2-tss generated libs:
https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec

SRPM updated accordingly:
https://github.com/yunyings/share/raw/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm

COPR build succeeded:
https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/449832/

Comment 6 Yunying Sun 2016-09-08 07:42:15 UTC
Updated SPEC again, to restrict builds to ix86 & x86_64 only by adding:
ExclusiveArch:  %{ix86} x86_64
Reason for this change is tool does not support big endian arch, and has been verified only on Intel x86 & x86_64.

SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
SRPMS: https://github.com/yunyings/share/raw/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/450605/

@Igor, could you help to do the review again? Thanks.

Comment 7 Igor Gnatenko 2016-09-08 11:48:25 UTC
(In reply to yunying.sun from comment #6)
> Updated SPEC again, to restrict builds to ix86 & x86_64 only by adding:
> ExclusiveArch:  %{ix86} x86_64
> Reason for this change is tool does not support big endian arch, and has
> been verified only on Intel x86 & x86_64.
I would recommend to use ExcludeArch and exclude all arches which are big endian.

Comment 8 Yunying Sun 2016-09-12 07:07:56 UTC
(In reply to Igor Gnatenko from comment #7)
> (In reply to yunying.sun from comment #6)
> > Updated SPEC again, to restrict builds to ix86 & x86_64 only by adding:
> > ExclusiveArch:  %{ix86} x86_64
> > Reason for this change is tool does not support big endian arch, and has
> > been verified only on Intel x86 & x86_64.
> I would recommend to use ExcludeArch and exclude all arches which are big
> endian.

Thanks Igor for the comment. I've updated SPEC to use ExcludeArch instead of ExclusiveArch.

Besides, there're also some other changes from tpm2-tss comments: updated Source0 url to match actual upstream package, add a script to rename tarball when needed, use %autosetup instead of %setup and add "-n" to specify the uncompressed folder name.

SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
SRPMS: https://github.com/yunyings/share/raw/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/451937/

@Igor, could you help to review again? Thanks.

Comment 9 Yunying Sun 2016-09-13 07:32:52 UTC
Updated SPEC again, to fix some common issues found in tpm2-tss review:
1. removed rename script
2. updated source url to make sure rpm don't fail at finding downloaded tarball

Updated SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
Updated SRPMS: https://github.com/yunyings/share/raw/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/452362/

Please help to review again. Thanks.

Comment 10 Yunying Sun 2016-09-19 01:42:56 UTC
@Igor, would you be able to review this again? Thanks.

Comment 11 Yunying Sun 2016-09-28 06:59:36 UTC
Ping. Could someone help to do further review? Thanks.

Comment 12 Yunying Sun 2016-09-29 05:39:35 UTC
SPEC updated to use version-release format in SPEC %changelog.

Updated SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
Updated SRPMS: https://github.com/yunyings/share/raw/master/tpm2-tools-1.1-0.1.beta1.el7.src.rpm
COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/459000/

Anyone could kindly help on the review and approve? Thanks in advance.

Comment 13 Jared Wallace 2016-10-17 23:24:02 UTC
Tried running fedora-review on it, but the build failed...

Package pkgconfig-1:0.29.1-1.fc25.x86_64 is already installed, skipping.
No matching package to install: 'pkgconfig(sapi)'
No matching package to install: 'pkgconfig(tcti-device)'
No matching package to install: 'pkgconfig(tcti-socket)'                          
Not all dependencies satisfied
Error: Some packages could not be found.


Given that it builds in copr, may just be my system. I'll take another look here in a bit.

Comment 14 Yunying Sun 2016-10-18 03:19:51 UTC
(In reply to Jared Wallace from comment #13)
> Tried running fedora-review on it, but the build failed...
> 
> Package pkgconfig-1:0.29.1-1.fc25.x86_64 is already installed, skipping.
> No matching package to install: 'pkgconfig(sapi)'
> No matching package to install: 'pkgconfig(tcti-device)'
> No matching package to install: 'pkgconfig(tcti-socket)'                    
> 
> Not all dependencies satisfied
> Error: Some packages could not be found.
> 
> 
> Given that it builds in copr, may just be my system. I'll take another look
> here in a bit.

Thanks for your comment, Jared.

This package has to be built upon the other new package: tpm2-tss(Bug 1369708). Tpm2-tss will generate the required packages(sapi/tcti-device/tcti-socket) which tpm2-tools need for compiling.

On COPR, I add packages "tpm2-tss" & "tpm2-tss-devel" to minimal buildroot of tpm2-tools, and wait until tpm2-tss package build completed, so that these 2 *tss* packages are available before start building tpm2-tools.

Haven't run fedora-review locally, not sure how it should work..

Comment 15 Yunying Sun 2016-11-02 05:51:09 UTC
I manually started a new COPR build for this package, since its dependent package tpm2-tss has just been updated:
https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/472426/

No SPEC and SRPM update this time.

Comment 16 Yunying Sun 2016-11-15 07:27:58 UTC
Upstream has released v1.1.0 at early Nov 2016. Here I updated this package from v1.1-beta_1 to v1.1.0.

Updated SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
Updated SRPM: https://github.com/yunyings/share/blob/master/tpm2-tools-1.1.0-1.el7.src.rpm?raw=true

Succeeded COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/476799/

Comment 17 Yunying Sun 2016-12-01 01:27:07 UTC
Done some reviews, see comments in 1385331, 1366047, 1395522, 1394789, 1399648, 1398922. Will try to do more reviews in future.

Comment 18 Yunying Sun 2016-12-02 08:30:59 UTC
(run a fedora-review over this package myself)

Package Review
==============

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


Issues:
=======
- Package installs properly.
  Note: Installation errors (see attachment)
  See: https://fedoraproject.org/wiki/Packaging:Guidelines
- All build dependencies are listed in BuildRequires, except for any that
  are listed in the exceptions section of Packaging Guidelines.
  Note: These BR are not needed: gcc gcc-c++
  See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2


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

C/C++:
[ ]: Package does not contain kernel modules.
[ ]: Package contains no static executables.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[ ]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[ ]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "BSD (3 clause)", "BSD (2 clause)". Detailed output of
     licensecheck in /home/test/yunyings/rpmreview/1369720_tpm2-tools
     /review-tpm2-tools/licensecheck.txt
[ ]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/sbin, /usr/share/doc,
     /usr/share/licenses, /usr/share, /usr
[ ]: %build honors applicable compiler flags or justifies otherwise.
[ ]: Package contains no bundled libraries without FPC exception.
[ ]: Changelog in prescribed format.
[ ]: 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
[ ]: Package uses nothing in %doc for runtime.
[ ]: Package consistently uses macros (instead of hard-coded directory
     names).
[ ]: Package is named according to the Package Naming Guidelines.
[ ]: Package does not generate any conflict.
[ ]: Package obeys FHS, except libexecdir and /usr/target.
[ ]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[ ]: Requires correct, justified where necessary.
[ ]: Spec file is legible and written in American English.
[ ]: Package contains systemd file(s) if in need.
[ ]: Useful -debuginfo package or justification otherwise.
[ ]: Package is not known to require an ExcludeArch tag.
[ ]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 10240 bytes in 2 files.
[ ]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: 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.
[x]: Package requires other packages for directories it uses.
[x]: Package does not own files or directories owned by other packages.
[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:
[ ]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[ ]: Final provides and requires are sane (see attachments).
[ ]: Package functions as described.
[ ]: Latest version is packaged.
[ ]: 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.
[ ]: Package should compile and build into binary rpms on all supported
     architectures.
[ ]: %check is present and all tests pass.
[ ]: Packages should try to preserve timestamps of original installed
     files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[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]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[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:
[!]: Rpmlint is run on all installed packages.
     Note: Mock build failed
     See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint
[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.


Installation errors
-------------------
INFO: mock.py version 1.2.21 starting (python version = 2.7.5)...
Start: init plugins
INFO: selinux enabled
Finish: init plugins
Start: run
Start: chroot init
INFO: calling preinit hooks
INFO: enabled root cache
INFO: enabled yum cache
Start: cleaning yum metadata
Finish: cleaning yum metadata
Mock Version: 1.2.21
INFO: Mock Version: 1.2.21
Finish: chroot init
INFO: installing package(s): /home/test/yunyings/rpmreview/1369720_tpm2-tools/review-tpm2-tools/results/tpm2-tools-1.1.0-1.el7.centos.x86_64.rpm /home/test/yunyings/rpmreview/1369720_tpm2-tools/review-tpm2-tools/results/tpm2-tools-debuginfo-1.1.0-1.el7.centos.x86_64.rpm
ERROR: Command failed. See logs for output.
 # /usr/bin/yum --installroot /var/lib/mock/epel-7-x86_64/root/ --releasever 7 install /home/test/yunyings/rpmreview/1369720_tpm2-tools/review-tpm2-tools/results/tpm2-tools-1.1.0-1.el7.centos.x86_64.rpm /home/test/yunyings/rpmreview/1369720_tpm2-tools/review-tpm2-tools/results/tpm2-tools-debuginfo-1.1.0-1.el7.centos.x86_64.rpm --setopt=tsflags=nocontexts


Rpmlint
-------
Checking: tpm2-tools-1.1.0-1.el7.centos.x86_64.rpm
          tpm2-tools-1.1.0-1.el7.centos.src.rpm
tpm2-tools.x86_64: W: summary-not-capitalized C a TPM2.0 testing tool build upon TPM2.0-TSS
tpm2-tools.x86_64: W: incoherent-version-in-changelog 1.1.0-1 ['1.1.0-1.el7.centos', '1.1.0-1.centos']
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_quote
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvdefine
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvwrite
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_hmac
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_unseal
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_makecredential
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_evictcontrol
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvreadlock
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_certify
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_getmanufec
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_akparse
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvlist
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_sign
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvread
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_takeownership
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_create
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_readpublic
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_verifysignature
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_getpubek
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_load
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_encryptdecrypt
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_listpersistent
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_getrandom
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_getpubak
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_hash
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_createprimary
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_nvrelease
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_loadexternal
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_rc_decode
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_rsaencrypt
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_listpcrs
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_rsadecrypt
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_activatecredential
tpm2-tools.src: W: summary-not-capitalized C a TPM2.0 testing tool build upon TPM2.0-TSS
tpm2-tools.src: W: strange-permission tpm2-tools.spec 0775L
tpm2-tools.src:6: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 6)
2 packages and 0 specfiles checked; 0 errors, 38 warnings.




Requires
--------
tpm2-tools (rpmlib, GLIBC filtered):
    libc.so.6()(64bit)
    libcrypto.so.10()(64bit)
    libcrypto.so.10(libcrypto.so.10)(64bit)
    libcurl.so.4()(64bit)
    libgcc_s.so.1()(64bit)
    libm.so.6()(64bit)
    libsapi.so.0()(64bit)
    libstdc++.so.6()(64bit)
    libtcti-device.so.0()(64bit)
    libtcti-socket.so.0()(64bit)
    rtld(GNU_HASH)
    tpm2-tss



Provides
--------
tpm2-tools:
    tpm2-tools
    tpm2-tools(x86-64)



Source checksums
----------------
https://github.com/01org/tpm2.0-tools/archive/v1.1.0.tar.gz#/tpm2.0-tools-1.1.0.tar.gz :
  CHECKSUM(SHA256) this package     : 66c5b73a04f96bf6f7e68c0ed5a2320f1ccc73b61c67428ba802ff0940f374d0
  CHECKSUM(SHA256) upstream package : 66c5b73a04f96bf6f7e68c0ed5a2320f1ccc73b61c67428ba802ff0940f374d0


Generated by fedora-review 0.5.3 (bcf15e3) last change: 2015-05-04
Command line :/usr/bin/fedora-review -n tpm2-tools
Buildroot used: epel-7-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 19 Yunying Sun 2016-12-02 10:02:23 UTC
Fixed below rpmlint warnings:
tpm2-tools.src: W: summary-not-capitalized C a TPM2.0 testing tool build upon TPM2.0-TSS
tpm2-tools.src: W: strange-permission tpm2-tools.spec 0775L
tpm2-tools.src:6: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 6)

Updated SPEC: https://raw.githubusercontent.com/yunyings/share/master/tpm2-tools.spec
Updated SRPM: https://github.com/yunyings/share/blob/master/tpm2-tools-1.1.0-1.el7.src.rpm?raw=true

Succeeded COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/484002/

Comment 20 Dan Horák 2016-12-13 15:00:01 UTC
Taking for review.

Comment 21 Yunying Sun 2016-12-16 02:25:35 UTC
(In reply to Dan Horák from comment #20)
> Taking for review.

Dan, my appreciate for taking this package too.

Comment 22 Yunying Sun 2016-12-21 08:00:40 UTC
Hi Dan, referring to your review comments to tpm2-tss(1369708), to fix most of the common issues existing in this package, I've updated the spec & srpm:

%changelog
* Wed Dec 21 2016 Sun Yunying <yunying.sun> - 1.1.0-2
- Remove pkg_version to avoid dupliate use of version
- Remove redundant BuildRequires for autoconf/automake/pkgconfig
- Add comments for BuildRequires of sapi/tcti-device/tcti-socket
- Use ExclusiveArch instead of ExcludeArch
- Requires tpm2-tss version updated to 1.0-2
- Updated release version and changelog

Updated SPEC: https://github.com/yunyings/share/raw/master/tpm2-tools.spec
Updated SRPM: https://github.com/yunyings/share/raw/master/tpm2-tools-1.1.0-2.el7.src.rpm

Succeeded Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=17010843
Succeeded COPR build: https://copr.fedorainfracloud.org/coprs/yunyings/tpm2-tools/build/491741/

Please help to do a formal review. I will udpate timely if any issues left.

Comment 23 Yunying Sun 2017-01-09 03:17:39 UTC
Dan, do you have time for a formal review of this package?

Comment 24 Yunying Sun 2017-01-09 03:18:02 UTC
Hi Dan, do you have time for a formal review of this package?

Comment 25 Dan Horák 2017-01-10 13:00:38 UTC
(In reply to Yunying Sun from comment #24)
> Hi Dan, do you have time for a formal review of this package?

yes, I will do the formal review sometime this week

Comment 26 Dan Horák 2017-01-17 10:13:07 UTC
formal review is here, see the notes explaining OK* and BAD statuses below:

OK      source files match upstream:
            1d27f0e7564e7bf83b5751e5e9eb3f73c5dc971e  tpm2.0-tools-1.1.0.tar.gz
OK      package meets naming and versioning guidelines.
OK      specfile is properly named, is cleanly written and uses macros consistently.
OK      dist tag is present.
OK      license field matches the actual license.
OK      license is open source-compatible (BSD). License text included in package.
OK      latest version is being packaged.
OK      BuildRequires are proper.
OK      compiler flags are appropriate.
OK      package builds in mock (Rawhide/x86_64).
OK      debuginfo package looks complete.
OK*     rpmlint is silent.
OK      final provides and requires look sane.
N/A     %check is present and all tests pass.
OK      no shared libraries are added to the regular linker search paths.
OK      owns the directories it creates.
OK      doesn't own any directories it shouldn't.
OK      no duplicates in %files.
OK      file permissions are appropriate.
OK      no scriptlets present.
OK      code, not content.
OK      documentation is small, so no -docs subpackage is necessary.
OK      %docs are not necessary for the proper functioning of the package.
OK      no headers.
OK      no pkgconfig files.
OK      no libtool .la droppings.
OK      not a GUI app.

- rpmlint complains a bit
tpm2-tools.src: W: spelling-error %description -l en_US tss -> ts, toss, ass
tpm2-tools.src: W: strange-permission tpm2-tools.spec 775
tpm2-tools.x86_64: W: spelling-error %description -l en_US tss -> ts, toss, ass
tpm2-tools.x86_64: W: no-manual-page-for-binary tpm2_*

Please fix the spec file permission before committing, the missing man pages are not blocking the review, but would be nice to have at some point.

The package is APPROVED.

Comment 27 Yunying Sun 2017-01-18 06:14:54 UTC
Thanks a lot Dan for the formal review and approval. New package request has been created. I will fix the spec file permission issue before committing.

Comment 28 Gwyn Ciesla 2017-01-18 13:49:11 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/tpm2-tools

Comment 29 Fedora Update System 2017-01-19 03:12:49 UTC
tpm2-tools-1.1.0-2.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-1326c8fcee

Comment 30 Fedora Update System 2017-01-19 03:14:26 UTC
tpm2-tools-1.1.0-2.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-feea902234

Comment 31 Fedora Update System 2017-01-20 01:33:30 UTC
tpm2-tools-1.1.0-3.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-4facb8a13d

Comment 32 Fedora Update System 2017-01-20 01:38:01 UTC
tpm2-tools-1.1.0-3.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-f74e35465b

Comment 33 Yunying Sun 2017-01-20 01:52:42 UTC
SPEC was updated to version 3, with changes below:

 %changelog
+* Thu Jan 19 2017 Sun Yunying <yunying.sun> - 1.1.0-3
+- Change spec file permission to 644 to avoid rpmlint complain
+- Update Requires to fix dependency check error reported in Bodhi
+- Remove tpm2-tss-devel version in BuildRequires comment
+- Update release version and changelog

SCM link: http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tools.git/

Testing update have been submitted for F25 & EPEL7:
https://bodhi.fedoraproject.org/updates/?packages=tpm2-tools

Comment 34 Fedora Update System 2017-01-20 06:31:02 UTC
tpm2-tools-1.1.0-4.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-ff0d921e43

Comment 35 Fedora Update System 2017-01-20 06:37:01 UTC
tpm2-tools-1.1.0-4.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-8ca50fc281

Comment 36 Fedora Update System 2017-01-20 18:47:38 UTC
tpm2-tools-1.1.0-4.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-8ca50fc281

Comment 37 Fedora Update System 2017-01-20 19:56:38 UTC
tpm2-tools-1.1.0-4.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-ff0d921e43

Comment 38 Yunying Sun 2017-01-22 02:27:55 UTC
SPEC was updated again to version 4, to fix Requires dependency check failure:
%changelog
* Fri Jan 20 2017 Sun Yunying <yunying.sun> - 1.1.0-4
- Dependency check failed for Requires again, here to fix this
- Update release version and changelog

Package is under testing now for F25 & EPEL 7. More details at:
https://admin.fedoraproject.org/pkgdb/package/rpms/tpm2-tools/

Comment 39 Fedora Update System 2017-02-03 20:49:18 UTC
tpm2-tools-1.1.0-4.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 40 Fedora Update System 2017-02-05 03:19:56 UTC
tpm2-tools-1.1.0-4.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.

Comment 41 Yunying Sun 2017-03-01 07:39:46 UTC
I kept getting emails like below:
"tpm2-tools has broken dependencies in the rawhide tree:
On x86_64:
	tpm2-tools-1.1.0-5.fc26.x86_64 requires tpm2-tss(x86-64) = 0:1.0-2.fc26
On i386:
	tpm2-tools-1.1.0-5.fc26.i686 requires tpm2-tss(x86-32) = 0:1.0-2.fc26
Please resolve this as soon as possible."

It seems tpm2-tss release version has been changed(2 -> 3) automatically for Fedora_26_Mass_Rebuild:
https://src.fedoraproject.org/cgit/rpms/tpm2-tss.git/commit/?h=f26&id=ba9e00d48ca59fe472859283e29485fc14138035

While in tpm2-tools spec:
https://src.fedoraproject.org/cgit/rpms/tpm2-tools.git/tree/tpm2-tools.spec?h=f26

currently dependency is hard coded to tpm2-tss version 1.0-2:
# tpm2-tools is heavily depending on TPM2.0-TSS project, matched tss is required
Requires: tpm2-tss%{?_isa} = 1.0-2%{?dist} 

Is there way or a macro that can be used to fix this issue? Thanks in advance.

Comment 42 Yunying Sun 2017-03-01 08:05:09 UTC
Or do I have to update requires dependency in tpm2-tools.spec like below for branch f26?
From:
Requires: tpm2-tss%{?_isa} = 1.0-2%{?dist} 
To:
Requires: tpm2-tss%{?_isa} = 1.0-3%{?dist}

Comment 43 Dan Horák 2017-03-01 09:14:51 UTC
(In reply to Yunying Sun from comment #42)
> Or do I have to update requires dependency in tpm2-tools.spec like below for
> branch f26?
> From:
> Requires: tpm2-tss%{?_isa} = 1.0-2%{?dist} 
> To:
> Requires: tpm2-tss%{?_isa} = 1.0-3%{?dist}

yes, it can be the fix, if the dependency is so strict and dependency on just the version can't be used.

The value of the Release tag can be changed by rel-eng scripts (like for the mass rebuild) or by other maintainers (eg. when there are library soname bumps with rebuilds of dependent packages needed).

Comment 44 Yunying Sun 2017-03-01 09:29:03 UTC
Thanks Dan. I just updated spec as stated in comment 42:
http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tools.git/

"fedpkg local" pass, but "fedpkg build" gets stuck for ever, just hang there without any output. Are you aware of any known issue like this?

I'm running fedpkg with version "1.26-4.el7" on RHEL 7.3.

Comment 45 Yunying Sun 2017-03-01 09:55:17 UTC
Hi Dan, please ignore my question in comment 44.
It's the proxy that blocks koji authentication. After unset proxy, fedpkg build works fine.

Comment 46 Yunying Sun 2017-03-07 08:03:15 UTC
I have updated spec file trying to fix the broken dependency issue. Required tpm2-tss version has been changed to "1.0-3" for master/f26:
http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tools.git/

And seeing at tpm2-tss repo, package release version is also "1.0-3" for master/f26:
http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tss.git/

But why broken dependency emails still keep coming?
"tpm2-tools has broken dependencies in the rawhide tree:
On x86_64:
	tpm2-tools-1.1.0-5.fc26.x86_64 requires tpm2-tss(x86-64) = 0:1.0-2.fc26
On i386:
	tpm2-tools-1.1.0-5.fc26.i686 requires tpm2-tss(x86-32) = 0:1.0-2.fc26
Please resolve this as soon as possible."

What is the problem here? Dan, could you help me out?

Comment 47 Dan Horák 2017-03-07 08:38:55 UTC
AFAIK there has been no successful F-26 compose after the branching (and generally for some time), so even when koji has it right, the public repo, used to generate the broken deps report, still contains the older/buggy version.

Comment 48 Yunying Sun 2017-03-07 09:34:17 UTC
Thanks for the info, Dan. I just did a fedpkg build on rawhide/master, koji build does pass: https://koji.fedoraproject.org/koji/taskinfo?taskID=18243729

So for rawhide, suppose I don't need to do anything more, and the broken deps report will disappear automatically after some time with latest master repo being used, right?

Comment 49 Yunying Sun 2017-03-20 03:26:32 UTC
I kept receiving emails of broken dependencies in rawhide tree:

"tpm2-tools has broken dependencies in the rawhide tree:
On x86_64:
	tpm2-tools-1.1.0-6.fc27.x86_64 requires tpm2-tss(x86-64) = 0:1.0-3.fc27
On i386:
	tpm2-tools-1.1.0-6.fc27.i686 requires tpm2-tss(x86-32) = 0:1.0-3.fc27
Please resolve this as soon as possible."

"tpm2-tools has broken dependencies in the rawhide tree:
On x86_64:
	tpm2-tools-1.1.0-5.fc26.x86_64 requires tpm2-tss(x86-64) = 0:1.0-2.fc26
On i386:
	tpm2-tools-1.1.0-5.fc26.i686 requires tpm2-tss(x86-32) = 0:1.0-2.fc26
Please resolve this as soon as possible."

Seeing package source code:
http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tss.git/
http://pkgs.fedoraproject.org/cgit/rpms/tpm2-tools.git/
It's clear that tpm2-tools fc26/master both has the correct dependency:
tpm2-tools-1.1.0-6  ->  tpm2-tss-1.0-3

But why it's still complaining the dependency below for rawhide/master/fc27:
tpm2-tools-1.1.0-6  ->  tpm2-tss-1.0-3

And why f26 is still using the old dependency?
tpm2-tools-1.1.0-5  ->  tpm2-tss-1.0-2

Anyone could kindly help me understand what's the problem here?

Comment 50 Fedora Update System 2017-05-10 06:37:32 UTC
tpm2-tools-1.1.0-7.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-fcf8be3d16

Comment 51 Fedora Update System 2017-05-13 01:09:32 UTC
tpm2-tools-1.1.0-7.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-fcf8be3d16

Comment 52 Fedora Update System 2017-06-09 18:53:25 UTC
tpm2-tools-1.1.0-7.fc26 has been pushed to the Fedora 26 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.