Continuous integration
| Group: | Platform |
| Start: | |
| End: | |
| Team: | Chad Horohoe, Timo Tijhof |
| Lead: | Antoine Musso |
| Status: | See updates |
The continuous integration server is a hardware machine that runs continuous integration builds. The project has been rebuilt from scratch on a dedicated server (gallium) hosted in eqiad (Virginia data center). It hosts Jenkins for job control and execution of unit tests and TestSwarm for distribution and execution QUnit (JavaScript) unit tests.
All tool are reachable from the homepage:
Contents |
Status [edit]
-
[edit status] • [add new]2013-05-06:Upgraded Zuul, it now supports project templates in its configuration files and reports back in Gerrit the duration of the job run.
Rationale [edit]
In order to improve the development process, it was proposed to consolidate a platform to run automated tests systematically at pre-commit or post-commit time.
These tests aim to check that the SVN trunk is in an (almost) constantly deployable state. This project also relates to the will to have more frequent code deployments, as continuous integration will give us more confidence in new code if it already passed the automated tests.
Timeline [edit]
See also Task management for what else is on the schedule
- End of January 2012: rewrite the way we do jobs in Jenkins. One job to fetch code from SVN/Git, another job to actually run the test. This will make it so that if the checkout fails, it doesn't cause a whole bunch of false failures on tests.
2012:
- Integrate TestSwarm build results into Jenkins for better overview and notification
- Run core JS tests directly into Jenkins using Node.js. Would let us quickly catch JS issues.
- Triage tests and split them in fast and slow groups. The fast group could be used as a pre commit hook.
- Add up code quality metrics such as PHPUnit mess detector.
- Have jenkins automatically creates a job on topic branch creation.
Documents [edit]
See also [edit]
- Open issues for "Continuous integration" in Bugzilla
- integration user group in Gerrit
- Manual:Unit testing