Web BizarroWeb Bizarro

Suscríbete a nuestro Newsletter

X

Únete a nuestra lista de correos para recibir semanalmente actualizaciones de nuestro contenido.

Robo un task runner para PHP

Robo un task runner para PHP 20.AUG.15

Alvaro José Rios Ch
Fundador WebBizarro

Leyendo un par de artículos por internet conseguí uno que me llamó mucho la atención, decía mira mamá sin NodeJS y hablaba sobre herramientas que nos ayudan a agilizar tareas que no necesitan de NodeJS instalado, esto en el caso donde trabajemos con entornos restringidos donde no podemos instalar herramientas a nuestro antojo, créanme la mayoría de las empresas grandes son así, en fin entre ellas una me llamó mucho la atención así que decidí darle un vistazo rápido y contarles mi opinión.

Robo es un task runner que se ejecuta con PHP por lo que puedes automatizar muchas tareas repetitivas y trabajar de una forma más eficiente. Todas las tareas debes programarlas basadas en el paradigma Orientado a Objetos y puede ser usado para tareas de desarrollo, pruebas y deploy de aplicaciones.

Claro que puedes usarlo para ejecutar tareas en proyectos escritos en cualquier lenguaje pero la herramienta ejecuta código PHP por lo que debes conocer el lenguaje.

Puedes instalarlo por medio de composer o Phar, otra cosa que debes saber es que tienes que estar relacionado con el uso de la consola ya que los comandos por medio de esta herramienta.

Para comenzar solo debes ejecutar robo en un directorio vacío y se creara un archivo donde puedes comenzar a programar tus tareas que se debe ver más o menos así.

<?php
    class RoboFile extends \Robo\Tasks
    
    {
    
    }
?>

Todos los métodos públicos serán tratados como comandos que puedes ejecutar en la consola, así que podemos crear algo así.

<?php
    class RoboFile extends \Robo\Tasks {
        function hello($world) {
            $this->say("Hello, $world");
        }
    }
?>

Entonces podemos ejecutar el comando de esta manera

robo hello davert
-> Hello, davert

Programar tareas es un poco más laborioso pero para nada difícil ya que la herramienta cuenta con muchos helpers y una buena documentación que nos hace las tareas más simples.

Dentro de las cosas que puedes hacer están, ejecutar comandos remotos mediante SSH, sincronizar archivos por rsync, subir cambios a github, iniciar o detener el servidor de pruebas de php, ejecutar pruebas unitarias, observar los archivos para ejecutar tareas al detectar un cambio, por ejemplo limpiar el cache de la aplicación, compilar archivos LESS o minificar CSS y JS y muchas cosas más.

Una herramienta muy completa que de seguro le ayudará a más de uno a acelerar el proceso de desarrollo y les hará la vida más feliz ya que les aseguro que hay alguna tarea que ejecutan de forma manual que se pudiera ejecutar en segundo plano sin que ustedes tengan que preocuparse.