Как запросить базу данных postgresql через соль
Мне нужно выполнить запрос к базе данных postgresql в модуле, который я пишу для Salt. Это ничего не даст, просто запросите у таблицы значение, чтобы определить, какая версия программного обеспечения установлена.
Документы имеют psql_query
функция, но вы не можете указать базу данных, поэтому я предполагаю, что запрос выполняется в отношении базы данных обслуживания.
Чтобы запутать вещи, в документации модуля postgresql говорится, что я должен указать параметры соединения в конфигурации minion, что означает необходимость вручную создавать пользователя postgresql или дублирующую конфигурацию, если только конфигурация minion не может читать данные колонны (почти наверняка, не может).
Теперь модуль mysql для соли имеет точный интерфейс, который мне нужен в query
функция.
Неспособность запросить psql db кажется таким вопиющим упущением, что, вероятно, я что-то неправильно понимаю. Обычно я погружался в код и выяснял, что происходит, но в нем так много магии, что я не знаю, с чего начать. Любая помощь?
1 ответ
Нашел код (Google не раскрывал его), и он просто не существует. Я поднял это как запрос функции здесь и проверяю код, чтобы увидеть, могу ли я внести свой вклад.
Соль удивительна, но в ней все еще много таких маленьких пробелов.
ОБНОВЛЕНИЕ: после прохождения кода вы можете указать базу данных с параметром maintenance_db
, что вводит в заблуждение, потому что это имеет конкретное значение. Пример использования может быть:
postgres.psql_query query='select * from foo' maintenance_db='dbname' user='username' password='password'