Show last authors
1 {{info}}
2 For a more recent list of CI requirements and analysis, see the [[Continuous Build page>>dev:Community.ContinuousBuild]].
3 {{/info}}
4
5 We've been using Jenkins as our [[CI tool>>http://ci.xwiki.org]] for a long time now. However we've had a lot of stability issues (slow UI mostly) and as a result we've tried to look for an alternative.
6
7 Here are the important use cases that we wish to cover with our CI software:
8
9 |=Use Cases|=Jenkins|=TeamCity
10 |Be able to have a display for running our Selenium tests|(/) XVNC plugin|(/) Command line steps to start/stop VNC using a shell script
11 |Easily add new jobs when a new branch is created (when RC is released for example)|(/) Scriptler plugin with Groovy script|(?)
12 |Easily remove all jobs for a given branch (for cleanup)|(/) Scriptler plugin with Groovy script|(?)
13 |Don't send emails on false positives|(/) [[Scriptler + Mail Ext + PostBuild plugins>>http://massol.myxwiki.org/xwiki/bin/view/Blog/JenkinsDontSendEmailForFalsePositives]]|(?) Might be possible using [[Build Failure Conditions>>http://confluence.jetbrains.com/display/TCD8/Build+Failure+Conditions]]: uncheck "the build process exit code is not zero" and then use "Fail build on specific text in build log" but it's probably difficult to use since we need to say "do not fail the build if this appears in the log" and not "fail the build if this appears in the log"...
14 |[[Ability to execute a Maven reactor build on several agents automatically>>http://massol.myxwiki.org/xwiki/bin/view/Blog/Jenkins+and+large+Maven+projects]]|(x)|(?)
15 |Abort builds taking too long to execute|(/) Build Timeout plugin|(?)
16 |Clean the Maven local repository regularly too save disk space and find out dependency issues|(/) Maven Repository Scheduled Cleanup Plugin|(?)
17 |Historical build performance graphs|(/) Performance plugin|(?) We can fail a build on custom metrics, including failing the build if it takes longer than such past builds, see [[Build Failure Conditions>>http://confluence.jetbrains.com/display/TCD8/Build+Failure+Conditions#BuildFailureConditions-Failbuildonmetricchange]].
18 |Personal builds|(x) But it should be possible to implement an [[unbreakable>>http://prezi.com/fjbwoo0sadht/unbreakable-builds-code-review-and-continuous-integration/]] [[build>>https://wiki.jenkins-ci.org/display/JENKINS/Designing+pre-tested+commit]] approach using Git branches|(/) Integrated in IDE (IDEA, Eclipse at least)
19 |Build promotion|(/) Promotion plugin|(?)
20 |Sonar integration|(/)|(/) See [[Sonar Plugin>>http://confluence.jetbrains.com/display/TW/SonarQube+plugin]]

Get Connected