Re: Poudriere bulk "Deleting foo-1.2.3.pkg: no longer needed"

From: Bryan Drewery <bdrewery_at_FreeBSD.org>
Date: Thu, 14 Oct 2021 22:13:42 UTC
On 10/11/2021 9:53 AM, tech-lists wrote:
> Hi,
> 
> On Sun, Oct 10, 2021 at 04:15:32PM -0400, J David wrote:
>> We use a staged approach to building packages with poudriere, with
>> several "bulk" commands, because some ports we rarely need take an
>> incredibly long time to build.  (Mainly languages, like rust, clang,
>> and gcc.)
> 
> [snip]
> 
>> Basically, "bulk -f" seems to have started preemptively deleting any
>> existing package that isn't specifically listed in the given file or
>> required by a port that is listed.  So much for building things in
>> stages!
>>
>> This wasn't the case previously, and I can't find any flags that
>> control this behavior on the man page.
>>
>> Is this intentional?  Is there a way to get it not to do that?  (Short
>> of modifying our build scripts not to use -f anymore.)
> 
> I build in stages too, as there are some huge ports that don't play nice
> in a bulk build but build fine when invoked in the form
> poudriere -j jailname port_category/portname. I don't think it's
> intentional. I'm seeing the same behaviour in poudriere-devel on 
> stable/13 (poudriere-devel is poudriere-devel-3.3.99.20210907_1)
> 


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259085 explains it and 
has a workaround.

Sorry for the trouble. I've been busy and haven't had a chance to update 
the port yet.

I did add a MUTUALLY_EXCLUSIVE_BUILD_PACKAGES list that I need to push 
to the port too that should help with the root cause of the multiple 
bulk -f. That one depends on a queue rework which I don't have time to 
support at the moment but it's coming.

-- 
Bryan Drewery