[asterisk-dev] DAHDI migration to Git

Paul Belanger paul.belanger at polybeacon.com
Thu Dec 6 18:44:27 CST 2012


On 12-12-06 12:44 PM, Shaun Ruffell wrote:
> On Thu, Dec 06, 2012 at 12:02:13PM -0500, Russell Bryant wrote:
>> On Thu, Dec 6, 2012 at 11:37 AM, Shaun Ruffell <sruffell at digium.com> wrote:
>>
>>>    - Gerrit is still in my queue to demo to see if it will solve the
>>>      issue so I don't have a comment there.
>>
>> I've been using gerrit a lot lately and I like it quite a bit.  Some
>> interesting notes:
>>
>> 1) It does support posting a patch series.  The UI isn't perfect for it,
>> but it's there.  I expect that to be improved in gerrit in the future given
>> the git-centric nature of gerrit and the importance of patch series for
>> projects using git.
>>
>> Here is one example:
>> https://review.openstack.org/#/q/project:openstack/nova+branch:master+topic:bp/nova-compute-cells,n,z
>>
>> If you go into a specific patch, you will see a "Dependencies" section,
>> where you can see the patch(es) that come before and/or after the one
>> you're looking at.
>
> Intersting. So you can list those dependencies for each patch but
> can reviewers accept / reject / comment on the entire series as a
> whole or does each individual patch need to be touched/approved?
>
>> 2) The commit message is reviewed just like the source changes in a patch.
>>   Again, take a look at any patch above as an example.
>>
>> 3) Gerrit has some built-in CLA checking logic that can be hooked into.
>> review.openstack.org uses it.  You must have a CLA to be able to push
>> changes there, which is the only path for getting patches in.
>
> I probably need to bump up installing / using Gerrit on my priority
> list. One thing that I still think I'll miss is the ability to
> review code offline but I have a feeling I'm the only one who really
> likes to do that...
>
So, I'm sure a lot of people heard me rambling on at Astricon / 
Astridevcon about automation, trunk gating testing, code reviews, build 
farms, the works.  No, well let me plug the talk[1].

Since then, I've managed to start migrating some of my stuff into this 
model.  Basically all my git repos lives on github.com (where it 
actually lives in the case is not relevant), and my code review tool 
(gerrit) and CI tool (jenkins) the cloud.  Everything is now managed by 
puppet.

So where am I going with this? In a matter of minutes, I've already 
import dahdi-linux into this process[2][3]. Cloned dahdi-linux from 
git.asterisk.org, and moved it asterisk-demo[4] on github.com. CI jobs 
have been created[5] and code review in place[6], basically at this 
point it is ready for testers to play with it.

Okay, so how do I test?  Basically, the following:

; Fork[7] or clone dahdi-linux from github
$ cd dahdi-linux
$ git checkout -b example-commit
; change something
$ git commit -a -s -m 'Example commit'

now you are ready to create a code review, if you don't have 
git-review[7] installed, you should be able to do:

$ sudo pip install git-review

Then, submit your review:

$ git-review

 From there, trunk gating tests take over making sure your code will 
actually work (I don't have anything actually working, but a simple git 
merge process). People will also review your code and eventually 
somebody will approve it, the CI will take care of the rest and merge it 
back into master.

I'll leave this up for people to play with :)

[1] http://www.astricon.net/2012/videos/From-One-to-Hundreds.html
[2] http://review.kickstand-project.org/#/c/35/
[3] http://review.kickstand-project.org/#/c/36/
[4] https://github.com/asterisk-demo/dahdi-linux
[5] http://jenkins.kickstand-project.org/job/gate-dahdi-linux-merge/
[6] http://review.kickstand-project.org/#/c/37/
[7] https://github.com/openstack-ci/git-review

-- 
Paul Belanger | PolyBeacon, Inc.
Jabber: paul.belanger at polybeacon.com | IRC: pabelanger (Freenode)
Github: https://github.com/pabelanger | Twitter: 
https://twitter.com/pabelanger



More information about the asterisk-dev mailing list