ruby - Puppet 从延迟函数运行中获取值
问题描述
我正在使用此类 Puppet 函数vault_lookup的自定义版本进行 Vault 集成。更改了一些逻辑,使用 AppRole 登录,而不是使用原始版本中的证书。并尝试使用此模块自动安装 Vault:puppet-vault。
因此,示例中的这段代码可以完美运行:
$d = Deferred('vault_lookup::lookup', ["secret/test", 'https://vault.hostname:8200'])
node default {
notify { example :
message => $d
}
}
但我正在努力实现这样的目标:
class { '::vault':
storage => {
postgresql => {
connection_url => "postgres://postgres_user:${d}@IP:5432/vault_db_user",
ha_enabled => 'true',
ha_table => 'vault_ha_locks',
}
}
}
这是$d
里面变量的内容::vault class
:
Deferred('vault_lookup::lookup', ["secret/test", 'https://vault.hostname:8200'])
是的,我可以使用以下方法获得变量的正确内容call
:
connection_url => "postgres://postgres_user:${d.call()}@IP:5432/vault_db_user",
这很酷,但我不能在这个变量上使用typeSensitive
来隐藏 Puppet 运行日志中的内容 :( 另外,我可以在使用标准 Puppet 资源(如.$d
Sensitive
file
也许有人已经实现vault_lookup
并且可以建议如何将变量内容传递给清单中的其他类?
解决方案
推荐阅读
- java - ZoneDateTime 的 PeriodFormatter
- javascript - 如何从模块访问 Vuex 根突变?
- java - 获取 FilePart 的总字节数
- c - 当我使用 malloc() 时,执行在 c 中自动停止
- reactjs - 无法显示来自后端的图像,出现“无法在 'URL' 上执行 'createObjectURL':重载解析失败”错误。
- python - Django Pyrebase 使用无限滚动从 firebase 检索
- c++ - 使用运算符重载 C++ 连接两个链表
- python - 当我打印从 2 个不同 csv 中提取的内联 2 列时,熊猫返回 NaN 值
- reactjs - 为什么由于全局变量的变化而内容发生变化并且调用了 setState 时,react 不会重新渲染?
- node.js - NODEMON - 应用程序崩溃 - 在启动前等待文件更改