I think (based on other conversations on the mailing list) that the Gerrit 
plugin may provide the type of workflow you're describing.  I haven't yet 
installed and configured Gerrit, so I can't answer from experience, but I 
believe others on the list have stated in the past that a "pre-tested commit" 
workflow is available through the combination of Git and Gerrit and Jenkins.
 
Alex Blewitt published an article in InfoQ 
http://www.infoq.com/articles/Gerrit-jenkins-hudson which gives an 
introduction.  I believe I've also watched a screencast from Alex on the same 
topic.
 
Mark Waite


>________________________________
> From: Emmanuel Grumbach <egrumb...@gmail.com>
>To: jenkinsci-users@googlegroups.com 
>Sent: Monday, February 13, 2012 11:35 PM
>Subject: Re: Git plugin: push result of a merge
>  
>
>First sorry for the late reply, somehow your mail didn't pop up anywhere so I 
>just saw it... now.
>
>
>I guess I need to explain a little the purposes of the branches and it will be 
>clearer: 
>My project is in sync with the community so that I need to merge code from 
>outside quite often. The thing is that I would like to test it before I 
>introduce to the main branch so that people don't get mad because "yet again 
>someone broke something in the community". So it goes like this: 
>
>
>I have 2 trees A and B. A is the main tree people actually work on. B is a 
>mirror of the community.
>Jenkins merges from B to A and pushes to a branch "merge_from_community" in A. 
>That way I have the latest internal + merge from the community in a separate 
>branch. If tests pass on that code, I can push _manually_ to the A's master 
>branch. 
>Note that this branch is not fast forward: if someone pushes something to A, 
>"merge_from_community" has to be rebased.
>
>
>This is the flow.
>Frankly, I don't really bother to push manually in my script, I just thought 
>that I might not be the only person interested in pushing --force. Of course 
>this has to be configurable. 
>
>Emmanuel Grumbach
>egrumb...@gmail.com
>
>
>
>On Sun, Feb 5, 2012 at 22:19, Mark Waite <markwa...@yahoo.com> wrote:
>
>I think adding the force option to the git plugin would be a mistake.  We lost 
>submissions when a user used "--force" with their push.  I realize the 
>submissions were still somewhere in the object store, but they became 
>unreferenced and much more difficult to locate.  Ultimately it was easier to 
>recreate the history (and forbid non-fast forward submissions) than to locate 
>the unreferenced commits. 
>> 
>>Can't you make your submissions a fast forward by performing a merge from the 
>>remote branch first?  Or are you truly intending to remove repository history 
>>from your Jenkins job? 
>> 
>>Mark Waite
>>
>>
>> From: Emmanuel Grumbach <egrumb...@gmail.com>
>>>To: jenkinsci-users@googlegroups.com 
>>>Sent: Sunday, February 5, 2012 12:55 PM
>>>Subject: Re: Git plugin: push result of a merge
>>> 
>>>
>>>Hi,
>>>
>>>On Sun, Feb 5, 2012 at 00:32, Sami Tikka <sjti...@gmail.com> wrote:
>>>> This should work if you use the git plugin to do it.
>>>>
>>>> Configure your job with both X-auto and X-dev repos.
>>>>
>>>> Then open the git advanced configuration and check "Merge before build".
>>>>
>>>> In Post-build Actions check "Git publisher".
>>>>
>>>> I have a somewhat similar setup at work.
>>>>
>>>> -- Sami
>>>>
>>>
>>>I did that, the issue is that the git publisher can't add the -f flag
>>>to the push operation. My push is not fast forward.
>>>
>>>
>>>   
> 
>
>   

Reply via email to