cycle / schema-migrations-generator
Cycle ORM Migration generation
Installs: 160 628
Dependents: 18
Suggesters: 2
Security: 0
Stars: 2
Watchers: 3
Forks: 4
Open Issues: 2
Requires
- php: >=8.1
- cycle/database: ^2.11.3
- cycle/migrations: ^4.2.4
- cycle/schema-builder: ^2.11.1
Requires (Dev)
- cycle/annotated: ^3.5
- cycle/orm: ^2.9.1
- phpunit/phpunit: ^9.6.22
- spiral/code-style: ^2.2.0
- spiral/dumper: ^3.3.1
- spiral/framework: ^3.14.8
- vimeo/psalm: ^5.26.1
README
By migration generator package you can automatically generate a set of migration files for Cycle ORM during schema compilation. In this case, you have the freedom to alter such migrations manually before running them.
Installation
composer require cycle/schema-migrations-generator
Configuration
use Cycle\Migrations; use Cycle\Schema\Registry; use Cycle\Schema\Definition\Entity; use Cycle\Database; use Cycle\Database\Config; use Cycle\Schema\Generator\Migrations\GenerateMigrations; $dbal = new Database\DatabaseManager(new Config\DatabaseConfig([ 'default' => 'default', 'databases' => [ 'default' => [ 'connection' => 'sqlite' ] ], 'connections' => [ 'sqlite' => new Config\SQLiteDriverConfig( connection: new Config\SQLite\MemoryConnectionConfig(), queryCache: true, ), ] ])); $migrator = new Migrations\Migrator( $config, $dbal, new Migrations\FileRepository($config) ); $registry = new Registry($dbal); $registry->register(....); $generator = new GenerateMigrations( $migrator->getRepository(), $migrator->getConfig() );
Running
Migration generator creates set of migrations needed to sync database schema with desired state. Each database will receive its own migration.
$generator->run($registry);
License:
The MIT License (MIT). Please see LICENSE
for more information. Maintained
by Spiral Scout.