>백엔드 개발 >PHP 튜토리얼 >基于window下的jenkins php集成环境搭建分享(2)

基于window下的jenkins php集成环境搭建分享(2)

WBOY
WBOY원래의
2016-06-20 12:39:21861검색

 @build.xml (ant构建配置文件) 

<?xml version="1.0" encoding="UTF-8"?><project name="name-of-project" default="build">    <!-- By default, we assume all tools to be on the $PATH -->    <property name="toolsdir" value=""/>    <!--改成您相应的应用目录和测试目录-->    <property name="testdir" value="${basedir}/Test"/>    <property name="appdir" value="${basedir}/PHPCbping"/>    <available file="${basedir}/build" property="build_path"/>    <available file="${basedir}/App/TestControllers1" property="TestControllers1_exist"/>    <!--<property name="version-m"  value="1.1" />-->    <!--<property name="version"    value="1.1.0" />-->    <!--<property name="stability"  value="stable" />-->    <!--<property name="releasenotes" value="" />-->    <!--<property name="tarfile"     value="${phing.project.name}.${buildnumber}.${buildid}.tar.gz" />-->    <!--<property name="pkgfile"     value="${phing.project.name}.${version}.tgz" />-->    <!--<property name="distfile"    value="dist/${tarfile}" />-->    <!--<property name="tests.dir" value="test" />-->    <!-- -->    <!--<fileset id="api.tar.gz" dir=".">-->        <!--<include name="test/**"/>-->        <!--<include name="*.php"/>-->        <!--<include name="*.xml"/>-->    <!--</fileset>-->    <!--<target name="check" description="Check variables" >-->        <!--<fail unless="version" message="Version not defined!" />-->        <!--<fail unless="buildnumber" message="buildnumber not defined!" />-->        <!--<fail unless="buildid" message="buildid not defined!" />-->        <!--<delete dir="dist" failonerror="false" />-->        <!--<mkdir dir="dist" />-->    <!--</target>-->    <!--<target name="tar" depends="check" description="Create tar file for release">-->        <!--<echo msg="Creating distribution tar for ${phing.project.name} ${version}"/>-->        <!--<delete file="${distfile}" failonerror="false"/>-->        <!--<tar destfile="${distfile}" compression="gzip">-->            <!--<fileset refid="api.tar.gz"/>-->        <!--</tar>-->    <!--</target>-->    <!-- Uncomment the following when the tools are in ${basedir}/vendor/bin -->    <!-- <property name="toolsdir" value="${basedir}/vendor/bin/"/> -->    <target name="build"            depends="prepare,lint,phploc-ci,pdepend,phpmd-ci,phpcpd-ci,phpunit,phpdox"            description=""/>    <target name="build-parallel"            depends="prepare,lint,tools-parallel,phpunit,phpdox"            description=""/>    <target name="tools-parallel" description="Run tools in parallel">        <parallel threadCount="2">            <sequential>                <antcall target="pdepend"/>                <antcall target="phpmd-ci"/>            </sequential>            <antcall target="phpcpd-ci"/>            <!--<antcall target="phpcs-ci"/>-->            <antcall target="phploc-ci"/>        </parallel>    </target>    <target name="clean"            unless="clean.done"            if="build_path"            description="Cleanup build artifacts">        <delete includeEmptyDirs="true">            <fileset dir="build" includes="**/*"/>        </delete>        <property name="clean.done" value="true"/>    </target>    <target name="prepare"            unless="prepare.done"            depends="clean,phpunit-init-clean"            description="Prepare for build">        <chmod dir="build" perm="0777"/>        <mkdir dir="${basedir}/build/api"/>        <mkdir dir="${basedir}/build/coverage"/>        <mkdir dir="${basedir}/build/logs"/>        <mkdir dir="${basedir}/build/pdepend"/>        <mkdir dir="${basedir}/build/phpdox"/>        <property name="prepare.done" value="true"/>    </target>    <target name="phpunit-init-clean" if="TestControllers1_exist" depends="clean">        <move todir="${testdir}/TestControllers1" failonerror="">            <fileset dir="${basedir}/App/TestControllers1"/>        </move>    </target>    <target name="lint"            unless="lint.done"            description="Perform syntax check of sourcecode files">        <apply executable="php" failonerror="true" taskname="lint">            <arg value="-l"/>            <fileset dir="${appdir}">                <include name="**/*.php"/>                <modified/>            </fileset>            <fileset dir="${testdir}">                <include name="**/*.php"/>                <modified/>            </fileset>        </apply>        <property name="lint.done" value="true"/>    </target>    <target name="phploc"            unless="phploc.done"            description="Measure project size using PHPLOC and print human readable output. Intended for usage on the command line.">        <exec executable="${toolsdir}phploc.bat" taskname="phploc">            <arg value="--count-tests"/>            <arg path="${appdir}"/>            <!--<arg path="${testdir}"/>-->        </exec>        <property name="phploc.done" value="true"/>    </target>    <target name="phploc-ci"            unless="phploc.done"            depends="prepare"            description="Measure project size using PHPLOC and log result in CSV and XML format. Intended for usage within a continuous integration environment.">        <exec executable="${toolsdir}phploc.bat" taskname="phploc">            <arg value="--count-tests"/>            <arg value="--log-csv"/>            <arg path="${basedir}/build/logs/phploc.csv"/>            <arg value="--log-xml"/>            <arg path="${basedir}/build/logs/phploc.xml"/>            <arg path="${appdir}"/>            <!--<arg path="${testdir}"/>-->        </exec>        <property name="phploc.done" value="true"/>    </target>    <target name="pdepend"            unless="pdepend.done"            depends="prepare"            description="Calculate software metrics using PHP_Depend and log result in XML format. Intended for usage within a continuous integration environment.">        <exec executable="${toolsdir}pdepend.bat" taskname="pdepend">            <arg value="--jdepend-xml=${basedir}/build/logs/jdepend.xml"/>            <arg value="--jdepend-chart=${basedir}/build/pdepend/dependencies.svg"/>            <arg value="--overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg"/>            <arg path="${appdir}"/>        </exec>        <property name="pdepend.done" value="true"/>    </target>    <target name="phpmd"            unless="phpmd.done"            description="Perform project mess detection using PHPMD and print human readable output. Intended for usage on the command line before committing.">        <exec executable="${toolsdir}phpmd.bat" taskname="phpmd">            <arg path="${appdir}"/>            <arg value="text"/>            <arg path="${basedir}/phpmd.xml"/>        </exec>        <property name="phpmd.done" value="true"/>    </target>    <target name="phpmd-ci"            unless="phpmd.done"            depends="prepare"            description="Perform project mess detection using PHPMD and log result in XML format. Intended for usage within a continuous integration environment.">        <exec executable="${toolsdir}phpmd.bat" taskname="phpmd">            <arg path="${appdir}"/>            <arg value="xml"/>            <arg path="${basedir}/phpmd.xml"/>            <arg value="--reportfile"/>            <arg path="${basedir}/build/logs/pmd.xml"/>        </exec>        <property name="phpmd.done" value="true"/>    </target>    <target name="phpcpd"            unless="phpcpd.done"            description="Find duplicate code using PHPCPD and print human readable output. Intended for usage on the command line before committing.">        <exec executable="${toolsdir}phpcpd.bat" taskname="phpcpd">            <arg path="${appdir}"/>        </exec>        <property name="phpcpd.done" value="true"/>    </target>    <target name="phpcpd-ci"            unless="phpcpd.done"            depends="prepare"            description="Find duplicate code using PHPCPD and log result in XML format. Intended for usage within a continuous integration environment.">        <exec executable="${toolsdir}phpcpd.bat" taskname="phpcpd">            <arg value="--log-pmd"/>            <arg path="${basedir}/build/logs/pmd-cpd.xml"/>            <arg path="${appdir}"/>        </exec>        <property name="phpcpd.done" value="true"/>    </target>    <target name="phpunit"            unless="phpunit.done"            depends="prepare"            description="Run unit tests with PHPUnit">        <exec executable="${toolsdir}phpunit.bat" failonerror="true" taskname="phpunit">            <arg value="--configuration"/>            <arg path="${basedir}/phpunit.xml.dist"/>            <arg value="--include-path"/>            <arg path="${appdir}"/>        </exec>        <property name="phpunit.done" value="true"/>    </target>    <target name="phpdox"            unless="phpdox.done"            depends="phploc-ci"            description="Generate project documentation using phpDox">        <exec executable="${toolsdir}phpdox.bat" dir="${basedir}" taskname="phpdox"/>        <property name="phpdox.done" value="true"/>    </target></project>

 @phpunit.xm.dist(相关信息可以查看官方文档)

<?xml version="1.0" encoding="UTF-8"?><phpunit        colors="true"        stopOnFailure="false"        backupStaticAttributes="false"        convertErrorsToExceptions="true"        convertNoticesToExceptions="true"        convertWarningsToExceptions="true"        processIsolation="false"        addUncoveredFilesFromWhitelist="true"        syntaxCheck="false"        cacheTokens="true"        verbose="false"        >    <php>        <includePath>PHPCbping/</includePath>    </php>    <testsuites>        <testsuite name="TEST">            <directory>Test/</directory>            <!--<file phpVersion="5.3.0" phpVersionOperator=">=">Test/CommandTest.php</file>-->            <exclude>PHPCbping/</exclude>        </testsuite>    </testsuites>    <filter>        <whitelist processUncoveredFilesFromWhitelist="true">            <directory suffix=".php">PHPCbping/</directory>        </whitelist>    </filter>    <logging>        <log type="coverage-clover" target="build/logs/clover.xml"/>        <log type="coverage-html" target="build/coverage"/>        <log type="junit" target="build/logs/junit.xml" logIncompleteSkipped="false"/>    </logging></phpunit>

@phpmd.xml(相关规则信息可以查看官方文档)

<?xml version="1.0" encoding="UTF-8"?><ruleset name="phpcbping-coding-standard"         xmlns="http://pmd.sf.net/ruleset/1.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0                      http://pmd.sf.net/ruleset_xml_schema.xsd"         xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">    <description>Description of your coding standard</description>    <rule ref="rulesets/codesize.xml"/>    <rule ref="rulesets/cleancode.xml"/>    <rule ref="rulesets/unusedcode.xml"/>    <rule ref="rulesets/design.xml"/>    <rule ref="rulesets/naming.xml"/>    <rule ref="rulesets/controversial.xml/Superglobals"/>    <!-- ... --></ruleset>

@phpdox.xml(相关规则信息可以查看官方文档)

<?xml version="1.0" encoding="UTF-8"?><phpdox xmlns="http://xml.phpdox.net/config">    <project name="phpdox-project" source="${basedir}/PHPCbping" workdir="${basedir}/build/api/xml">        <collector publiconly="false" backend="parser">            <include mask="*.php"/>        </collector>        <generator output="${basedir}/build/api">            <enrich base="${basedir}/build/logs">                <source type="build"/>                <source type="pmd"/>                <source type="phploc"/>            </enrich>            <build engine="html" enabled="true" output="html">                <file extension="html"/>            </build>        </generator>    </project></phpdox>


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.