Tarefas automatizadas com robô

Robô
SuiteCRM utiliza tarefas Robô para fornecer automação para tarefas comuns.

Listando as tarefas automatizadas disponíveis no Robô

 

Linux:

Abra o terminal bash e execute o robô
./vendor/bin/robo list

Você obtém ajuda para cada tarefa usando:
./vendor/bin/robo [nome da tarefa] -h

 

Janelas:

Abra o prompt de comando e execute o robô
. \ vendor \ bin \ lista robo

Você pode obter ajuda para cada tarefa usando:
. \ vendor \ bin \ robo [nome da tarefa] -h

 

Fazendo suas próprias tarefas Robô personalizadas
Você pode criar comandos personalizados para SuiteCRM no diretório / lib / Robô / Plugin / Commands / customizado. Por exemplo, você pode ter um arquivo chamado custom / lib / Robô / Plugin / Commands / DeployCommands.php com algumas tarefas personalizadas para implantar o SuiteCRM.

Você pode usar qualquer função do Robô dentro da tarefa, consulte a documentação do Robô para obter mais informações sobre o que o Robô oferece.

Você também pode usar as várias funções de script do PHP, como exec.

Aqui está um exemplo de tarefa Robô:

<?php
 namespace SuiteCRM\Custom\Robo\Plugin\Commands;
 use Robo\Task\Base\loadTasks;
 class DeployCommands extends \Robo\Tasks
 {
     use loadTasks;
/**  * This Robo task will deploy a given git branch.  *  * @param array $opts  * @option $branch The branch to deploy, e.g. master, development, etc.  * @usage deploy --branch=master  */ public function deploy(array $opts = ['branch' => 'master']) {     // You can print to stdout with $this->say     $this->say("Hello, world.");     // Or get values from the user with $this->ask     $name = $this->ask("What is your name?");     // Run arbitrary shell commands, e.g. git.     $this->_exec("git fetch");     // You can fail the task at any time with a RuntimeException.     $check = true;     if ($check !== true) {         throw new \RuntimeException("Unable to continue, check failed!");     }     // You can also use Symfony Console's io methods to provide better styling for your Robo tasks.     $checkedFiles = ['file.txt', 'file2.txt'];     $this->io()->section("{count($checkedFiles)} checked files");     $this->io()->listing($checkedFiles);     // Or use the io methods to show success or error messages.     $this->io->success('Success!');     $this->io->error('Failed!');     // Read more about Symfony Console in the documentation:     // https://symfony.com/doc/current/console/style.html } }

Como mencionado acima, você pode usar ./vendor/bin/robo list para listar todos os comandos Robô disponíveis, incluindo suas tarefas personalizadas. Você pode precisar executar composer install para ter certeza de que Composer instalou Robô, e você também precisará executar composer dump-autoload ao adicionar uma nova tarefa Robô para ter certeza de que Composer pega os novos arquivos.