Date: Wed, 8 Aug 2018 18:01:57 +0200 From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com> To: Brooks Davis <brooks@freebsd.org> Cc: Ian Lepore <ian@freebsd.org>, <src-committers@freebsd.org>, <svn-src-all@freebsd.org>, <svn-src-head@freebsd.org> Subject: Re: svn commit: r336526 - head Message-ID: <20180808160157.uxjcbxu57z45pap2@mac> In-Reply-To: <20180726174146.GA63738@spindle.one-eyed-alien.net> References: <201807200044.w6K0i4QQ079894@repo.freebsd.org> <20180726135806.foqjgb555vhwhqun@mac.bytemobile.com> <1532616552.61594.23.camel@freebsd.org> <20180726145412.zp4zjznpwmhbaj65@mac.bytemobile.com> <1532617518.61594.31.camel@freebsd.org> <20180726161546.kts5tjbow7wfzhyk@mac.bytemobile.com> <20180726174146.GA63738@spindle.one-eyed-alien.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jul 26, 2018 at 05:41:46PM +0000, Brooks Davis wrote: > On Thu, Jul 26, 2018 at 06:15:46PM +0200, Roger Pau Monn?? wrote: > > On Thu, Jul 26, 2018 at 09:05:18AM -0600, Ian Lepore wrote: > > > On Thu, 2018-07-26 at 16:54 +0200, Roger Pau Monn? wrote: > > > > On Thu, Jul 26, 2018 at 08:49:12AM -0600, Ian Lepore wrote: > > > > > > > > > > On Thu, 2018-07-26 at 15:58 +0200, Roger Pau Monn? wrote: > > > > > > > > > > > > On Fri, Jul 20, 2018 at 12:44:04AM +0000, Ian Lepore wrote: > > > > > > > > > > > > > > > > > > > > > Author: ian > > > > > > > Date: Fri Jul 20 00:44:04 2018 > > > > > > > New Revision: 336526 > > > > > > > URL: https://svnweb.freebsd.org/changeset/base/336526 > > > > > > > > > > > > > > Log: > > > > > > > ? Add ntpd to the list of users/groups to check before > > > > > > > installing. > > > > > > The Xen CI loop is getting this when trying to create dist media > > > > > > for HEAD FreeBSD (`make -C release ftp`): > > > > > > > > > > > > + LC_ALL=C > > > > > > + export LC_ALL > > > > > > + > > > > > > PATH=/usr/lib/ccache:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbi > > > > > > n:/u > > > > > > sr/local/bin:/root/bin:/usr/lib/git-core > > > > > > + http_proxy=http://cache:3128/ > > > > > > + export http_proxy > > > > > > + https_proxy=http://cache:3128/ > > > > > > + export https_proxy > > > > > > + exec > > > > > > + cd /home/osstest/build.125515.build-amd64-freebsd > > > > > > + rm -f build-ok-stamp > > > > > > + cd freebsd > > > > > > + export 'MAKEOBJDIRPREFIX=/home/osstest/build.125515.build- > > > > > > amd64- > > > > > > freebsd/obj' > > > > > > + export 'TARGET=amd64' > > > > > > + make -C release ftp -DWITHOUT_AUTO_OBJ > > > > > > + tee ../release-ftp-log > > > > > > mkdir -p dist > > > > > > cd /usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/freebsd/release/.. && make TARGET_ARCH=amd64 TARGET=amd64 > > > > > > distributeworld DISTDIR=/usr/home/osstest/build.125515.build- > > > > > > amd64- > > > > > > freebsd/freebsd/release/dist > > > > > > make[2]: "/usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/obj/usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/freebsd/amd64.amd64/toolchain-metadata.mk" line 1: Using > > > > > > cached toolchain metadata from build at??on Mon Jul 23 10:29:23 > > > > > > UTC > > > > > > 2018 > > > > > > ERROR: Required ntpd user is missing, see /usr/src/UPDATING. > > > > > > *** Error code 1 > > > > > > > > > > > > Stop. > > > > > > make[2]: stopped in /usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/freebsd > > > > > > *** Error code 1 > > > > > > > > > > > > Stop. > > > > > > make[1]: stopped in /usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/freebsd > > > > > > *** Error code 1 > > > > > > > > > > > > Stop. > > > > > > make: stopped in /usr/home/osstest/build.125515.build-amd64- > > > > > > freebsd/freebsd/release > > > > > > > > > > > > The full build log can be found at: > > > > > > > > > > > > http://logs.test-lab.xenproject.org/osstest/logs/125569/build-amd > > > > > > 64-f > > > > > > reebsd/7.ts-freebsd-build.log > > > > > > > > > > > > Note that it's ~100MB. > > > > > > > > > > > > Thanks, Roger. > > > > > > > > > > > If the script is creating a new distribution image from scratch, it > > > > > should be using -DDB_FROM_SRC on all distrib* and install* make > > > > > targets, to avoid using (and verifying against) the passwd database > > > > > on > > > > > the build system. > > > > Shouldn't then that be set by default for the ftp release target? > > > > The sole purpose of that target is to create the sets that go to the > > > > servers AFAICT. > > > > > > > > Or maybe it's the distributeworld target the one missing the > > > > DB_FROM_SRC? > > > > > > > > Roger. > > > > > > > > > > I don't know anything about the release scripts or how they work. > > > > > > I started down the path of trying to make the build system > > > automatically set DB_FROM_SRC if DESTDIR is anything other than "/", > > > but I realized that's wrong too... I occasionally mount an sdcard from > > > some embedded system on my build machine and update it from a > > > crossbuild using DESTDIR=/mnt, and in a case like that, using the > > > passwd database from the system being updated is the right thing to do > > > and DB_FROM_SRC isn't right (although it would work most of the time > > > for most people). > > > > > > Right now there's no way to even properly use the passwd data from the > > > target system, and when I tried to do that, I ran into other bugs. The > > > only options now are to use the running system even when it's not > > > what's being installed (clearly wrong) or use DB_FROM_SRC to bypass the > > > checks, but also bypass using the passwd data from the target system > > > (but it works okay as long as none of the names/uids < 1024 have been > > > changed on the target system/image). > > > > But when executing something like the distributeworld target there's > > nothing to check. You cannot check against the current DB, and there's > > no destination DB since you are just generating install sets. Hence I > > think that at least for distributeworld and maybe other targets > > DB_FROM_SRC should be set by default in order to restore previous > > behavior. > > DB_FROM_SRC isn't default solely to support environments where uids/gids > don't match those in our password/group files. Unfortunately the FreeBSD > cluster has such a setup. Otherwise we'd probably have just told > people to a) don't do that and b) if you must, modify your source tree > appropriately. It's certainly the case that we should always use > DB_FROM_SRC if release builds. I think you might be right about > distributeworld, but we might need to check how that interacts with > etcupdate/mergemaster. There seems to be further fallout apart from the DB_FROM_SRC issue, I've created a PR to track this regression: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230459 Roger.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180808160157.uxjcbxu57z45pap2>