• Czas czytania ~1 min
  • 17.05.2023

Task Runner for Laravel to pakiet autorstwa Pascala Baljeta, który pozwala pisać skrypty powłoki, takie jak Blade Components i uruchamiać je lokalnie lub na zdalnym serwerze:Biorąc pod uwagę konwencje w tym pakiecie, powyższy szablon miałby towarzyszącą Task klasę:

{{-- resources/views/tasks/deploy-app.blade.php --}}
cd /var/www/html
git pull origin {{ $branch }}
php artisan migrate --database={{ $databaseConnection() }}

use ProtoneMedia\LaravelTaskRunner\Task;

class DeployApp extends Task
{
    public function __construct(public string $branch) { }

    public function databaseConnection()
    {
        return 'mysql';
    }
}

Być może zauważyłeś, że databaseConnection() metoda publiczna jest dostępna jako wywoływana w szablonie. Wszystkie metody publiczne są dostępne w szablonach bloków zadań.

Jeśli chcesz wyzwolić powyższe zadanie, możesz użyć metody pakietudispatch(), która uruchomi go lokalnie. Możesz także wysyłać zadania w tle, a także uruchamiać je na zdalnym serwerze:

$output = DeployApp::dispatch();

$output = DeployApp::inBackgronud()
    ->onConnection('web')
    ->dispatch();

// API of the task result
$output->getBuffer();
$output->getExitCode();
$output->isSuccessful();
$output->isTimeout();
// returns the buffer as an array
$output->getLines();

Ten pakiet ma również doskonałych pomocników testowania, o których możesz przeczytać w dokumentacji. Możesz dowiedzieć się więcej o tym pakiecie, uzyskać pełne instrukcje instalacji i wyświetlić kod źródłowy w witrynie GitHub.You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

O

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

O autorze CrazyBoy49z
WORK EXPERIENCE
Kontakt
Ukraine, Lutsk
+380979856297