mennen-online / laravel-queue-watcher
Automatically restart Queue when local PHP files change
Installs: 2 304
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 2
Open Issues: 0
Requires
- php: ^8.1
- illuminate/contracts: ^9.0|^10.0|^11.0
- spatie/file-system-watcher: ^1.1.1
- spatie/laravel-package-tools: ^1.13.6
Requires (Dev)
- laravel/pint: ^1.2
- nunomaduro/collision: ^6.3.1
- orchestra/testbench: ^7.11
- pestphp/pest: ^1.22.1
- pestphp/pest-plugin-laravel: ^1.3
- phpunit/phpunit: ^9.5.26
- spatie/laravel-ray: ^1.31
README
Inspired by spatie/laravel-horizon-watcher, this package contains Artisan Command queue:watch
that will start the default Queue worker and automatically restart it
when any PHP file is created, updated or deleted.
Also you can provide the --queue=
option to define another queue than default to be watched.
To disable Job and Queue Timeout, use the --timeout=
option with value 0.
This command is meant to be used in local environment.
Installation
You can install the package via composer:
composer require mennen-online/laravel-queue-watcher --dev
This is the contents of the published config file:
return [ /* * Laravel Queue will be restarted when any PHP file inside these directories * get created, updated or deleted. You can also specify other kinds * of files here. */ 'paths' => [ app_path(), config_path(), database_path(), resource_path('views'), base_path('.env'), base_path('composer.lock'), ], /* * This command will be executed to start Laravel Queue. */ 'command' => 'php artisan queue:work', ];
Usage
Run php artisan queue:watch
to start default queue. When a PHP file in your project gets created, updated or deleted, Queue will automatically restart.
Run php artisan queue:watch --queue=another_queue
to start another_queue and restart it automatically.
Run php artisan queue:watch --timeout=0
to disable queue worker timeout.
Testing
composer test
Credits
- Freek Van der Herten for the inspiration for this Package
License
The MIT License (MIT). Please see License File for more information.