SeAT 2.0 to 3.0¶
The upgrade path from SeAT 2.x to SeAT 3.0 requires some manual work. This is mainly due to the number of fundamental database changes that were made in SeAT 3.x.
Notes on the upgrade¶
Most of the database has been revamped to match ESI models. Therefore, we can't offer you a simple update as we do for minor patches. However, once migrated, updates can be done as per usual.
The process described bellow handles data conversion between the SeAT 2.x structure and SeAT 3.x one.
Requirements¶
- Check SeAT 3.0 Requirements
- A database backup is an absolute must. Everything in SeAT can be recovered is some way or form except for your database. Make 100% sure you backed this up before proceeding with the upgrade!
- Enough storage space to contains SeAT 2, SeAT 3, a backup of SeAT 2 database and a backup of SeAT 3 database.
- Take note of where SeAT 2 is installed. This is usually in
/var/www/seat
.
Upgrade procedure¶
Preparation¶
If users are using your SeAT instance, or the workers are churning away in the background, then you may risk losing some information (although unlikely). Its therefore recommended that you start by putting SeAT into maintenance mode before starting the upgrade. Do this by running the following command in your SeAT path.
If you are running this migration after CCP killed the XML API then there is probably no risk of the updaters doing anything useful anyways :D
Backups¶
- Make a backup of your SeAT database and store it somewhere safe! Do not skip this step!
- In your SeAT directory, make a copy of the
.env
file. This file contains all of your SeAT configuration. These values may be useful in case of failure.
Installing SeAT 3.0¶
Rename the current SeAT directory from /var/www/seat
to /var/www/seat2
.
You don't have to update any config since we will only use the command line for the process.
mv /var/www/seat /var/www/seat2
Follow standard installation instructions for SeAT 3.0.
Warning
You need to keep the current SeAT 2.0 installed in order to migrate data to a newly installed 3.0 instance. It doesn't have to be reachable from internet though since we will only use the command line for the process.
Installing the migrator package on SeAT 2.0¶
- Move to your SeAT 2.0 installation directory (should be
/var/www/seat2
- unless you changed it) - Add the package called
seat-migrator
usingcomposer require warlof/seat-migrator
- Edit the
app.php
file inside theconfig
folder by appendingWarlof\Seat\Migrator\MigratorServiceProvider::class,
to the end ofproviders
array. - Once done, publish the package files using
php artisan vendor:publish --force
- Run migration scripts with
php artisan migrate
- Finally, run
php artisan seat:migrator:upgrade
and follow the wizard
At the end of the process, you will have most of your data transferred into the specified SeAT 3.0 database.
Next, you can remove the seat2 directory with rm -R /var/www/seat2
and the old database.
Enjoy SeAT 3.0
Note
In case of any troubles, the migrator package did a backup before starting the migration process.
The output is specified in the prompt while it is being done, but you will also find it in /var/www/seat2/storage/backup
.