Re: CLI for Schema Diff

From: Steve Chavez <steve(at)supabase(dot)io>
To: pgadmin-hackers(at)postgresql(dot)org
Subject: Re: CLI for Schema Diff
Date: 2021-03-29 23:41:20
Message-ID: CAGRrpzYy=6=Hms6hhJ2co6cJbzt9_1zaOAi5xgZJCfFBDL9jOg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hey all,

In case anyone is interested, I've managed to enable a CLI mode for the
Schema Diff on this repo:

https://github.com/steve-chavez/pgadmin4/blob/cli/web/cli.py

It basically works by using a Flask test client that interacts with the
Schema Diff endpoints.
It's a single isolated file, I haven't patched any of the existing modules.

For a quickstart, there's also a docker image that can be used like:

docker run supabase/pgadmin-schema-diff \
'postgres://postgres(at)host/diff_source' \
'postgres://postgres(at)host/diff_target' \
> diff.sql
## the stderr output shows the same messages as the Schema Diff GUI:

Starting schema diff...
Comparision started......0%
Comparing FTS Dictionaries ...35%
Comparing Functions ...50%
Comparing Trigger Functions ...60%
Comparing Sequences ...70%
Comparing Tables ...80%
Comparing Views ...90%
Done.

On Wed, 10 Mar 2021 at 13:42, Steve Chavez <steve(at)supabase(dot)io> wrote:

> Hey all,
>
> The Schema Diff tool is amazing, works much better than all the current
> OSS alternatives.
>
> However, it's only possible to use it from the GUI and thus it cannot be
> used programmatically, which would be really useful for CI/CD
> environments(deployment automation).
>
> Would you guys be open to make the Schema Diff work through a CLI?
>
> Best regards,
> Steve
>

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Akshay Joshi 2021-03-30 05:45:31 pgAdmin 4 commit: Fixed an issue where the procedure creation is failed
Previous Message Khushboo Vashi 2021-03-29 09:46:27 Re: OAuth error when logging in