freebsd / poudriere

Port/Package build and test system
https://github.com/freebsd/poudriere/wiki
BSD 2-Clause "Simplified" License
393 stars 162 forks source link

testport -I -k still kills jails if they fail early #905

Open agrajag9 opened 3 years ago

agrajag9 commented 3 years ago

Prerequisites

Describe the bug

When poudriere testport -I -k encounters a failure during pkg-depends, it still kills jails, rather than leaving them up like described in the man.

How to reproduce

Steps to reproduce the behavior:

  1. poudriere testport -I -k -j somejail -p sometree ports-mgmt/poudriere
  2. https://github.com/freebsd/pkg/issues/1965
  3. [00:00:16] Error: Depends failed to build
    [00:00:16] Failed ports: ports-mgmt/dialog4ports:pkg-depends misc/freebsd-release-manifests:pkg-depends lang/perl5.32:pkg-depe
    nds
    [00:00:16] Skipped ports: security/ca_root_nss
    [00:00:16] Cleaning up
    [00:00:16] Unmounting file systems

Expected behavior

The jails should remain running so that pkg.core can be recovered.

Screenshots

NA

Environment

bdrewery commented 3 years ago

In your example testport is for ports-mgmt/poudriere not for its dependencies. This is working as intended.

agrajag9 commented 3 years ago

Referencing the man:

     -k       Do not consider failures as fatal.  Find all failures.

I would argue that this IS expected based on that. If not, then can we clarify the types of failures in the man page until the feature is implemented?

bdrewery commented 3 years ago

Again -k is for the port being tested. The top line of the manpage is poudriere testport – test a given port's build. Everything applies to that statement unless otherwise specified. Nothing about testport is testing dependencies. It's been like this since 2010.