Re: [Tails-dev] QEmu guest agent in tails builder

Delete this message

Reply to this message
Author: anonym
Date:  
To: The Tails public development discussion list
Subject: Re: [Tails-dev] QEmu guest agent in tails builder
Arnaud:
> On 04/22/2017 06:16 PM, anonym wrote:
>> If the fix I proposed above isn't good enough for you, I suggest
>> you wait and return to this issue in a few months -- there's an
>> ongoing rework of how we use Vagrant which moves in the direction
>> where each build will start with a completely fresh (first boot)
>> builder VM, and whenever a build finishes (success or not) the VM
>> is immediately destroyed and undefined. So I think your problem
>> will just go away once this work is merged into our main branches.
>> Fair enough?
>
> Alright I didn't know that. This will indeed solve the problem. Be sure
> to include an easy way to see the logs when a build fails, and to let
> the VM alive so that one can log in and investigate ;)


Which logs? The .buildlog is what you see written to stdout/stderr, so I guess you mean something else (?). Any way, on failure the VM is not destroyed unless the `forcecleanup` option is used, and on success it is destroyed unless `keeprunning` option is used, so I think you'll have what you want. Furthermore there's a `rescue` option which, when set, implies `keeprunning` *and* will prevent the build directory to be cleaned up after a failure, so that is an improvement in this area I think you'll agree.

Actually, ss our most active user of the build system outside of the "core" Tails contributors, I'd really be interested in your feedback on what we have done so far, and if you can think of improvements vs the workflow you have. If you are interested, please checkout the wip/11972-use-vagrant-in-jenkins branch and play around. :) Please backup your vagrant/.vagrant directory in case you want to return back to the old build system!

Another change with this branch is that from now on the base box (i.e. original builder VM image) is built locally (using only Debian packages, instead of downloading a big binary blob from us that you have to trust). Since your Internet connection is so glitchy I suggest that you setup apt-cacher-ng on your host system and run this the first time you use this branch:

    http_proxy=http://192.168.121.1:3142 rake basebox:create


i.e. so packages are cached on your host when building the base box, so if there's a network issue and you have to restart the caching will help you.

> I guess this rework implies that you move `apt-cacher-ng out of the
> builder, right ? Do you plan to include it in another VM, or you will
> just remove it completely, and let people handle it by themselves ?


The cache is moved to a separate VM disk which is the only thing kept between builds. I think you'll like this! :)

Cheers!