A Tool for automated framework shifts.
-
Made changes are not safe and may break some code, but in general if following best practices it should work fine.
-
If using this tool, please have backups in git as well as test coverage.
-
You will still have to make some changes manually depending on the project.
Migrates mainly config and currently only for specific projects with codeception tests. Requires to fix custom defined configs and other specific Lumen to Laravel changes
Updates with changes from Laravels documentation
Updates with changes from Laravels documentation, adds config file updates, Gelf and Monolog updates
Is specialized to replace phiremock. Shifts most of the tests, yet can break some stuff. Requires that ApiTester is named as I and for Git to be available at the project directory.
Here are a list of most rules for runs. Check and see their rule definitions in corresponding classes.
Commands for launching migrations
Migration | Command |
---|---|
Lumen8 - Laravel8 | php artisan shift:Lumen8tolaravel8 |
Laravel8 - Laravel 9 | php artisan shift:Laravel8ToLaravel9 |
Laravel 9 - Laravel 10 | php artisan shift:Laravel9ToLaravel10 |
Codeception - Laravel Feature tests | php artisan shift:CodeceptionToLaravel |
- Pull
shift-slay
locally - Edit
.env
file- Set
SHIFT_PROJECT_PATH
to the projects You want to upgrade../web
path.
- Set
- Launch migration
Currently, shift doesn't support backup files, if using any of the migrations, please be sure that there is a backup project (version control or locally).
For now to run migration again, it is required to manually reset project to original state.