1 |
Hi Sam, |
2 |
|
3 |
Sam Pfeiffer <sammypfeiffer@×××××.com> writes: |
4 |
|
5 |
> To ease automated building and debugging of the bootstrap of Gentoo |
6 |
> Prefix I would like to propose a patch to add the option to stop the |
7 |
> non-interactive bootstrap on specific stages of the bootstrap. |
8 |
> |
9 |
> I'm currently doing this in my CI projects [1][2] and I'd love to have |
10 |
> this added upstream. |
11 |
> |
12 |
> I propose a patch like this: |
13 |
>https://gist.github.com/awesomebytes/3468477c6c90fe3d985372d50aabba9f |
14 |
> |
15 |
> Which is what I'm currently using. It just adds another optional |
16 |
>parameter to the commandline (a 3rd one) in non-interactive mode which |
17 |
>you tell it after which stage to stop (stage1, stage2, stage3). |
18 |
|
19 |
> I'm not the most versed person in bash, so maybe there is a more |
20 |
> conceptually beautiful way of doing this. My patch is just a proposal |
21 |
> (that has been tested and running). |
22 |
> |
23 |
> This patch is useful because it allows: |
24 |
> 1) Easier debugging by stages. |
25 |
|
26 |
> 2) Allows to split the bootstrap job in parts in CI environments with |
27 |
> time limits on jobs to run (e.g. Azure Pipelines time limit is 6h*, |
28 |
> and the bootstrap takes in between 5h40-6h40 depending on random |
29 |
> things like time to download things, and load on the machine... or |
30 |
> packages just taking longer to build). |
31 |
> |
32 |
> And this patch should not change anything to anyone else (AFAIK). |
33 |
|
34 |
Are you aware that in bootstrap-prefix.sh you can specify the stage you |
35 |
are after? e.g. |
36 |
|
37 |
https://wiki.gentoo.org/wiki/Project:Prefix/Manual_Bootstrap#Stage_1 |
38 |
|
39 |
The text above that could be outdated, but PATH exports and stage1~3 are |
40 |
correct. |
41 |
|
42 |
> Thanks for your time and feedback! |
43 |
> |
44 |
> P.S.: I'm used to the GitHub/GitLab workflow of having a graphical |
45 |
> interface to do a Pull Request... I don't know how to do this with |
46 |
> https://gitweb.gentoo.org/repo/proj/prefix.git/ If there is no way, |
47 |
> aside of the goal of this email, I'd propose to have a mirror in |
48 |
> GitHub. |
49 |
|
50 |
Yes, that's a good to have for me, but not in high priority. |
51 |
|
52 |
> *If you are curious, Stage 1 takes 8min~, Stage 2 takes 29min~, Stage |
53 |
> 3 takes 2h30min~, emerge system takes 2h35min~ on Azure Pipelines, |
54 |
> approximately. |
55 |
|
56 |
Thank you so much for all your work! That's extremely helpful to keep |
57 |
the quality of Prefix codebase. |
58 |
|
59 |
> [1] https://github.com/awesomebytes/gentoo_prefix_ci |
60 |
> [2] https://github.com/awesomebytes/gentoo_prefix_ci_32b |
61 |
|
62 |
Yours, |
63 |
Benda |