equal
deleted
inserted
replaced
|
1 #!/usr/bin/env python3 |
|
2 |
|
3 """ |
|
4 Wrapper script for pgtoolkit tools. |
|
5 |
|
6 Usage: |
|
7 |
|
8 pgtool --list |
|
9 List all available tools. |
|
10 |
|
11 pgtool <tool_name> <arg_1> <arg_2> ... |
|
12 Run tool. All args except first one are forwarded to the tool. |
|
13 |
|
14 pgtool schemadiff db1 db2 |
|
15 E.g. run schemadiff between db1 and db2. |
|
16 |
|
17 pgtool schemadiff --help |
|
18 Get help for tool parameters. |
|
19 |
|
20 """ |
|
21 |
|
22 import pgtoolkit.tools |
|
23 import sys |
|
24 from importlib import import_module |
|
25 |
|
26 |
|
27 if len(sys.argv) < 2: |
|
28 print(__doc__, end='') |
|
29 sys.exit() |
|
30 |
|
31 if sys.argv[1] == '--list': |
|
32 for tool in pgtoolkit.tools.__all__: |
|
33 print(tool) |
|
34 sys.exit() |
|
35 |
|
36 tool = sys.argv[1] |
|
37 tool_args = sys.argv[2:] |
|
38 |
|
39 module = import_module('pgtoolkit.tools.' + tool) |
|
40 |
|
41 tool = module.cls() |
|
42 tool.init(tool_args) |
|
43 tool.main() |
|
44 |