seatplus/seat3-migrator

Migration Package for seat3 to seatplus

0.5.3 2021-10-08 20:43 UTC

This package is auto-updated.

Last update: 2024-04-09 02:00:15 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This is where your description should go. Limit it to a paragraph or two. Consider adding a small example.

Installation

This installation guide assumes you are using a functioning dockerized seatplus version. Since this will be a cli only package, access to the shell is mandatory.

Create a backup from seat3

Create a backup from seat 3 on your old instance

docker-compose exec mariadb sh -c 'exec mysqldump "$MYSQL_DATABASE" -u"$MYSQL_USER" -p"$MYSQL_PASSWORD"' | gzip > seat_backup.sql.gz

Prepare your instance

First we are going to create a container for the seat3 backup. Add the following to the .env file:

# .env

DB_BACKUP_DATABASE=seat_backup

then add the backup container to your docker-compose.yml a

# docker-compose.yml

services:
    ...
    ### seatBackup  ##############################################
    seatBackup:
      image: mariadb:10.3
      restart: always
      environment:
          MYSQL_RANDOM_ROOT_PASSWORD: "yes"
          MYSQL_USER: ${DB_USERNAME}
          MYSQL_PASSWORD: ${DB_PASSWORD}
          MYSQL_DATABASE: ${DB_BACKUP_DATABASE}
      networks:
          - backend

Note: We are using the same DB username and user password as your normal seatplus db container does. However, we use the DB name you specified in the env file

Import backup to the newly created seatBackup container

zcat seat_backup.sql.gz | docker-compose exec -T seatBackup sh -c 'exec mysql "$MYSQL_DATABASE" -u"$MYSQL_USER" -p"$MYSQL_PASSWORD"'

You can install the package via composer:

composer require seatplus/seat3-migrator

You can publish and run the migrations with:

php artisan vendor:publish --provider="Seatplus\Seat3Migrator\Seat3MigratorServiceProvider" --tag="seat3-migrator-migrations"
php artisan migrate

You can publish the config file with:

php artisan vendor:publish --provider="Seatplus\Seat3Migrator\Seat3MigratorServiceProvider" --tag="seat3-migrator-config"

This is the contents of the published config file:

return [
];

Usage

$seat3-migrator = new Seatplus\Seat3Migrator();
echo $seat3-migrator->echoPhrase('Hello, Spatie!');

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.