[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    Re: [gentoo-dev] Re: [OT/NIT] Re: Re: [gentoo-commits] gentoo-x86 commit in profiles: ChangeLog pack
From:       Peter Stuge <peter () stuge ! se>
Date:       2013-04-24 23:50:33
Message-ID: 20130424235034.25253.qmail () stuge ! se
[Download RAW message or body]

Michael Mol wrote:
> > I would argue that repoman and/or corresponding checks should be run
> > by a CI system hooked up to the Gerrit instance that developers push to.
> 
> I was thinking something similar, actually, except you'd need
> something like this:
> 
> 1. dev pushes to Gerrit
> 2. Gerrit does processing
> 3. Gerrit pushes to tree, if tests pass.

This is exactly how Gerrit works and indeed what I expect also Gentoo
to use. It's a very convenient workflow.


> It would necessitate needing a separate mechanism to be able to undo
> changes to tree that broke things Gerrit missed

Gerrit can be told to revert any changeset.


> It might also result in only being able to push one changeset at a
> time, due to this scenario:

The policy that Gerrit will use for adding commits in the output
repository is configurable.

One of the options is to require each commit to be a fast-forward.
This means that every single commit blocks all other commits, but
ensures that what is in the public repo is exactly what was tested.

I personally find that merge policy unworkable.

I tend to prefer cherry-pick, which means that commits pushed to
Gerrit can be included in the output repo in any order, and that
there is a risk for a merge conflict when Gerrit tries to pick the
commit. It also means that there is a risk of false test positives,
when the output repo has changed enough while the new commit was
being tested to cause the new commit to break something.

I personally find that merge policy the most practical, and
experience from a few projects shows that the number of actual
nontrivial problems is low if not zero.


> git's email features to email diffs

Nono, Gerrit does all of this already. Look into the documentation
and/or set up an installation to play around with.


Patrick Lauer wrote:
> > I would argue that repoman and/or corresponding checks should be run
> > by a CI system hooked up to the Gerrit instance that developers push to.
> 
> So, let me get this straight ...
> 
> $now: Developer A makes a change to automake
> $now+10min: Change is pushed to CI

What are the 10 minutes?


> $now + 2 weeks: Initial testrun done, 734 potential issues found
> (and 2 weeks is a pretty generous optimistic estimate)

I think you mean something else than I do with CI and testing.

It obviously doesn't make sense to build a whole lot of stuff per-commit.


> At least your idea is completely unrelated to reality and a waste of
> developer's time and minds, but thanks for bringing up something
> completely silly again.

You are behaving like an asshole. Please consider that what I
contribute might be useful for Gentoo, and that if you have a
different impression perhaps you have misunderstood something
and can politely ask me to clarify if I really intend what you
have interpreted. Thanks!


//Peter

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic