triaubaral/phaster

Collection of meta tasks based on phing in order to make your build process easy.

0.1.0-alpha 2019-01-01 14:48 UTC

This package is auto-updated.

Last update: 2024-04-29 03:47:20 UTC


README

Collection of meta tasks based on phing in order to make your build process easy.

Installation

The installation of phaster is a two steps process. First you install phaster with composer then your need to execute a custom phing script.

  1. Composer

The preferred method to install Phaster is through [Composer](https://getcomposer.org/). Add [triaubaral/phaster](https://packagist.org/packages/triaubaral/phaster) to the require-dev or require section of your project’s composer.json configuration file, and run 'composer install':

 {
	"require-dev": {
		 "phing/phing": "^2.16"
		 "triaubaral/phaster": "@dev"
	 }
  }
  1. Custom Phing Script

Copy/paste the following command in your terminal

./vendor/bin/phing -f vendor/triaubaral/phaster/build.xml phaster:install -Dprofil=dev
Important

The -Dprofil accepted values are : dev, qualif or prod

It installs into src/resources/phaster a directory tree contening all meta tasks It installs into the directory where the preceding command has been done a build.xml file

Check your installation

The command :

 ./vendor/bin/phing -l

will give the following output for the dev profil :

Collection of meta task based on phing in order to make your build process easy
Default target:
-------------------------------------------------------------------------------
 phaster:props

Main targets:
-------------------------------------------------------------------------------
 00:source:prepare   Clean working dir
 01:source:clone     Copy source and test dir to a build dir
 02:source:resolve   Resolve source dependencies
 03:source:compile   Compile source code
 04:source:score     Analyse source and test written quality
 05:source:test      Execute unit tests
 06:source:track     Deploy source code
 07:source:package   Transform source code into binary format
 08:binary:deploy    Deploy binary
 09:binary:resolve   Current build's external dependencies installation to make the app to run
 10:binary:host      Current build installation on specific infrastructure
 11:binary:test      Execute functionnal tests
 12:binary:score     Execute performance tests

How it works !

As mentionned above those tasks are meta !! You have to implement them in order to feet your current build need. They are only the representation of what I consider a quality build.