This library provides generic ANT build- and deployment targets useful to build libraries for appserver.io.
The targets are mostly used for enabling continous integration with Travis-CI. The following targets are provied out-of-the-box with a default configuration:
- clean (Deletes the directory with the generated artefacts)
- prepare (Prepares the directory to temporarily store generated artefacts)
- copy (Copies the sources to the temporary directory)
- deploy (Copies the sources to the deploy directory)
- pdepend (Runs the PHPDepend tool and generats a graphs)
- phpcpd (Runs the copy and paste detection)
- phpcs (Runs the code sniffer and generates a report)
- phploc (Generate phploc.csv)
- phpmd (Runs the PHP Mess detector tool)
- build (Builds the library)
- run-tests (Runs the PHPUnit tests on Travis-CI and generates a report)
All artefacts that'll be generated during the one of the targets runtime will be stored in a temporarily generated directory.
If you want to install the generic build- and deployment targets to use with your library, you do this by add
{
"require": {
"appserver-io/build": "dev-master"
},
}
to your composer.json
and invoke composer update
in your project.
After installation you can import the XML file delivered with the library into your local ANT build file with:
<?xml version="1.0"?>
<!DOCTYPE project>
<project name="composer/package" basedir=".">
<!-- initialize ENV variable -->
<property environment="env" />
<!-- initialize the library specific properties -->
<property name="codepool" value="vendor"/>
<!-- initialize the directory where we can find the real build files -->
<property name="vendor.dir" value ="${basedir}/${codepool}" />
<property name="build.dir" value="${vendor.dir}/appserver-io/build" />
<!-- ==================================================================== -->
<!-- Import the common build configuration file -->
<!-- ==================================================================== -->
<import file="${build.dir}/common.xml" optional="true"/>
</project>