dubpub/robo-reset

此软件包的最新版本(dev-master)没有可用的许可证信息。

用于重置RoboFile的特性。

dev-master 2015-10-05 12:11 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:52:48 UTC


README

#Dubpub: RoboReset

Build Status Code Climate Coverage Status

dubpub/robo-resetcodegyro/robo软件包的扩展。它允许您重启您的robo进程。

####内容

##安装

您可以使用composer安装dubpub/robo-reset

    "require": {
        "dubpub/robo-reset": "dev-master"
    }

或从shell中安装

composer require dubpub/robo-reset

##用法

您可以使用dubpub/robo-reset,从由软件包提供的特性Dubpub\RoboReset\RoboResetTrait

<?php // file - ./RoboFile.php

include_once 'vendor/autoload.php'

class RoboFile extends \Robo\Tasks
{
    use Dubpub\RoboReset\RoboResetTrait;
}

或者,您可以通过扩展\Dubpub\RoboReset\RoboRestartable(它扩展了\Robo\Tasks)来使用dubpub/robo-reset

<?php // file - ./RoboFile.php

include_once 'vendor/autoload.php'

class RoboFile extends \Dubpub\RoboReset\RoboRestartable
{

}

##示例

使用示例中最简单的方法是监控您的composer.json文件更改 - 如果您的composer.json文件已更改,则需要转储自动加载器并使用新的自动加载器重启您的RoboFile

<?php // file - ./RoboFile.php

include_once 'vendor/autoload.php'

class RoboFile extends \Robo\Tasks
{
    use Dubpub\RoboReset\RoboResetTrait;
    
    public function watchComposer() 
    {
        $this->taskWatch('composer.json', function () {
            if ($this->taskComposerDumpAutoload()->run()->wasSuccessful()) {
                /**
                * Reset robo and output reason-message(optional)
                **/
                $this->resetRobo('Dumped autoloader');
            }
        })->run();
    }
}

或者,您也可以在RoboFile每次被修改时重启它

<?php // file - ./RoboFile.php

include_once 'vendor/autoload.php';

class RoboFile extends \Robo\Tasks
{
    use Dubpub\RoboReset\RoboResetTrait;

    public function watch()
    {
        /**
         * This method binds a listener on RoboFile.
         * If RoboFile was modified and it's code passes
         * standart php lint checks the robo process will be
         * restarted.
         *
         * Method returns an instance of \Robo\Task\Base\Watch
         *
         * @var \Robo\Task\Base\Watch $taskWatch
         */
        $taskWatch = $this->restartOnRoboChange();

        $taskWatch->monitor(['composer.json'], function () {
            if ($this->taskComposerDumpAutoload()->run()->wasSuccessful()) {
                /**
                 * Reset robo and output reason-message(optional)
                 **/
                $this->resetRobo('Dumped autoloader');
            }
        });

        $taskWatch->run();
    }
}