mbox series

[ima-evm-utils,0/9] Docker based Travis CI builds

Message ID 20200813182532.6931-1-pvorel@suse.cz (mailing list archive)
Headers show
Series Docker based Travis CI builds | expand

Message

Petr Vorel Aug. 13, 2020, 6:25 p.m. UTC
Hi,

we talked about Docker based Travis CI builds.
Here they are [1]. Working on it revealed few bugs, that's why they're
included.

I've resent 2 commits ("man:" prefix).

I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].

Kind regards,
Petr

[1] https://travis-ci.org/github/pevik/ima-evm-utils/builds/717681733
[2] https://github.com/stefanberger/swtpm/wiki/Using-the-IBM-TSS-with-swtpm

Petr Vorel (9):
  configure: Fix tss2-esys check
  man: Fix xmlcatalog path detection
  man: Generate doc targets only when XSL found
  install-swtpm.sh: Ignore certificate for download
  install-swtpm.sh: Update ibmtpm to version 1637
  Remove install-tpm2-tss.sh
  autogen.sh: Cleanup
  tests: Require cmp
  travis: Switch to docker based builds

 .travis.yml                    | 106 +++++++++++++++++++++++----------
 Makefile.am                    |   4 ++
 autogen.sh                     |  14 +----
 build.sh                       |  97 ++++++++++++++++++++++++++++++
 configure.ac                   |   7 ++-
 m4/manpage-docbook-xsl.m4      |  38 +++++++++---
 tests/install-swtpm.sh         |  10 ++--
 tests/install-tpm2-tss.sh      |  19 ------
 tests/sign_verify.test         |   9 ++-
 travis/alpine.sh               |  50 ++++++++++++++++
 travis/centos.sh               |   1 +
 travis/debian.cross-compile.sh |  23 +++++++
 travis/debian.i386.sh          |  11 ++++
 travis/debian.sh               |  54 +++++++++++++++++
 travis/fedora.sh               |  49 +++++++++++++++
 travis/opensuse.sh             |   1 +
 travis/tumbleweed.sh           |  45 ++++++++++++++
 travis/ubuntu.sh               |   1 +
 18 files changed, 457 insertions(+), 82 deletions(-)
 create mode 100755 build.sh
 delete mode 100755 tests/install-tpm2-tss.sh
 create mode 100755 travis/alpine.sh
 create mode 120000 travis/centos.sh
 create mode 100755 travis/debian.cross-compile.sh
 create mode 100755 travis/debian.i386.sh
 create mode 100755 travis/debian.sh
 create mode 100755 travis/fedora.sh
 create mode 120000 travis/opensuse.sh
 create mode 100755 travis/tumbleweed.sh
 create mode 120000 travis/ubuntu.sh

Comments

Bruno Meneguele Aug. 17, 2020, 6:39 p.m. UTC | #1
On Thu, Aug 13, 2020 at 08:25:23PM +0200, Petr Vorel wrote:
> Hi,
> 
> we talked about Docker based Travis CI builds.
> Here they are [1]. Working on it revealed few bugs, that's why they're
> included.
> 
> I've resent 2 commits ("man:" prefix).
> 
> I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].
> 
> Kind regards,
> Petr
> 
> [1] https://travis-ci.org/github/pevik/ima-evm-utils/builds/717681733
> [2] https://github.com/stefanberger/swtpm/wiki/Using-the-IBM-TSS-with-swtpm
> 
> Petr Vorel (9):
>   configure: Fix tss2-esys check
>   man: Fix xmlcatalog path detection
>   man: Generate doc targets only when XSL found
>   install-swtpm.sh: Ignore certificate for download
>   install-swtpm.sh: Update ibmtpm to version 1637
>   Remove install-tpm2-tss.sh
>   autogen.sh: Cleanup
>   tests: Require cmp
>   travis: Switch to docker based builds
> 
>  .travis.yml                    | 106 +++++++++++++++++++++++----------
>  Makefile.am                    |   4 ++
>  autogen.sh                     |  14 +----
>  build.sh                       |  97 ++++++++++++++++++++++++++++++
>  configure.ac                   |   7 ++-
>  m4/manpage-docbook-xsl.m4      |  38 +++++++++---
>  tests/install-swtpm.sh         |  10 ++--
>  tests/install-tpm2-tss.sh      |  19 ------
>  tests/sign_verify.test         |   9 ++-
>  travis/alpine.sh               |  50 ++++++++++++++++
>  travis/centos.sh               |   1 +
>  travis/debian.cross-compile.sh |  23 +++++++
>  travis/debian.i386.sh          |  11 ++++
>  travis/debian.sh               |  54 +++++++++++++++++
>  travis/fedora.sh               |  49 +++++++++++++++
>  travis/opensuse.sh             |   1 +
>  travis/tumbleweed.sh           |  45 ++++++++++++++
>  travis/ubuntu.sh               |   1 +
>  18 files changed, 457 insertions(+), 82 deletions(-)
>  create mode 100755 build.sh
>  delete mode 100755 tests/install-tpm2-tss.sh
>  create mode 100755 travis/alpine.sh
>  create mode 120000 travis/centos.sh
>  create mode 100755 travis/debian.cross-compile.sh
>  create mode 100755 travis/debian.i386.sh
>  create mode 100755 travis/debian.sh
>  create mode 100755 travis/fedora.sh
>  create mode 120000 travis/opensuse.sh
>  create mode 100755 travis/tumbleweed.sh
>  create mode 120000 travis/ubuntu.sh
> 
> -- 
> 2.28.0
> 

I've tested it in both Fedora and CentOS 8 (RHEL actually).

Reviewed-by: Bruno Meneguele <bmeneg@redhat.com>

Thanks Petr.
Mimi Zohar Aug. 18, 2020, 9:54 p.m. UTC | #2
Hi Petr,

On Thu, 2020-08-13 at 20:25 +0200, Petr Vorel wrote:
> Hi,
> 
> we talked about Docker based Travis CI builds.
> Here they are [1]. Working on it revealed few bugs, that's why they're
> included.
> 
> I've resent 2 commits ("man:" prefix).
> 
> I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].

To summarize:
- Add libtpms/swtpm support
- Remove debugging from travis/fedora.sh 
- CentOS tss & tss2-devel issues
- Petr todo's comment:
  * add pgrep and pkill to _require (fix of a different commit)
  * add magic constant 114 to exit codes (in tests/functions.sh)
  * I'd like reuse exit codes in build.sh. I could source tests/functions.sh (they
    look to be general enough, just I didn't like script in root directory depending
    on it, as it's general enough for build without testing) have these constants in
    separate file.

swtpm: patch was posted, reviewed, and fixed.

CentOS: Our internal Travis on ppc64 is installing both tpm2-tss-2.0.0-
4.el8.x86_64.rpm and tpm2-tss-devel-2.0.0-4.el8.x86_64.rpm on CentOS. 
In general, the "boot_aggregate.test" is only run if both a software
TPM and the tsseventextend exist.  If either one of them are missing,
the test is skipped.  For CentOS on x86, the "boot_aggregate" would be
skipped.

Left is Petr's "todo's" comment.  Petr, would these be additional
patches on top of the existing ones or were you planning on re-posting
them?   If these are additional patches, I can remove the debugging
from travis/fedora.sh in patch 9/9.  Please let me know how you want to
go forward.

thanks,

Mimi
Petr Vorel Aug. 19, 2020, 5:14 a.m. UTC | #3
Hi Mimi,

> Hi Petr,

> On Thu, 2020-08-13 at 20:25 +0200, Petr Vorel wrote:
> > Hi,

> > we talked about Docker based Travis CI builds.
> > Here they are [1]. Working on it revealed few bugs, that's why they're
> > included.

> > I've resent 2 commits ("man:" prefix).

> > I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].

> To summarize:
> - Add libtpms/swtpm support
> - Remove debugging from travis/fedora.sh 
> - CentOS tss & tss2-devel issues
> - Petr todo's comment:
>   * add pgrep and pkill to _require (fix of a different commit)
>   * add magic constant 114 to exit codes (in tests/functions.sh)
>   * I'd like reuse exit codes in build.sh. I could source tests/functions.sh (they
>     look to be general enough, just I didn't like script in root directory depending
>     on it, as it's general enough for build without testing) have these constants in
>     separate file.

> swtpm: patch was posted, reviewed, and fixed.
Great.

> CentOS: Our internal Travis on ppc64 is installing both tpm2-tss-2.0.0-
> 4.el8.x86_64.rpm and tpm2-tss-devel-2.0.0-4.el8.x86_64.rpm on CentOS. 
> In general, the "boot_aggregate.test" is only run if both a software
> TPM and the tsseventextend exist.  If either one of them are missing,
> the test is skipped.  For CentOS on x86, the "boot_aggregate" would be
> skipped.
Great. BTW it'd be nice to have native non-intel builds instead of
cross-compilation. But, they're constantly broken on Travis CI, that's why I
didn't implement it (I've been testing ppc64le and s390x for several months).

> Left is Petr's "todo's" comment.  Petr, would these be additional
> patches on top of the existing ones or were you planning on re-posting
> them?   If these are additional patches, I can remove the debugging
> from travis/fedora.sh in patch 9/9.  Please let me know how you want to
> go forward.
Please, remove the debugging from travis/fedora.sh, I'll send additional patch.

Kind regards,
Petr
Mimi Zohar Aug. 19, 2020, 2:37 p.m. UTC | #4
On Wed, 2020-08-19 at 07:14 +0200, Petr Vorel wrote:
> Hi Mimi,
> 
> > Hi Petr,
> > On Thu, 2020-08-13 at 20:25 +0200, Petr Vorel wrote:
> > > Hi,
> > > we talked about Docker based Travis CI builds.
> > > Here they are [1]. Working on it revealed few bugs, that's why they're
> > > included.
> > > I've resent 2 commits ("man:" prefix).
> > > I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].
> > To summarize:
> > - Add libtpms/swtpm support
> > - Remove debugging from travis/fedora.sh 
> > - CentOS tss & tss2-devel issues
> > - Petr todo's comment:
> >   * add pgrep and pkill to _require (fix of a different commit)
> >   * add magic constant 114 to exit codes (in tests/functions.sh)
> >   * I'd like reuse exit codes in build.sh. I could source tests/functions.sh (they
> >     look to be general enough, just I didn't like script in root directory depending
> >     on it, as it's general enough for build without testing) have these constants in
> >     separate file.
> > swtpm: patch was posted, reviewed, and fixed.
> Great.
> 
> > CentOS: Our internal Travis on ppc64 is installing both tpm2-tss-2.0.0-
> > 4.el8.x86_64.rpm and tpm2-tss-devel-2.0.0-4.el8.x86_64.rpm on CentOS. 
> > In general, the "boot_aggregate.test" is only run if both a software
> > TPM and the tsseventextend exist.  If either one of them are missing,
> > the test is skipped.  For CentOS on x86, the "boot_aggregate" would be
> > skipped.
> Great. BTW it'd be nice to have native non-intel builds instead of
> cross-compilation. But, they're constantly broken on Travis CI, that's why I
> didn't implement it (I've been testing ppc64le and s390x for several months).

Thank you!

> 
> > Left is Petr's "todo's" comment.  Petr, would these be additional
> > patches on top of the existing ones or were you planning on re-posting
> > them?   If these are additional patches, I can remove the debugging
> > from travis/fedora.sh in patch 9/9.  Please let me know how you want to
> > go forward.
> Please, remove the debugging from travis/fedora.sh, I'll send additional patch.

Done.  The travis branch is now in next-testing.

thanks!

Mimi
George Wilson Aug. 19, 2020, 5:19 p.m. UTC | #5
On Wed, Aug 19, 2020 at 10:37:23AM -0400, Mimi Zohar wrote:
> On Wed, 2020-08-19 at 07:14 +0200, Petr Vorel wrote:
> > Hi Mimi,
> > 
> > > Hi Petr,
> > > On Thu, 2020-08-13 at 20:25 +0200, Petr Vorel wrote:
> > > > Hi,
> > > > we talked about Docker based Travis CI builds.
> > > > Here they are [1]. Working on it revealed few bugs, that's why they're
> > > > included.
> > > > I've resent 2 commits ("man:" prefix).
> > > > I haven't addressed Mimi's suggestion to replace ibmswtpm2 with libtmps/swtpm [2].
> > > To summarize:
> > > - Add libtpms/swtpm support
> > > - Remove debugging from travis/fedora.sh 
> > > - CentOS tss & tss2-devel issues
> > > - Petr todo's comment:
> > >   * add pgrep and pkill to _require (fix of a different commit)
> > >   * add magic constant 114 to exit codes (in tests/functions.sh)
> > >   * I'd like reuse exit codes in build.sh. I could source tests/functions.sh (they
> > >     look to be general enough, just I didn't like script in root directory depending
> > >     on it, as it's general enough for build without testing) have these constants in
> > >     separate file.
> > > swtpm: patch was posted, reviewed, and fixed.
> > Great.
> > 
> > > CentOS: Our internal Travis on ppc64 is installing both tpm2-tss-2.0.0-
> > > 4.el8.x86_64.rpm and tpm2-tss-devel-2.0.0-4.el8.x86_64.rpm on CentOS. 
> > > In general, the "boot_aggregate.test" is only run if both a software
> > > TPM and the tsseventextend exist.  If either one of them are missing,
> > > the test is skipped.  For CentOS on x86, the "boot_aggregate" would be
> > > skipped.
> > Great. BTW it'd be nice to have native non-intel builds instead of
> > cross-compilation. But, they're constantly broken on Travis CI, that's why I
> > didn't implement it (I've been testing ppc64le and s390x for several months).
> 
> Thank you!

Hi Petr,

Being under the IBM Power organization, I'd like to add my thanks for testing on
ppc64!

> 
> > 
> > > Left is Petr's "todo's" comment.  Petr, would these be additional
> > > patches on top of the existing ones or were you planning on re-posting
> > > them?   If these are additional patches, I can remove the debugging
> > > from travis/fedora.sh in patch 9/9.  Please let me know how you want to
> > > go forward.
> > Please, remove the debugging from travis/fedora.sh, I'll send additional patch.
> 
> Done.  The travis branch is now in next-testing.
> 
> thanks!
> 
> Mimi
> 
> 
>