Hudson a PHP

Hudson, extensible continuous integration engine

Hudson je obdoba CruiseControl a Xinc, ale oproti těm má jednu zásadní výhodu a to, že jeho vývoj jede poměrně slušným tempem a programátoři v Javě co znám ho používají. Pokud jsme chtěli mít jeden server, kde běží integrace pro Javu a PHP je podle mě v této době nejlepší sáhnout právě po Hudson.

Instalace

01_dashboard-hudson_1235663237019

Build

  • pro build jsem použil Phing, ale stejně můžete použít Ant























 ${builddir}/reports/checkstyle.xml" escape="false" />





Příklad konfigurace

Project name
StartPage
Source Code Management
Subversion
  • Repository URL: https://localhost/svn/start_page/trunk
  • Local module directory (optional): source
  • Use update: true
Build
Execute shell
  • phing -f $WORKSPACE/source/build.xml -Dws=$WORKSPACE -Dtmp=$WORKSPACE
Post-build action
Publish Javadoc
  • Javadoc directory = build/start_page/apidocs/
  • Retain javadoc for each successful build = false
Publish JUnit test result report
Test report XMLs = build/start_page/reports/phpunit.xml
Publish Checkstyle analysis results
Checkstyle results = build/start_page/reports/checkstyle.xml
Publish PMD analysis results
PMD results = build/start_page/reports/phpunit.pmd.xml
Publish Clover Coverage Report
Clover report directory = build/start_page/reports/coverage/

Screenshots

V galerii jsou obrázky z Hudsona, nepřidal jsem obrázky, které vedou na dokumentaci v html formátu na code coverage report v html. Jsou tam jen výstupy, které zobrazuje Hudson nebo pluginy.

[gallery link=“file”]

Závěr

Moje řešení není dokonalé, ale funkční a doufám, že to pomůže rozmnožit Hudson i mojo Java komunitu. Pokud Hudson pro PHP někdo použív budu rád, když se podělíte o zkušenosti v komentářích.