Gentoo Archives: gentoo-dev

From: Peter Stuge <peter@×××××.se>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: [OT/NIT] Re: Re: [gentoo-commits] gentoo-x86 commit in profiles: ChangeLog package.mask
Date: Wed, 24 Apr 2013 23:50:45
Message-Id: 20130424235034.25253.qmail@stuge.se
In Reply to: Re: [gentoo-dev] Re: [OT/NIT] Re: Re: [gentoo-commits] gentoo-x86 commit in profiles: ChangeLog package.mask by Michael Mol
1 Michael Mol wrote:
2 > > I would argue that repoman and/or corresponding checks should be run
3 > > by a CI system hooked up to the Gerrit instance that developers push to.
4 >
5 > I was thinking something similar, actually, except you'd need
6 > something like this:
7 >
8 > 1. dev pushes to Gerrit
9 > 2. Gerrit does processing
10 > 3. Gerrit pushes to tree, if tests pass.
11
12 This is exactly how Gerrit works and indeed what I expect also Gentoo
13 to use. It's a very convenient workflow.
14
15
16 > It would necessitate needing a separate mechanism to be able to undo
17 > changes to tree that broke things Gerrit missed
18
19 Gerrit can be told to revert any changeset.
20
21
22 > It might also result in only being able to push one changeset at a
23 > time, due to this scenario:
24
25 The policy that Gerrit will use for adding commits in the output
26 repository is configurable.
27
28 One of the options is to require each commit to be a fast-forward.
29 This means that every single commit blocks all other commits, but
30 ensures that what is in the public repo is exactly what was tested.
31
32 I personally find that merge policy unworkable.
33
34 I tend to prefer cherry-pick, which means that commits pushed to
35 Gerrit can be included in the output repo in any order, and that
36 there is a risk for a merge conflict when Gerrit tries to pick the
37 commit. It also means that there is a risk of false test positives,
38 when the output repo has changed enough while the new commit was
39 being tested to cause the new commit to break something.
40
41 I personally find that merge policy the most practical, and
42 experience from a few projects shows that the number of actual
43 nontrivial problems is low if not zero.
44
45
46 > git's email features to email diffs
47
48 Nono, Gerrit does all of this already. Look into the documentation
49 and/or set up an installation to play around with.
50
51
52 Patrick Lauer wrote:
53 > > I would argue that repoman and/or corresponding checks should be run
54 > > by a CI system hooked up to the Gerrit instance that developers push to.
55 >
56 > So, let me get this straight ...
57 >
58 > $now: Developer A makes a change to automake
59 > $now+10min: Change is pushed to CI
60
61 What are the 10 minutes?
62
63
64 > $now + 2 weeks: Initial testrun done, 734 potential issues found
65 > (and 2 weeks is a pretty generous optimistic estimate)
66
67 I think you mean something else than I do with CI and testing.
68
69 It obviously doesn't make sense to build a whole lot of stuff per-commit.
70
71
72 > At least your idea is completely unrelated to reality and a waste of
73 > developer's time and minds, but thanks for bringing up something
74 > completely silly again.
75
76 You are behaving like an asshole. Please consider that what I
77 contribute might be useful for Gentoo, and that if you have a
78 different impression perhaps you have misunderstood something
79 and can politely ask me to clarify if I really intend what you
80 have interpreted. Thanks!
81
82
83 //Peter