Отсев баз через source.exclude_databases
list_databases() прячит базы по массиву строк: подстрока без регистра или маска со * ? [. Фильтр — единственное место рождения списка, поэтому одинаков для меню, пульта и list; явное имя в CLI не трогает.
This commit is contained in:
@@ -142,6 +142,7 @@ python pg_stand_sync.py restore dumps/zpas-20260820-031332.dump
|
||||
| `dump_dir` | `dumps` | куда складывать дампы (относительный путь — от каталога скрипта) |
|
||||
| `keep_dumps` | `5` | сколько последних дампов хранить, `0` — не чистить |
|
||||
| `source.maintenance_database` | `postgres` | база, к которой подключаться для чтения списка баз |
|
||||
| `source.exclude_databases` | `[]` | массив строк: базы, которые не показывать в списках |
|
||||
| `source.password_env` | — | имя переменной окружения с паролем вместо `password` в файле |
|
||||
| `target.database` | `null` | имя локальной базы; `null` — как на стенде |
|
||||
| `target.recreate` | `true` | DROP + CREATE локальной базы перед восстановлением |
|
||||
@@ -150,6 +151,13 @@ python pg_stand_sync.py restore dumps/zpas-20260820-031332.dump
|
||||
| `restore.exit_on_error` | `false` | падать на первой ошибке восстановления |
|
||||
| `post_restore_sql` | `[]` | список SQL, выполняемых в целевой базе после восстановления |
|
||||
|
||||
```json
|
||||
"exclude_databases": ["_old", "keycloak", "*_tmp"]
|
||||
```
|
||||
|
||||
Строка без спецсимволов — подстрока (регистр не важен), со `*`, `?` или `[` — маска.
|
||||
Фильтр действует только на списки: базу, названную прямо (`sync zpas_old`), он не прячет.
|
||||
|
||||
Пароль ищется в три шага: `password` в конфиге → переменная окружения из `password_env` →
|
||||
запрос с терминала (один раз за запуск, ввод скрыт). В неинтерактивном запуске третьего шага
|
||||
нет — либо `password_env`, либо `pgpass.conf`. Пароль всегда уходит в дочерний процесс через
|
||||
|
||||
Reference in New Issue
Block a user