Gentoo Archives: gentoo-alt

From: Sam Pfeiffer <sammypfeiffer@×××××.com>
To: gentoo-alt@l.g.o
Subject: Re: [gentoo-alt] Re: 'Continuous Integration' for Gentoo Prefix?
Date: Tue, 11 Dec 2018 13:57:51
Message-Id: CABVqfw9b+fmV2yUMcv0sWAk2ei+3H=3j9+w7c00czDe4iJu9KA@mail.gmail.com
In Reply to: Re: [gentoo-alt] Re: 'Continuous Integration' for Gentoo Prefix? by Fabian Groffen
1 Hello Fabian,
2
3 I was unaware I could do that. Looks cleaner and more convenient! Thanks!
4
5 You could say it is 'by design'. I have no idea how to fix the perl stuff,
6 neither the other problems (9 workarounds needed in total to be able to
7 bootstrap Gentoo Prefix, documented here
8 https://pad.crans.org/p/gentoo-prefix and in my Dockerfiles). Given I need
9 Gentoo Prefix bootstrappable to keep building stuff upon it... That's the
10 best I could do.
11
12 I'd love to remove the hacks and be able to just run the
13 bootstrap-prefix.sh script and call it a day though.
14
15 On Wed, Dec 12, 2018 at 12:40 AM Fabian Groffen <grobian@g.o> wrote:
16
17 > Hey Sam,
18 >
19 > Examining some of your build logs, I wonder if you are aware you can do
20 > this:
21 >
22 > ./bootstrap-prefix.sh ${EPREFIX} noninteractive
23 >
24 > instead of forcing input to the script.
25 >
26 > Perl currently fails it seems in the logs, though the bootstrap is
27 > reported to be successful. Is this by design?
28 >
29 > Thanks,
30 > Fabian
31 >
32 > On 03-12-2018 11:53:02 +0100, Fabian Groffen wrote:
33 > > Cool! Thanks a lot!
34 > >
35 > > Fabian
36 > >
37 > > On 03-12-2018 21:48:15 +1100, Sam Pfeiffer wrote:
38 > > > Hello,
39 > > >
40 > > > Just wanted to update you up to where I got.
41 > > >
42 > > > Now I have two working repositories:
43 > > >
44 > > > * [1]https://github.com/awesomebytes/gentoo_prefix_ci
45 > > >
46 > > > * [2]https://github.com/awesomebytes/gentoo_prefix_ci_32b
47 > > >
48 > > > They have continuous integration setup with Azure pipelines where
49 > every night
50 > > > they will try to bootstrap Gentoo Prefix on amd64 and x86 using Docker
51 > images.
52 > > >
53 > > > As the READMEs state, this is currently done in 3 steps. This is done
54 > for two
55 > > > reasons. First, the 6h limit of one job running. Secondly, to be able
56 > to have
57 > > > intermediate state Docker images to maybe try to fix the current issues
58 > > > bootstrapping Gentoo Prefix in a more elegant way.
59 > > >
60 > > > Using as an example the amd64 build:
61 > > >
62 > > > On the releases
63 > > > section: [3]
64 > https://github.com/awesomebytes/gentoo_prefix_ci_32b/releases one
65 > > > can find .tar.gz files with the latest (currently done by hand, I'll
66 > automate
67 > > > that soon on successful builds) Gentoo Prefix that bootstrapped. It's
68 > > > bootstrapped in /tmp/gentoo and explained how to use it as I explained
69 > in this
70 > > > email thread before.
71 > > >
72 > > > On the builds
73 > > > page: [4]https://dev.azure.com/12719821/12719821/_build?definitionId=2
74 > one can
75 > > > find the full logs of every step.
76 > > >
77 > > > This fulfils my immediate needs, now I'll need to spend some time doing
78 > > > something similar to emerge all the stuff I need for
79 > [5]ros_overlay and offer a
80 > > > binary repo. But I'm open to talk about what I did, improve it, maybe
81 > move it
82 > > > somewhere else... You let me know!
83 > > >
84 > > > P.S.: Most of the work, if not all, is documented in bug
85 > [6]#668940 and more
86 > > > detailed and in order in [7]this notepad originally from Olivier Huber.
87 > > >
88 > > > P.S.2: The help I got from the people in the IRC at #gentoo-prefix was
89 > great.
90 > > >
91 > > > On Tue, Nov 27, 2018 at 8:21 PM Michael Haubenwallner <[8]
92 > haubi@g.o>
93 > > > wrote:
94 > > >
95 > > > > On 11/27/2018 09:37 AM, Sam Pfeiffer wrote:
96 > > > > > On Tue, Nov 27, 2018 at 7:20 PM Fabian Groffen <[9]
97 > grobian@g.o
98 > > > > <mailto:[10]grobian@g.o>> wrote:
99 > > > > >
100 > > > > > > I don't want to depress this entire discussion, but it would be
101 > really
102 > > > > > > nice if we could somehow interact with special machines people
103 > have at
104 > > > > > > their company or at home. Prefix needs testing on many different
105 > > > > > > machines (non-Linux) which usually don't exist in docker images.
106 > > >
107 > > > > I second this - and let me add a further aspect here:
108 > > > > What I know from buildbot setup is that the master does provide
109 > (mostly shell)
110 > > > > commands to be executed on the slave. This is fine as long as there
111 > is limited
112 > > > > visibility for the master. But when a public buildbot master is being
113 > > > > hijacked,
114 > > > > it feels too easy to execute malicious commands even on the slave
115 > machines.
116 > > >
117 > > > > So over a buildbot like setup, I would prefer a Jenkins like setup,
118 > where the
119 > > > > master does provide only trigger information to slaves. And even more
120 > > > > appealing
121 > > > > would be a standalone slave setup, where the master does just
122 > receive the
123 > > > > build
124 > > > > logs for the public, without access to slave machines at all.
125 > > >
126 > > > > > That's alright, we can use QEMU for some more esoteric hardware
127 > platforms,>
128 > > > > if it's an OS that runs on a normal amd64/x86 computer a Docker
129 > image can be
130 > > > > > built (I'm not an expert but there are images to learn how to do
131 > it).> Or in
132 > > > > the worst case we can create an old-school VM for those weird OS
133 > > > > > and automate the interaction with it (I did it for a robot by
134 > dumping all
135 > > > > > disk once and creating a VM from it, it worked ok).
136 > > >
137 > > > > Well... there's a bunch of OSs I fail to imagine the use of cloud
138 > driven
139 > > > > hardware for them, like hppa-hpux or ia64-hpux for past ones, and
140 > ppc-aix,
141 > > > > ppc-macos, sparc-solaris, arm-linux or m68k-mint for current ones.
142 > > >
143 > > > > > > That said, focussing on the (usually fast) boxes like this to
144 > catch
145 > > > > > > dependency problems and more is useful. In the case below it
146 > looks like
147 > > > > > > the ld-wrapper is having issues. Would it be possible to enter
148 > the
149 > > > > > > environment for that failed run?
150 > > > > >
151 > > > > > Glad you see the use of it :) Yeah as I mentioned in the previous
152 > mail,
153 > > > > > having docker installed in your machine, to access that exact
154 > environment
155 > > > > > after the failed bootstrap just do:
156 > > > > >
157 > > > > > # This will download the image to your machine (it may take a bit
158 > of time if
159 > > > > its the first time you use docker its around 1GB of data I think)
160 > > > > > docker pull awesomebytes/gentoo_prefix_latest_image
161 > > > > > # This will drop you into a shell in that environment, ready to
162 > play!
163 > > > > > docker run -it awesomebytes/gentoo_prefix_latest_image /bin/bash
164 > > > > >
165 > > > > > When you are done you can just type exit.
166 > > >
167 > > > > Nevertheless, having the breaking environment as a docker image where
168 > > > > possible (true for the major OSs we support) really is awesome!
169 > > >
170 > > > > /haubi/
171 > > >
172 > > > --
173 > > >
174 > > > Sammy Pfeiffer
175 > > > PhD Candidate at The Magic Lab within UTS.
176 > > >
177 > > >
178 > > >
179 > > > References:
180 > > > 1. https://github.com/awesomebytes/gentoo_prefix_ci
181 > > > 2. https://github.com/awesomebytes/gentoo_prefix_ci_32b
182 > > > 3. https://github.com/awesomebytes/gentoo_prefix_ci_32b/releases
183 > > > 4. https://dev.azure.com/12719821/12719821/_build?definitionId=2
184 > > > 5. https://github.com/ros/ros-overlay
185 > > > 6. https://bugs.gentoo.org/668940
186 > > > 7. https://pad.crans.org/p/gentoo-prefix
187 > > > 8. mailto:haubi@g.o
188 > > > 9. mailto:grobian@g.o
189 > > > 10. mailto:grobian@g.o
190 > > >
191 > > > read_char: errno==EILSEQ; invalid byte sequence for UTF-8:
192 > > --
193 > > Fabian Groffen
194 > > Gentoo on a different level
195 >
196 >
197 >
198 > --
199 > Fabian Groffen
200 > Gentoo on a different level
201 >
202
203
204 --
205
206 *Sammy Pfeiffer*
207 PhD Candidate at The Magic Lab within UTS.

Replies

Subject Author
Re: [gentoo-alt] Re: 'Continuous Integration' for Gentoo Prefix? Fabian Groffen <grobian@g.o>