orisintel / laravel-migration-snapshot
Dump and load snapshots of the schema produced by individual migrations.
Installs: 80 353
Dependents: 0
Suggesters: 0
Security: 0
Stars: 177
Watchers: 5
Forks: 11
Open Issues: 5
pkg:composer/orisintel/laravel-migration-snapshot
Requires
- php: ^7.3
- laravel/framework: ^8.0
Requires (Dev)
- mockery/mockery: ~1.0
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
Simplify and accelerate applying many migrations at once using a flattened dump
of the database schema and migrations, similar in spirit to Rails' schema.rb.
Works with the mysql, pgsql, and sqlite database drivers.
Installation
You can install the package via composer:
composer require --dev orisintel/laravel-migration-snapshot
Database command-line utilities (such as mysqldump and mysql) must be in the
path where Artisan will be run.
Configuration
Put migration-snapshot.php into config with:
php artisan vendor:publish --provider="\OrisIntel\MigrationSnapshot\ServiceProvider"
Usage
Implicitly migrate as load from an earlier, flattened copy:
php artisan migrate
(When migrations table is empty and migrating a configured environment;
defaults to 'development', 'local', and 'testing'.)
Migrate without loading from, or dumping to, flattened copy:
MIGRATION_SNAPSHOT=0 php artisan migrate
Update the flattened SQL file:
php artisan migrate:dump
Load from the flattened SQL file, dropping any existing tables and views:
php artisan migrate:load
Testing
composer test
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email opensource@orisintel.com instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.