quickbuild.xml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project name="dolibarr" default="hudson" basedir=".">
  3. <!-- Exclude/ignore paths -->
  4. <property name="ignorepaths" value="${basedir}/htdocs/conf,${basedir}/htdocs/core/filemanagerdol,${basedir}/htdocs/includes" />
  5. <property name="ignoreregexp" value="**/PEAR/*,**/NET/*,**/HTTP/*,**/zendgdata/*,**/reportico/*" />
  6. <target name="clean">
  7. <!-- Clean up -->
  8. <delete dir="${basedir}/hudson"/>
  9. <delete dir="${basedir}/generatedJUnitFiles"/>
  10. <!-- Create build directories -->
  11. <mkdir dir="${basedir}/hudson/logs"/>
  12. <mkdir dir="${basedir}/hudson/coverage"/>
  13. </target>
  14. <!-- Run phpmd, phpcpd, phpcs, doxygen and phploc in parallel -->
  15. <target name="parallelTasks">
  16. <parallel>
  17. <!-- <antcall target="phpmd"/> -->
  18. <antcall target="phpcpd"/>
  19. <!-- <antcall target="phpcs"/> -->
  20. <antcall target="phploc"/>
  21. </parallel>
  22. </target>
  23. <!-- Generate pmd.xml -->
  24. <!--
  25. <target name="phpmd">
  26. <exec executable="phpmd">
  27. <arg line="htdocs xml codesize,unusedcode
  28. -\-reportfile '${basedir}/hudson/logs/pmd.xml'
  29. -\-ignore=${ignorepaths}
  30. " />
  31. </exec>
  32. </target>
  33. -->
  34. <!-- Generate pmd-cpd.xml -->
  35. <target name="phpcpd">
  36. <exec executable="phpcpd">
  37. <arg line=" --log-pmd '${basedir}/hudson/logs/pmd-cpd.xml'
  38. --exclude '${basedir}/htdocs/conf'
  39. --exclude '${basedir}/htdocs/core/filemanagerdol'
  40. --exclude '${basedir}/htdocs/includes'
  41. --exclude '**/PEAR/*,**/NET/*,**/HTTP/*,**/zendgdata/*,**/reportico/*'
  42. --min-tokens 70
  43. --min-lines 20
  44. htdocs
  45. " />
  46. </exec>
  47. </target>
  48. <!-- Generate phploc.csv -->
  49. <target name="phploc">
  50. <exec executable="phploc">
  51. <arg line=" --log-csv '${basedir}/hudson/logs/phploc.csv'
  52. --exclude '${basedir}/htdocs/conf'
  53. --exclude '${basedir}/htdocs/core/filemanagerdol'
  54. --exclude '${basedir}/htdocs/includes'
  55. --exclude '**/PEAR/*,**/NET/*,**/HTTP/*,**/zendgdata/*,**/reportico/*'
  56. htdocs
  57. " />
  58. </exec>
  59. </target>
  60. <!-- Generate checkstyle.xml -->
  61. <target name="phpcs">
  62. <exec executable="phpcs" dir="${basedir}">
  63. <arg line=" --standard=${basedir}/dev/codesniffer/jenkins_ruleset.xml
  64. --report=checkstyle
  65. --report-file=${basedir}/hudson/logs/checkstyle.xml
  66. --ignore=${ignorepaths},${ignoreregexp}
  67. htdocs
  68. "/>
  69. </exec>
  70. </target>
  71. <!-- Run unit tests and generate junit.xml and clover.xml -->
  72. <target name="phpunit">
  73. <exec executable="phpunit" dir="${basedir}" failonerror="true">
  74. <arg line=" --configuration ${basedir}/test/phpunit/jenkins_phpunittest.xml
  75. --log-junit ${basedir}/hudson/logs/junit.xml
  76. --coverage-clover ${basedir}/hudson/coverage/clover.xml
  77. --coverage-html ${basedir}/hudson/coverage/
  78. test/phpunit/AllTests.php
  79. "/>
  80. </exec>
  81. </target>
  82. <target name="hudson" depends="clean,phpunit,phpcs,parallelTasks"/>
  83. </project>