From mboxrd@z Thu Jan 1 00:00:00 1970 From: ng0 Subject: bug#24496: offloading should fall back to local build after n tries Date: Tue, 04 Oct 2016 17:08:58 +0000 Message-ID: <87vax8nis5.fsf@we.make.ritual.n0.is> References: <8760ppr3q3.fsf@we.make.ritual.n0.is> <87r387nhjg.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52481) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1brTEE-00085Z-CO for bug-guix@gnu.org; Tue, 04 Oct 2016 13:10:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1brTEA-0002Do-3G for bug-guix@gnu.org; Tue, 04 Oct 2016 13:10:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:38618) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1brTEA-0002Dj-0o for bug-guix@gnu.org; Tue, 04 Oct 2016 13:10:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1brTE9-00042Y-U5 for bug-guix@gnu.org; Tue, 04 Oct 2016 13:10:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87r387nhjg.fsf@gnu.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 24496@debbugs.gnu.org Ludovic Courtès writes: > Hello! > > ng0 skribis: > >> When I forgot that my build machine is offline and I did not pass >> --no-build-hook, the offloading keeps trying forever until I had to >> cancel the build, boot the build-machine and started the build again. >> >> A solution could be a config option or default behavior which after >> failing to offload for n times gives up and uses the local builder. >> >> Is this desired at all? Setups like hydra could get problems, but for >> small setups with the same architecture there could be a solution beyond >> --no-build-hook? > > Like you say, on Hydra-style setup this could be a problem: the > front-end machine may have --max-jobs=0, meaning that it cannot perform > builds on its own. > > So I guess we would need a command-line option to select a different > behavior. I’m not sure how to do that because ‘guix offload’ is > “hidden” behind ‘guix-daemon’, so there’s no obvious place for such an > option. Could the daemon run with --enable-hydra-style or --disable-hydra-style and --disable-hydra-style would allow falling back to local build if after a defined time - keeping slow connections in mind - the machine did not reply. > In the meantime, you could also hack up your machines.scm: it would > return a list where unreachable machines have been filtered out. How can I achieve this? And to append to this bug: it seems to me that offloading requires 1 lsh-key for each build-machine. (https://lists.gnu.org/archive/html/help-guix/2016-10/msg00007.html) and that you can not directly address them (say I want to create some system where I want to build on machine 1 AND machine 2. Having 2 x86_64 in machines.scm only selects one of them (if 2 were working, see linked thread) and builds on the one which is accessible first. If however the first machine is somehow blocked and it fails, therefore terminates lsh connection, the build does not happen at all. Leaving out the problems, what I want to do in short: How could I build on both systems at the same time when I desire to do so? > Ludo’. > --