1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Laravel 8.x/Schema Dump】1つのダンプファイルを異なるプロジェクトで使い回す方法

Last updated at Posted at 2022-02-02

Schema Dump機能

Laravel8から「Schema Dump」機能が追加されました。
マイグレーションファイルを1つのダンプファイルに圧縮して、マイグレーション作業を高速にしようという機能です。

以下コマンドでダンプファイルの作成が可能です。

php artisan schema:dump

詳しくはこちら

今回は、あるリポジトリで作成したダンプファイルを
他のリポジトリで使い回す方法を書き残します。
(これに丸一日費やしたなんて言えない。。)

設定方法

設定はとても簡単です。
以下のうち、どちらかを設定してください。

パターン1 App/Providers/AppServiceProvider.phpに設定追加

bootメソッド内に下記の一文を追加してください。


public function boot(){
 $this->app->useDatabasePath('../your-migration-repo/database')
}

パターン2 bootstrap/app.php

bootstrap/app.phpに以下を追加してください。

//スキーマファイルのパスを設定
$app->useDatabasePath('../your-migration-repo/database');

結果

モデルのUTなどを含むマイグレーション作業が爆速になる!

モデルのUTについては、前はテスト実行から終了まで3分ほどかかっていました。
しかし、ダンプファイルを使用するように変更したところ、実行から終了まで1分未満に短縮されました。

ぜひSchema Dump機能を使ってみてください!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?