Download the PHP package zenoware/laravel-sql-dump-validator without Composer
On this page you can find all versions of the php package zenoware/laravel-sql-dump-validator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download zenoware/laravel-sql-dump-validator
More information about zenoware/laravel-sql-dump-validator
Files in zenoware/laravel-sql-dump-validator
Package laravel-sql-dump-validator
Short Description Recursively finds and validates SQL dump (.sql.gz) files inside a directory.
License MIT
Informations about the package laravel-sql-dump-validator
Laravel SQL Dump Validator
This package provides a Laravel command and a service to validate SQL dump files for corruption. It uses the gunzip -t
command to test the integrity of .sql.gz
files.
Installation
Use composer to install the package:
Requirements
The package requires the gunzip
command to be installed on your system. The command is used to test the integrity of .sql.gz
files.
Usage
Command
You can use the provided command to validate SQL dump files. The command accepts a path and an optional depth parameter.
Validating SQL dump files in the storage/app/sqldumps
directory:
Validating SQL dump files in the storage/app/sqldumps
directory with a maximum depth of 3:
The path
argument is the directory where your SQL dump files are located. The --depth
option is the maximum directory depth for the file search.
The command will print the validation results to the console. If a file is corrupted, it will print an error message with the file path and the error details.
On Routes and Jobs
Since the command uses SqlDumpValidatorService
under the hood, you can also listen to events to handle the validation results by just running the command from within a job or a route.
Service
You can also use the SqlDumpValidatorService
directly in your code. The service accepts a path, a depth, and a callback function.
The callback function is called for each file processed. It receives a SqlDumpFileMetadata
object and an array of errors. If the file is OK, the errors array is empty.
Service Provider
The package includes a service provider that registers the SqlDumpValidatorService
and the IFileAdapter
interface with the Laravel service container.
If you want to use a different file adapter, you can bind your own implementation to the IFileAdapter
interface in your own service provider.
Listening to Events
The service used by the command fires an event for each file processed. You can listen/subscribe to events to handle the validation results.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.