Утилита taskman является аналогом ant, pake, etc и предназначен для выполнения абстрактных «задач». Задачей является функция PHP, начинающаяся со символов task_.
Описание, зависимости и прочие свойства задачи описываются с помощью PHPDoc. Поддерживаются следующие свойства:
<?php require_once(dirname(__FILE__) . '/../taskman.inc.php'); taskman_run(); /** * @desc Do something * @deps prepare_something * @default * @alias main */ function task_something($args) { taskman_sysmsg(taskman_prop('FOO', 'default value').PHP_EOL); } /** * @desc Do before something */ function task_prepare_something(){} /** * @always * @desc Init */ function task_global_init(){} /** * @before prepare_something */ function task_do_before_prepare(){} /** * @after prepare_something */ function task_do_after_prepare(){}
Результат работы:
$ php ./something.php -D FOO=bar Setting prop FOO=bar ************************ Running task 'global_init' ************************ ************************* 'global_init' done (0 sec.)************************* ************************ Running task 'do_before_prepare' ************************ ************************* 'do_before_prepare' done (0 sec.)************************* ************************ Running task 'prepare_something' ************************ ************************ Running task 'do_after_prepare' ************************ ************************* 'do_after_prepare' done (0 sec.)************************* ************************* 'prepare_something' done (0 sec.)************************* ************************ Running task 'something' ************************ bar ************************* 'something' done (0 sec.)************************* ************************ All done (0.01 sec.)************************
Обсуждение