この記事は Kyash Advent Calendar 2019 2日目の記事です。 今回はKyashで利用しているPostgreSQLにおいて、スキーマの差分を解消するツールを作った話についてです。 ツールのリポジトリはこちらになります。 github.com このツールは、2つのPostgreSQLインスタンスからpg_dumpすることにより得られたDDL間の差分を検出し、差分を解消するためのDDLを生成することができます。 社内システムで活用できることを最初のゴールとして開発しました。 こんなことができます。 例えば、入力用のDDLをsource.sqlとdesired.sqlとして用意し、 source.sqlの状態からdesired.sqlの状態に変更するためのDDLを生成してみます。 pg_dumpを使うことを想定して最低限の実装をしているので、入力用のDDLがこんな感じになっ