Re: Proposal to change the semantics of DONTBUILD

2013-01-16 Thread L. David Baron
On Tuesday 2013-01-15 13:20 -0800, Gregory Szorc wrote:
 This seems to make sense. My only concern is if there is a scenario
 where you absolutely need to push without incurring a build (think
 merge commit where you don't have control over the previous
 commits). I'm not sure why we'd do that, so I'm inclined to believe
 that such a scenario does not exist.

I haven't heard of an absolutely need to not build scenario.  We
sometimes do extra builds for various reasons.  The point of
DONTBUILD is to save resources; occasionally failing to save
resources when we could have done so is much less of a problem than
not doing things that we really need to do.

So Ehsan's proposal sounds great.

-David

-- 
턞   L. David Baron http://dbaron.org/   턂
턢   Mozilla   http://www.mozilla.org/   턂
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Proposal to change the semantics of DONTBUILD

2013-01-15 Thread Ehsan Akhgari
Hi all,

Currently, DONTBUILD only takes affect if it's set on the tip of the
changesets that you push.  This can cause problems when merging between
different trees if the target tree is a full subset of the origin tree
(i.e., fast-forward merges in git terminology) when the top-most changeset
is DONTBUILD, since it means that the entire push will not get builds and
tests.

Over in bug 815215, I've proposed that we change DONTBUILD to have
per-changeset semantics, meaning that for each patch that does not require
builds and tests, you should add DONTBUILD to your commit message.  With
this change, buildbot will look at all changesets in your push and will
only skip builds if all of them are DONTBUILD.

What this means to you as a person who merges trees is that you'll get sane
semantics by default.  If you're a person who writes DONTBUILD changes,
this means that you should now specify it on all individual patches (which
in practice only makes a difference if you push more than one DONTBUILD
changeset at a time to let's say inbound.)

Does anybody object to this proposal?

Cheers,
--
Ehsan
http://ehsanakhgari.org/
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Proposal to change the semantics of DONTBUILD

2013-01-15 Thread Gregory Szorc

On 1/15/13 1:11 PM, Ehsan Akhgari wrote:

Hi all,

Currently, DONTBUILD only takes affect if it's set on the tip of the
changesets that you push.  This can cause problems when merging between
different trees if the target tree is a full subset of the origin tree
(i.e., fast-forward merges in git terminology) when the top-most changeset
is DONTBUILD, since it means that the entire push will not get builds and
tests.

Over in bug 815215, I've proposed that we change DONTBUILD to have
per-changeset semantics, meaning that for each patch that does not require
builds and tests, you should add DONTBUILD to your commit message.  With
this change, buildbot will look at all changesets in your push and will
only skip builds if all of them are DONTBUILD.

What this means to you as a person who merges trees is that you'll get sane
semantics by default.  If you're a person who writes DONTBUILD changes,
this means that you should now specify it on all individual patches (which
in practice only makes a difference if you push more than one DONTBUILD
changeset at a time to let's say inbound.)


This seems to make sense. My only concern is if there is a scenario 
where you absolutely need to push without incurring a build (think merge 
commit where you don't have control over the previous commits). I'm not 
sure why we'd do that, so I'm inclined to believe that such a scenario 
does not exist.


___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Proposal to change the semantics of DONTBUILD

2013-01-15 Thread Daniel Holbert
On 01/15/2013 01:20 PM, Gregory Szorc wrote:
 This seems to make sense. My only concern is if there is a scenario
 where you absolutely need to push without incurring a build (think merge
 commit where you don't have control over the previous commits). I'm not
 sure why we'd do that, so I'm inclined to believe that such a scenario
 does not exist.

In that scenario (if it exists) you could always use the build API (and
the shortcut red-stopsign buttons on TBPL) to effectively get what you want.

+1 to ehsan's proposal.
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Proposal to change the semantics of DONTBUILD

2013-01-15 Thread Ed Morley

On 15/01/2013 23:52, Daniel Holbert wrote:

In that scenario (if it exists) you could always use the build API (and
the shortcut red-stopsign buttons on TBPL) to effectively get what you want.


Killing running builds would mean needing to clobber all machines for 
all platforms for that tree (until we have bug 658934), which would 
possibly outweigh the benefit (depending on build vs test machine load 
at the time).


However I think this scenario is sufficiently uncommon that it needn't 
block Ehsan's proposal :-)


Best wishes,

Ed
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform