"poudriere bulk" - why does it fail on single package with missing port origin?

Michael Jung mikej at mikej.com
Fri Sep 12 22:23:09 UTC 2014


On 2014-09-12 17:46, Bryan Drewery wrote:
> On 9/11/2014 8:51 AM, Michael Jung wrote:
>> Why does "poudriere bulk" need to bail because a single package has a
>> missing port origin and not continue to build other packages in the
>> package list?
>> 
>> If I remove x11/mate from my package list poudriere rocks on building
>> all my other ports.
>> 
>> The missing origin is a RUN_DEPENDS in the x11/mate Makefile, but that
>> dependency should only be for x11/mate right?
>> 
>> I can't seem to find a good explanation in the general man pages or
>> searching the web.
>> 
>> Educate me please ;-)
> 
> A lot of the reason is just the way poudriere handles looking up
> dependencies. I'm willing to explore moving this fatal error such that
> the port is just listed as FAILED and anything depending on it is
> SKIPPED. There's currently no way to do that without more logic.
> 
> This sort of error hits the package build system quite often. When
> someone breaks INDEX they also break package building because of this
> error. I am more and more convinced that we should not consider these
> immediately fatal.
> 
> However, we should also consider a threshold feature such that too many
> failures for bulk will cause the set to not be published. 3.1 adds a
> feature called "atomic package repository" that builds packages outside
> of the normal repository dir. Once the build is done the packages are
> synced over. I added a way to prevent publishing the set if ANYTHING
> fails, but it's not using a threshold yet. I'll improve that.
> 
> This will have to wait until after 3.1 though. It will be releasing 
> once
> I find time to focus on getting it out.
> 
>> 
>> --mikej
>> 
>> Example:
>> 
>> poudriere 3.0.17/11.0-CURRENT #1 r264318M amd64
>> 
>> 
>> [root at bsd11 /usr/local/poudriere/ports/default/x11/mate]# poudriere 
>> bulk
>> -j 10stable -f /usr/local/etc/charon-list
>> ====>> Creating the reference jail... done
>> ====>> Mounting system devices for 10stable-default
>> ====>> Mounting ports/packages/distfiles
>> ====>> Mounting ccache from: /var/cache/ccache
>> ====>> Mounting packages from:
>> /usr/local/poudriere/data/packages/10stable-default
>> ====>> Logs:
>> /usr/local/poudriere/data/logs/bulk/10stable-default/2014-09-10_12h18m15s
>> ====>> Appending to make.conf:
>> /usr/local/etc/poudriere.d/10stable-make.conf
>> /etc/resolv.conf ->
>> /usr/local/poudriere/data/build/10stable-default/ref/etc/resolv.conf
>> ====>> Starting jail 10stable-default
>> ====>> Loading MOVED
>> ====>> Calculating ports order and dependencies
>> ====>> MOVED: databases/db41 renamed to databases/db48
>> ====>> MOVED: databases/db42 renamed to databases/db48
>> ====>> Error: Invalid port origin 'archivers/mate-file-archiver' not 
>> found.
>> ====>> Cleaning up
>> ====>> Umounting file systems
>> [root at bsd11 /usr/local/poudriere/ports/default/x11/mate]#
>> 
>> 
>> AFTER remove x11/mate from the list "charon-list"
>> 
>> 
>> [root at bsd11 /usr/local/poudriere/ports/default/x11/mate]# poudriere 
>> bulk
>> -j 10stable -f /usr/local/etc/charon-list
>> ====>> Creating the reference jail... done
>> ====>> Mounting system devices for 10stable-default
>> ====>> Mounting ports/packages/distfiles
>> ====>> Mounting ccache from: /var/cache/ccache
>> ====>> Mounting packages from:
>> /usr/local/poudriere/data/packages/10stable-default
>> ====>> Logs:
>> /usr/local/poudriere/data/logs/bulk/10stable-default/2014-09-10_12h20m14s
>> ====>> Appending to make.conf:
>> /usr/local/etc/poudriere.d/10stable-make.conf
>> /etc/resolv.conf ->
>> /usr/local/poudriere/data/build/10stable-default/ref/etc/resolv.conf
>> ====>> Starting jail 10stable-default
>> ====>> Loading MOVED
>> ====>> Calculating ports order and dependencies
>> ====>> MOVED: databases/db41 renamed to databases/db48
>> ====>> MOVED: databases/db42 renamed to databases/db48
>> ====>> Sanity checking the repository
>> ====>> Deleting old version: liboil-0.3.17_1.txz
>> ====>> Deleting old version: p5-DBD-Pg-3.4.0.txz
>> ====>> Deleting old version: p5-Net-SSLeay-1.65.txz
>> ====>> Deleting stale symlinks
>> ====>> Deleting empty directories
>> ====>> Cleaning the build queue
>> ====>> Building 490 packages using 8 builders
>> ====>> Starting/Cloning builders
>> ====>> Hit CTRL+t at any time to see build progress and stats
>> _______________________________________________
>> freebsd-ports at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-ports
>> To unsubscribe, send any mail to 
>> "freebsd-ports-unsubscribe at freebsd.org"

Thank you for the answer.  And as a user since 2.x kudo's to you, Brian 
and all
the others working on PKG and poudriere - they have made port management 
and deployment
nearly a non-event and I applaud everyone's effort.

--mikej


More information about the freebsd-ports mailing list