Gentoo Archives: gentoo-user

From: Matthias Dahl <ml_gentoo-lists@×××××××××××××.eu>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Managing a Build Server (as chroot per server or single dedicated)
Date: Tue, 27 Jan 2015 11:08:35
Message-Id: 54C771AA.6010000@binary-island.eu
1 Hello @all...
2
3 I am currently in the process of revamping my server infrastructure and
4 two things on my list are to finally use Salt (CM system) and to reduce
5 the update time for each server and have a "small staging" area before I
6 emerge packages/updates to the live system.
7
8 So, I wanted to ask the community for advice on how they deal with the
9 whole build server issue -- especially if you go for a build chroot on
10 the same machine? Before I go out and reinvent the wheel for all sorts
11 of problems and tools, I thought this is definitely something a lot of
12 people have run into before. :)
13
14 Why a build chroot on each server instead of a dedicated build server?
15
16 For one thing, scaling up for me means, I will maintain more servers for
17 my clients (I am self-employed) which results in a "server park" that is
18 generally diverse and not all that homogeneous. I only have very few
19 servers I own and use myself.
20
21 Secondly, if the client ever decides to cancel my services, he can still
22 use the build/staging system as-is which is imho a nice to have feature.
23 I generally don't believe in locking the customer in -- at all.
24
25 And last but not least: A dedicated build machine is also a matter of
26 costs and since there would be quite a few build environments running on
27 it (containers, chroots, whatever) and factoring in other things like
28 traffic and all, this can easily get rather expensive soonish once
29 scaled up which is something I would like to avoid.
30
31 From my perspective, a few areas are problematic:
32
33 Automation of the build process for example is one area where I think it
34 is difficult to just schedule a cron job since due to dependency and/or
35 other conflicts, builds might not even run. Or packages change their
36 default USE flags and might need adjustments. Or revdep-rebuilds. So, I
37 guess there is still some manual intervention necessary here? I am just
38 purely looking at the "build server" part here. The actually updating to
39 the system is a totally different matter.
40
41 Are there any tools out there to help manage a "build server"? I have
42 read about people using catalyst for that -- which is not quite what I
43 am looking for. I guess Gentoo Infra might have developed their own set
44 of tools -- and maybe released those to the wild? :)
45
46 Is a "build server chroot" per server really feasible and advisable or
47 are there any good reasons against it?
48
49 I would appreciate any help, input or feedback that I can get. Thanks a
50 lot in advance.
51
52 With Kind Regards from Germany,
53 Matthias
54
55 --
56 Dipl.-Inf. (FH) Matthias Dahl | Software Engineer | binary-island.eu
57 services: custom software [desktop, mobile, web], server administration