hackzilla/doctrine-migration-pruner-bundle

Prune excess doctrine migrations

0.4 2024-10-14 07:39 UTC

This package is auto-updated.

Last update: 2024-12-14 08:01:41 UTC


README

Features

  • Automatically prunes old migration files and their corresponding database entries just before running new Doctrine migrations.
  • Designed to work in production; migration files should be absent, leaving only the database entries to be removed.
  • Handles Doctrine migrations' multiple configurations.
  • Prevents warnings about missing migration files if you manually removed them.

Supported Platforms

  • MySQL
  • Sqlite

Prerequisites

  • Requires Doctrine Migration Bundle.
  • Tested on Symfony 6, but should work wherever Doctrine Migrations Bundle v3.* is compatible.

Installation

To install the Doctrine Migration Pruner Bundle, you can use composer:

composer require hackzilla/doctrine-migration-pruner-bundle

Configuration

Add the following to your application's config:

hackzilla_doctrine_migration_pruner:
  remove_migrations_before: '2007-05-01'  # Can be null or a valid date-time

It's advisable to start with an earlier date-time.

Usage

Run your Doctrine migrations as you normally would:

bin/console doctrine:migrations:migrate

Note: The pruning operation will not execute if the --dry-run option has been specified.

Testing

There are currently no tests available.

However, you can use Doctrine Migration Pruner Repo to test the migration pruning.

Contributions and Issues

See all contributors on GitHub.

Please report issues using GitHub's issue tracker: GitHub Repo

If you find this project useful, consider buying me a coffee.

License

This bundle is released under the MIT license. See the LICENSE file for details.