Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Sep 2014 18:22:43 -0400
From:      Michael Jung <mikej@mikej.com>
To:        Bryan Drewery <bdrewery@freebsd.org>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: "poudriere bulk" - why does it fail on single package with missing port =?UTF-8?Q?origin=3F?=
Message-ID:  <43124008de56b2415cd38bfe1958ea08@mail.mikej.com>
In-Reply-To: <541369AA.9080609@FreeBSD.org>
References:  <08d567943bd91144edc2e17a06214468@mail.mikej.com> <541369AA.9080609@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@bsd11 /usr/local/poudriere/ports/default/x11/mate]#
>> 
>> 
>> AFTER remove x11/mate from the list "charon-list"
>> 
>> 
>> [root@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@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-ports
>> To unsubscribe, send any mail to 
>> "freebsd-ports-unsubscribe@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43124008de56b2415cd38bfe1958ea08>