我需要在为 Salt 编写的模块中对 postgresql 数据库运行查询。它不会做太多事情,只是查询表中的值以确定安装了哪个版本的软件。
这文档有一个psql_query
功能,但你不能指定数据库,所以我猜测查询是针对维护数据库运行的。
更令人困惑的是,postgresql 模块文档说我必须在 minion 配置中指定连接参数,这意味着必须手动创建 postgresql 用户或复制配置,除非 minion 配置可以从 pillar 数据中读取(很确定它不能)。
现在mysql 模块用于盐做在功能上具有我需要的精确接口query
。
无法查询 psql db 似乎是一个严重的疏忽,可能是我误解了什么。通常我会深入研究代码并弄清楚发生了什么,但有太多神奇之处,我不知道从哪里开始。有什么帮助吗?
答案1
找到了代码(Google 没有透露),但它根本不存在。我已将此作为功能请求提出这里并正在检查代码,看我是否可以做出贡献。
盐很神奇,但它仍然有很多小缝隙。
更新:在阅读完代码后能使用参数 指定数据库maintenance_db
,这很容易引起误解,因为它具有特定含义。示例用法可能是:
postgres.psql_query query='select * from foo' maintenance_db='dbname' user='username' password='password'