Download the PHP package aymdev/fregata-bundle without Composer
On this page you can find all versions of the php package aymdev/fregata-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download aymdev/fregata-bundle
More information about aymdev/fregata-bundle
Files in aymdev/fregata-bundle
Package fregata-bundle
Short Description Symfony bundle for the Fregata migration framework.
License MIT
Informations about the package fregata-bundle
Fregata Bundle
Symfony bundle for the Fregata data migration framework. Provides an UI and executes migrations asynchronously using the Messenger component.
Documentation:
- Requirements
- Installation
- Doctrine entities
- Messenger transport
- User interface
- User interface overview
- Main pages
- Run list
- Run details
- Starting a migration
Requirements
This bundle requires PHP >= 8.1 and a Symfony 4.4 or 5 application. Note that as it uses a database, it will install the Doctrine bundle.
If you are not familiar with Fregata's features, make sure to read its documentation.
Installation
Install with Composer:
Doctrine entities
Then you will need to create the database tables for the provided entities (3 entities + a ManyToMany relation). You can do this how you want.
Suggestion: My preferred way to use database migrations is by using the MakerBundle and its
make:migration
command followed by Doctrine'sdoctrine:migrations:migrate
command.
Messenger transport
As the main work of the bundle happens in Messenger components, you need to route the provided messages to a transport of your choice. Example config/packages/messenger.yaml:
User interface
To enable the user interface, import the routes by creating a config/routes/fregata.yaml file:
Change the
prefix
to anything you want, or remove it if you want to set the Fregata dashboard at the root of your app.
You can then reach the dashboard at /fregata
.
User interface overview
Main pages
The dashboard lists the current migration runs, or the last one if nothing is running. The migrations page lists the currently configured migrations with a link to a dedicated page to get a quick overview with the list of components and the run history of a specific migration. The complete run history is on a separated page.
Run list
The table shown here is used in multiple pages of the user interface and contains:
- the id of the migration run
- the name of the migration with a link to the details page
- the status tag
- the time stats: start time, end time and duration
- the number of components
- a link to the run details
Run details
The same informations can be found on the run details: A cancel button is shown in the top right corner as long as the migration is running. The run is divided on 3 steps with tabs:
- Before tasks
- Migrators
- After tasks
Each tab shows a progress bar and its associated components. The migrators are sorted according to their dependencies from left to right.
Starting a migration
You can start a migration from the user interface by clicking the "New run" button in the menu.
Alternatively, the fregata:migration:execute
console command is available:
You should then see the run on the user interface.
If you want to run a migration as in the Fregata framework, without Messenger, you can add the --synchronous
option.
Warning: by doing so, the migration runs in the foreground, doesn't use the database and can't show on the UI.
All versions of fregata-bundle with dependencies
aymdev/fregata Version ^1.1.0
symfony/http-kernel Version ^4.4||^5.0
symfony/dependency-injection Version ^4.4||^5.0
symfony/config Version ^4.4||^5.0
symfony/framework-bundle Version ^4.4||^5.0
doctrine/doctrine-bundle Version ^2.4
doctrine/orm Version ^2.11
symfony/messenger Version ^4.4||^5.0
symfony/asset Version ^4.4||^5.0
symfony/form Version ^4.4||^5.0
symfony/validator Version ^4.4||^5.0
symfony/security-csrf Version ^4.4||^5.0