mmic / platform-cache-scrubber
Clears Laravel and Platform caches, on-demand
Installs: 225
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 4
Forks: 0
Open Issues: 0
Type:platform-extension
Requires
- php: >=5.6.4
- cartalyst/composer-installers: ^2.0
- cartalyst/support: ^2.0
- platform/foundation: ~6.0
This package is not auto-updated.
Last update: 2024-11-23 20:53:23 UTC
README
Modern frameworks utilize caching extensively, which can lead to unexpected behavior during routine development activities.
Laravel includes an Artisan command that clears the "application cache", but there are several other caches, some of which are specific to Laravel, and some of which are specific to Platform, that are not cleared.
This simple extension adds a new Artisan command, cache:scrub
, which empties any number of caches that are defined in the extension's configuration file.
Installation
Run the following terminal command, from within the project root:
composer require mmic/platform-cache-scrubber
Next, log into Platform, navigate to Operations -> Extensions, locate the Cache Scrubber
extension, and click Install
(at top right), and then click Enable
(also at top right).
Finally, publish the configuration file:
php artisan vendor:publish
The configuration file is published to the following location, relative to the project root:
config/mmic.cache-scrubber.paths.php
Usage
To clear all caches, simply issue the following command on the terminal, from within the project root:
php artisan cache:scrub
Configuration
Adding a new/custom cache is as easy as editing the configuration file, config/mmic.cache-scrubber.paths.php
.
All of Laravel and Platform's caches are configured to be cleared, by default:
<?php
return [
'assets' => [
'driver' => 'local',
'root' => realpath(public_path('cache/assets')),
],
'cache' => [
'driver' => 'local',
'root' => realpath(storage_path('framework/cache')),
],
'sessions' => [
'driver' => 'local',
'root' => realpath(storage_path('framework/sessions')),
],
'views' => [
'driver' => 'local',
'root' => realpath(storage_path('framework/views')),
],
];
Simply add a new element that defines the driver and filesystem path to this array, and the Cache Scrubber will empty the directory when called.
Misc. Notes
As of this writing, .gitignore
and .gitkeep
files are not deleted when caches are cleared. In the near future, a more robust "mask" will be added that allows for further customization in this regard.
Contributing
Feel free to submit Pull Requests!