在laravel中用Task Runner编写像Blade组件一样的Shell脚本功能
Laravel  /  管理员 发布于 1年前   368
Task Runner for Laravel是一个由Pascal Baljet开发的软件包,它可以让你编写像Blade Components一样的Shell脚本,并在本地或远程服务器上运行它们:
{{-- 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';
}
}
你可能已经注意到,数据库连接()的公共方法在模板中是可以调用的。
所有的公共方法都可以在任务刀片模板中使用。
如果你想触发上述任务,你可以使用包的 dispatch() 方法,它将在本地运行。
你也可以在后台调度任务,也可以在远程服务器上运行它们:
$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();
这个包也有很好的测试助手,你可以在文档中读到这些。
你可以在GitHub上了解更多关于这个包的信息,获得完整的安装说明,并查看源代码。
https://github.com/protonemedia/laravel-task-runner#task-test-assertions
https://github.com/protonemedia/laravel-task-runner
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号