Download the PHP package djl997/laravel-release-scheduler without Composer
On this page you can find all versions of the php package djl997/laravel-release-scheduler. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download djl997/laravel-release-scheduler
More information about djl997/laravel-release-scheduler
Files in djl997/laravel-release-scheduler
Package laravel-release-scheduler
Short Description Package to manage application version, schedule maintenance, version changelog and maintenance mode.
License MIT
Informations about the package laravel-release-scheduler
Laravel Maintenance Scheduler
Laravel Maintenance Scheduler is a package to manage your application versions, schedule maintenance, generate changelog and make maintenance mode more user friendly. The goal is to inform end-users about the maintenance schedule and version changes. This package will not manage automated releases and/or run release scripts and/or automatically publish generated changelogs.
Features
- Generate scheduled human readable maintenance messages.
- Generate minor or patch version numbers, with one PHP Artisan Command.
- Generate changelog (Semantic Versioning)
- Automatically hook into
php artisan down
andphp artisan up
- If no maintenance moments are scheduled, it will create and activate an unscheduled maintenance moment automatically.
Roadmap
Here is a rough roadmap of things to come (not in any specific order):
- [ ] Generate changelog.md file
- [ ] Create cancel command
- [x] Improve setup
- [x] Connect recalculation to initial version
- [x] Configure initial version
- [x] Add current version to app layout (+how to)
- [x] Configure first version
- [x] Translations (EN, NL, DE)
Requirements
Laravel Maintenance Scheduler requires PHP 8+ and Laravel 8+.
Installation
You can use this package in your project via composer:
Light version
In the light version, you don't need any database tables. Just configure the version via the config/maintenance-scheduler.php
config file:
Full version
Publish migration files:
Migrate the required database table maintenance_schedule
:
Install first version.
Usage
Note! This package is still in development. You are welcome to use this package, but major changes in API can happen. No promises.
Commands:
Enable Maintenance Mode:
To activate maintenance mode, run the default Laravel command php artisan down
. Laravel Maintenance Scheduler will search for scheduled maintenances scoped to that date and activate them. Note if no maintenances were scheduled, there will automatically be an unscheduled maintenance created and activated.
Disable Maintenance Mode:
To deactivate maintenance mode, run php artisan up
. Laravel Maintenance Scheduler will complete the active maintenance and make it available for a changelog. You can copy-paste this for example to Github.
Show maintenance message:
Show current version:
The value is cached in Laravel Cache to prevent unnecessary queries to the database. If the incorrect version is showed you can try to run php artisan cache:clear
or php artisan optimize:clear
and check if it will work after that.
Custom Configuration
If you want to change the default config you can publish the config file:
After editting the config file, please run php artisan maintenance:recalculate
. All versions should be updated to your new structure.
Events
Laravel Maintenance Scheduler doesn't dispatch it's own events. In stead we hook into the default Laravel Artisan Events: MaintenanceModeEnabled
and MaintenanceModeDisabled
. Of course you can do this too.
In addition, you can observe the MaintenanceSchedule model in your application's App\Providers\EventServiceProvider
class:
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
This package is in active development, ideas or improvements are welcome.
License
The MIT License (MIT). Please see License File for more information.