[Engine-devel] Proposal for new commit msg design for engine commits

Eyal Edri eedri at redhat.com
Tue Jul 9 13:44:50 UTC 2013



----- Original Message -----
> From: "Fabian Deutsch" <fabiand at redhat.com>
> To: "Alon Bar-Lev" <alonbl at redhat.com>
> Cc: "engine-devel" <engine-devel at ovirt.org>, "infra" <infra at ovirt.org>
> Sent: Tuesday, July 9, 2013 3:54:06 PM
> Subject: Re: [Engine-devel] Proposal for new commit msg design for engine	commits
> 
> Am Dienstag, den 09.07.2013, 08:49 -0400 schrieb Alon Bar-Lev:
> > 
> > 
> > ----- Original Message -----
> > > From: "Yair Zaslavsky" <yzaslavs at redhat.com>
> > > To: "Alon Bar-Lev" <alonbl at redhat.com>
> > > Cc: "Eyal Edri" <eedri at redhat.com>, "engine-devel"
> > <engine-devel at ovirt.org>, "infra" <infra at ovirt.org>
> > > Sent: Tuesday, July 9, 2013 3:42:24 PM
> > > Subject: Re: [Engine-devel] Proposal for new commit msg design for
> > engine     commits
> > > 
> > > 
> > > 
> > > ----- Original Message -----
> > > > From: "Alon Bar-Lev" <alonbl at redhat.com>
> > > > To: "Eyal Edri" <eedri at redhat.com>
> > > > Cc: "engine-devel" <engine-devel at ovirt.org>, "infra"
> > <infra at ovirt.org>
> > > > Sent: Tuesday, July 9, 2013 3:33:57 PM
> > > > Subject: Re: [Engine-devel] Proposal for new commit msg design for
> > engine
> > > >     commits
> > > > 
> > > > 
> > > > 
> > > > ----- Original Message -----
> > > > > From: "Eyal Edri" <eedri at redhat.com>
> > > > > To: "engine-devel" <engine-devel at ovirt.org>
> > > > > Cc: "infra" <infra at ovirt.org>
> > > > > Sent: Tuesday, July 9, 2013 12:38:51 PM
> > > > > Subject: Proposal for new commit msg design for engine commits
> > > > > 
> > > > > Hi,
> > > > > 
> > > > > You all probably know and familiar with 'ovirt-engine' git hook
> > for
> > > > > commit
> > > > > msg template [1].
> > > > > this helps understand the general area of the patch in the
> > project but it
> > > > > lacks additional info that might
> > > > > be valuable for scaling automatic tests in Jenkins CI.
> > > > > 
> > > > > Let me explain:
> > > > > 
> > > > > Infra team is working hard on expanding oVirt CI infrastructure
> > and
> > > > > adding
> > > > > more tests in jenkins (per commit/patch).
> > > > > Adding important meta-data per patch can significatly improve
> > the ability
> > > > > to
> > > > > run specific tests for each patch/commit,
> > > > > and not waste valuable resources on Jenkins jobs that are not
> > relevant to
> > > > > the
> > > > > code in the patch.
> > > > > 
> > > > > So the idea is to add/expand current metadata per patch, in the
> > form of:
> > > > > (either)
> > > > >  1. expanding current header template to include more data like
> > 'network'
> > > > >  ,
> > > > >  'setup', 'tools', 'virt'
> > > > 
> > > > Please do not expand header, it is too short anyway.
> > > > 
> > > > >  2. adding a new label with relevant tags for the patch, called
> > e.g
> > > > >  'METADATA: network, rest, virt'
> > > > 
> > > > Having:
> > > > 
> > > > CI-Tests: xxx
> > > > CI-Tests: yyy
> > > > CI-Tests: zzz
> > > > 
> > > > Is much better.
> > > 
> > > I'm not sure we should have CI-Test - as we might use this for
> > something else
> > > besides CI.
> > > Region_of_Interest as Dan suggests sounds better IMHO.
> > 
> > I don't care how this is to be called.
> > However, I do not think that commit message is the place for
> > instructing CI to do anything.
> > Commit message stays for good, it should contain information that is
> > required a year from now.
> > It has nothing to do with tests and such.
> 
> I agree with Alon here that the Ci informations don't belong in the
> commit msg.
> My opinion is that a testcase should know what it covers. This
> information from the testcase can then be used by any party to determin
> if the testcase should be run on a specific commit (which yields
> informations about the changed paths, files, owner, author, etc ...
> which might be valuable).

i don't understand what you mean by "a testcase should know what it covers".
of course it does. that's not the problem though.
the problem is ovirt-engine has multiple components with him that apply to various 
fields, some patches are relevant to specific areas and not not.

so a "test case" (that clones ovirt-engine repo) can't know which tests to run 
if he doesn't have that info somewhere in the patch.

if we don't want info in the git commit msg, we can try using git notes [1]

but i think that this meta-data isn't all about ci jobs, it's about additional info on 
what the patch touches/adds. it can also help qa testing later to pinpoint where the code was changed
and perhaps enable the use of future automation scripts that can scan the commits 
and generate statics on coverage per subject/field.

[1]  https://www.kernel.org/pub/software/scm/git/docs/git-notes.html
     http://alblue.bandlem.com/2011/11/git-tip-of-week-git-notes.html
> 
> - fabian
> 
> _______________________________________________
> Infra mailing list
> Infra at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/infra
> 



More information about the Devel mailing list