0
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 3 years have passed since last update.

CakePHPで繰り返し可能、かつ一発でmigrate,seed,bake modelを実行するシェルスクリプト

Posted at

やりたいこと

  • 初期開発時にmigrationファイルを増やしたくないので、1テーブル1ファイルで運用したい。
  • そうすると都度migrations rollbackが必要になる。
  • 都度migrations rollbackしてmigrateして、、というのを一つずつコマンドで打ちたくない。
    ということで全部一括でできるシェルを作っておく。

環境(今回の作業に関連ないものも記載)

  • MacBookPro(macOSCatalina10.15.5)
  • PHPStorm2020.2
  • docker desktop2.2.0.3
  • cakephp4.1.2

実装

app/migrate.sh
bin/cake migrations rollback -d 20200101
bin/cake migrations migrate
bin/cake migrations seed
bin/cake bake baked_model all -f

rollbackはマニュアルに書いていないが、-dで日時指定ができる。(migrations rollback -hで他のオプションも確認可能)
十分に古い日時を指定すれば一発で初期状態に戻せる。

seedは全実行にしているが --seed LocalSeedとかで指定しても良い。
参考

baked_modelはbakeを繰り返し実行できるようにするための独自のコマンド。
参考

実行方法

bash ./migrate.sh

その他

開発環境が少しずつ整ってきていて気分がいいです。

0
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
0
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?