buildbots/config.guess: error message written into command

Petr Štetiar ynezz at true.cz
Fri Aug 14 05:06:48 EDT 2020


Adrian Schmutzler <mail at adrianschmutzler.de> [2020-08-12 13:28:21]:

Hi,

> However, I don't see what's the problem with it, it should put the error message into stderr ...

that sed command comes from https://git.openwrt.org/?p=buildbot.git;a=blob;f=phase1/master.cfg#l1028
and that config.guess issue is from https://git.openwrt.org/?p=buildbot.git;a=blob;f=phase1/master.cfg#l1011
as the build step captures stderr, workaround could be following (untested):

	diff --git a/phase1/master.cfg b/phase1/master.cfg
	index 3ba7a1606e89..1e68e2e8b862 100644
	--- a/phase1/master.cfg
	+++ b/phase1/master.cfg
	@@ -1012,7 +1012,8 @@ for target in targets:
				property = "stageroot",
				description = "Finding the rootfs staging directory",
				command=["make", "--no-print-directory", "val.STAGING_DIR_ROOT"],
	-                       env = { 'TOPDIR': Interpolate("%(kw:cwd)s/build", cwd=GetCwd) }
	+                       env = { 'TOPDIR': Interpolate("%(kw:cwd)s/build", cwd=GetCwd) },
	+                       want_stderr = False
			))
	 
			factory.addStep(ShellCommand(

> If somebody has a clue, I'd be happy if this could be fixed, as sed-ing on
> some "random" paths is not really desirable ...

The origin of those occasional config.guess issues is probably from no disk
space on the build host:

 [pid 29908] 05:15:29 mkdir("/tmp/cg0Qcc67", 0700) = -1 ENOSPC (No space left on device)

Those buildslaves are running in Docker containers, so the / from host is / in
the container, so if / on host is full, then / (and /tmp) in container is full
as well.  Builds itself happen in /builder directory which is 25GB tmpfs, so
without space issues.

I'm now trying to find out, what is sometimes making / on host full (there is
usually about 67GB free on /) and fix this annoying and recurring issue for
good.

-- ynezz



More information about the openwrt-devel mailing list