elnebuloso / phing-commons
phing commons build stack
Requires
- php: ^5.6 || ^7.0
- abraham/twitteroauth: 0.7.1
- apigen/apigen: 4.1.2
- cakephp/cakephp-codesniffer: 2.1.5
- elnebuloso/bundler: ~9.0
- escapestudios/symfony2-coding-standard: 2.9.1
- pdepend/pdepend: 2.3.2
- pear/archive_tar: 1.4.2
- phing/phing: 2.11.0
- phploc/phploc: 3.0.1
- phpmd/phpmd: 2.5.0
- phpunit/phpunit: 4.8.27
- sebastian/phpcpd: 2.0.4
- squizlabs/php_codesniffer: 2.7.0
- dev-master
- 9.4.0
- 9.3.3
- 9.3.2
- 9.3.1
- 9.3.0
- 9.2.0
- 9.1.0
- 9.0.0
- 8.11.0
- 8.10.0
- 8.9.1
- 8.8.2
- 8.8.1
- 8.8.0
- 8.7.0
- 8.6.2
- 8.6.1
- 8.6.0
- 8.5.0
- 8.4.0
- 8.3.2
- 8.3.1
- 8.3.0
- 8.2.0
- 8.1.0
- 8.0.3
- 8.0.2
- 8.0.1
- 8.0.0
- 7.0.2
- 7.0.1
- 7.0.0
- 6.8.2
- 6.8.1
- 6.8.0
- 6.7.0
- 6.6.6
- 6.6.5
- 6.6.4
- 6.6.3
- 6.6.2
- 6.6.1
- 6.6.0
- 6.4.0
- 6.3.0
- 6.2.0
- 6.1.0
- 6.0.2
This package is not auto-updated.
Last update: 2022-02-01 12:22:24 UTC
README
About
This is a full delivered build stack using PHING as Build Tool. The Phing Commons Build Stack gives you pre-defined Targets which you can configure through a build.properties file.
Installation
composer create-project elnebuloso/phing-commons /path/to/your/phing-commons-installation
Usage
Create build.xml file in your project root with the following content. To use the Phing Commons, just call /path/to/your/phing-commons-installation/bin/phing
<?xml version="1.0" encoding="UTF-8"?> <project basedir="." default="help"> <!-- ============================================ --> <!-- import phing commons --> <!-- ============================================ --> <import file="${phing.home}/../../../commons/commons.xml" /> </project>
Configuration
If you want to configure the common targets, use a build.properties file to your project root. For local additions or local behaviors add a build.properties.local file. This is an optional file. For global additions add /[home]/phing-commons/build.properties file. This is an optional file. But don't commit build.properties.local to your VCS.
The build.properties files are optional and are loaded when available.
Build Chain
Each called step calls the previous defined step. If running phing init, init calls the clean before. If running phing build, build calls the complete chain.
- build:before
- clean:before
- clean:main
- clean:after
- clean
- init:before
- init:main
- init:after
- init
- test:before
- test:main
- test:after
- test
- bundle:before
- bundle:main
- bundle:after
- bundle
- package:before
- package:main
- package:after
- package
- deploy:before
- deploy:main
- deploy:after
- deploy
- build:main
- build:after
- build
Manipulate the Chain
To manipulate the steps, you have the possibility to overwrite each step in your xml, just like this.
<target name="test:main" hidden="true" depends="test.phplint, test.phpunit" />
If you want to use predefined chains by phing-commons you can add this as a list to the property: project.chains Separate the chains by ","
- project.chains = php-composer-package
- project.chains = foo,bar,baz
default Chain
In chain, clean:main calls:
- clean.tmp:init
- clean.tmp:before
- clean.tmp:main
- clean.tmp:after
- clean.tmp
php-composer-package Chain
In chain, init:main calls:
- composer.validate:init
- composer.validate:before
- composer.validate:main
- composer.validate:after
- composer.validate
- composer.update:init
- composer.update:before
- composer.update:main
- composer.update:after
- composer.update
In the default chain, test:main calls:
- test.phplint:init
- test.phplint:before
- test.phplint:main
- test.phplint:after
- test.phplint
- test.phpunit:init
- test.phpunit:before
- test.phpunit:main
- test.phpunit:after
- test.phpunit