エンティティ フレームワーク コード ベースの移行を使用します。私のワークフローの簡易版は...
ローカル データベースに対して作業し、モデルに変更を加え、アップとダウンの移行をローカルでテストし、コードをリポジトリにコミットします。私のビルドサーバーは、レポ、ビルド、テスト、デプロイなどからプルし、品質データベースに対して新しい移行を自動実行します。これはうまく機能しますが、ビルド サーバーでダウン マイグレーションのテストも行いたいと考えています。
おそらく、新しいバイナリをデプロイしてアップ移行を実行した後、統合テストを実行して合格することを確認してから、ダウン移行を実行し、最後の既知の正常なバイナリをデプロイして、統合テストを再度実行します。
デプロイが成功すると、ダウン マイグレーションが機能することがわかります。おそらくもっと重要なことは、アプリケーションを以前のバージョンにダウングレードするためのシングル クリック スクリプトを作成できることです。理論的には、展開を最初の展開に戻すことができます。
それで、展開時に実行されたアップ移行に対してダウン()移行を実行するようにバイナリに指示する方法を知っている人はいますか?