Re: [Plone-developers] jenkins and git repository monitoring
Timo Stollenwerk <[email protected]> Mon, 06 Feb 2012 09:21:48 +0100
| Newsgroups | gmane.comp.web.zope.plone.website,gmane.comp.web.zope.plone.devel |
|---|---|
| Message-ID | <[email protected]> |
Am 03.02.2012 23:07, schrieb William Deegan: > All, > On Nov 20, 2011, at 7:59 AM, Patrick Gerken wrote: > >> On Sun, Nov 20, 2011 at 15:51, Timo Stollenwerk <[email protected]> wrote: >>> Hi Patrick, >>> >>> I'm not sure if polling github is really what we want for CI (the >>> ScriptTrigger plugin does poll after all if I understand it correctly). >>> Polling works fine for smaller projects, but I don't think it does >>> really scale for a project like Plone. With a large number of jobs >>> polling this is a waste of network resources and we don't really get >>> atomic commits (which is not really CI then). >> >> Yes, it's really slow, right now it takes 20 minutes. We are polling >> github and svn right now, and the git plugin is too stupid to work >> with multiple checkouts reliably, and believes every time something >> has changed. >> >> My idea would be a small improvement of the current situation, while >> yours below certainly is better, but it needs to be done. >> I'd love to join the efforts, but right now I can't even keep up with >> mail traffic :-( > > Was wondering what's the current status on this. > Apparently github has a API which would allow us to walk all the plone repos and set the hook programmatically > http://developer.github.com/v3/repos/hooks/ I added a github user to jenkins.plone.org so we can trigger builds on github commits. I tested it for several core projects and it works pretty well (for single packages). As David already pointed out, we are also able to set github post-commit hooks programmatically. The question is still, how do we decide when to trigger a coredev build and how do we set up the Jenkins jobs. After discussing this issue with Eric I wrote a proposal for a Jenkins job architecture: https://github.com/plone/jenkins.plone.org/blob/master/architecture.rst This is still work in progress, so I'm open for discussion. Feel free to add your ideas and thoughts to that document. I think the only way we can figure out a good way to set up the coredev jobs is to try out different approaches. Therefore I started to play around a bit the Jenkins API to set up jobs automatically (because we don't want to set up jobs for all core packages manually): https://github.com/plone/jenkins.plone.org/blob/master/fabfile.py Michael Mulich also worked on setting up Jenkins jobs automatically. @Michael: Could you give us a quick update on what you did so far? I'm constantly working on the Jenkins setup, but right now I can only spare a couple of hours every week. I hope to get some work done at the Plone Konferenz sprint in Munich later this month. FYI: I also worked on buildout.jenkins this weekend and it is now possible to run code coverage and code analysis on multiple packages: https://github.com/plone/buildout.jenkins Cheers, timo ------------------------------------------------------------------------------ Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 _______________________________________________ Plone-website mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/plone-website The Wiki: http://plone.org/development/current/projects/WebsiteTeam