Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Migration Bundle

Migration Bundle Laravel Package

okvpn/migration-bundle

A Symfony bundle for managing database migrations through configurable paths and console commands. It helps teams version schema changes, apply them consistently across environments, and keep migration workflows organized in PHP applications.

View on GitHub
Deep Wiki
Context7

:fork_and_knife: Symfony doctrine migration bundle

Frequently asked questions about Migration Bundle
Is okvpn/migration-bundle compatible with Laravel applications?
No. okvpn/migration-bundle is a Symfony bundle, distributed as okvpn/migration-bundle, that is registered through Symfony's kernel and bundle system rather than Laravel's service container. It exposes its functionality through Symfony console commands, not Artisan commands, so there is no auto-discovery path for Laravel. If you are building a Laravel application you should treat this package as out of scope and use Laravel's native migration system instead.
How do I install okvpn/migration-bundle?
Install it with Composer using composer require okvpn/migration-bundle, then register the bundle in your Symfony application's bundle configuration (bundles.php in Symfony Flex projects, or AppKernel for older skeletons). After registration you can expose the migration paths through the bundle's configuration and use its console commands. Because this is a Symfony bundle, installation inside a Laravel app will not wire anything up automatically.
What does okvpn/migration-bundle actually do?
It is a Symfony wrapper around Doctrine migrations that lets you manage database schema changes through configurable migration paths and console commands. The goal is to help teams version schema changes, apply them consistently across environments, and keep migration files organized. It does not replace Doctrine's migration engine; it organizes and exposes it inside a Symfony application.
How do I configure migration paths with okvpn/migration-bundle?
Migration locations are declared in the bundle's configuration rather than hard-coded, which is the main reason teams adopt it over a bare Doctrine setup. You point the configuration at one or more directories and the bundle's commands resolve migrations from those paths. This lets you keep application migrations and reusable bundle or package migrations in separate folders. Check the bundle's README and configuration reference for the exact key names, since the excerpt available here does not list them.
Can I use okvpn/migration-bundle in a Laravel project alongside artisan migrate?
Practically, no. Laravel's migrator is driven by the illuminate/database schema builder and Artisan, while this bundle is driven by Symfony's kernel and Doctrine's migration layer, so the two do not share a registry or a migration table. Running both would give you two independent migration histories against the same database and no coordination between them. If you need Doctrine-style migrations in Laravel you would have to wire doctrine/migrations manually with a custom service provider rather than reuse a Symfony bundle.
What should Laravel developers use instead for versioned schema changes?
Laravel ships with a complete migration system: generate files with php artisan make:migration, apply them with php artisan migrate, and roll them back with php artisan migrate:rollback. For schema introspection and column-change support, add doctrine/dbal. If you specifically want Doctrine's migration tooling inside Laravel, use doctrine/migrations directly with a custom integration rather than a Symfony bundle. This package is the right choice only when the host application is Symfony.
Which Symfony and PHP versions does okvpn/migration-bundle support?
The exact constraints are defined in the package's composer.json, and you should read them before adopting it rather than relying on documentation summaries. Run composer why-not okvpn/migration-bundle against your application to surface conflicts with your Symfony and Doctrine versions early. Because the bundle depends on both the Symfony framework and Doctrine migrations, version alignment across all three is the usual source of installation friction.
How do I run migrations in CI/CD or production with okvpn/migration-bundle?
Deployments run the bundle's console commands rather than Artisan equivalents, so your pipeline steps need to invoke Symfony console with the appropriate migration command and environment flag. Run the same commands locally first so the generated SQL and migration ordering are validated before they touch production. As with any migration tool, back up the database and make destructive changes reversible before automating the step in a deploy script.
Is okvpn/migration-bundle actively maintained and safe for production?
That cannot be confirmed from the information available here, since the README excerpt is empty and the evaluation notes explicitly flag the package's constraints and test coverage as inferred rather than verified. Before adopting it, check the repository's release tags, CHANGELOG, commit cadence, and open issue count, and look at the CI matrix for supported PHP and Symfony versions. If maintenance looks thin, plan an internal fallback: the bundle is a thin layer over Doctrine migrations, so replacing it with a small custom integration is feasible.
What are the alternatives to okvpn/migration-bundle?
For Symfony projects the closest alternatives are doctrine/doctrine-migrations-bundle, which is the standard Doctrine integration, and the underlying doctrine/migrations library wired manually. For Laravel projects the alternatives are Laravel's own migrations, or Phinx and similar standalone tools if you want database-agnostic migrations outside the framework. Compare them on whether they support multiple migration paths, since that is the specific capability this bundle is built around.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect