查询人偶中的对象数组
Querying an array of objects in puppet
我正在尝试使用 Puppet 4.4 AST 通过 inventory
API 查询自定义事实。我查询的事实结构是
apps: [
{
name: 'test-app-1',
version: '1'
},
{
name: 'test-app-2',
version: '5'
}
...
]
我正在寻找 return 所有包含 app['name'] == 'test-app-1'
散列的节点。这接近 return 我要找的东西:
["=", "facts.apps[1].name", "test-app-2"]
但我不知道应用程序将位于哪个元素索引处,所以我需要更像这样的(不正确的)语法:
["=", "facts.apps[*].name", "test-app-2"]
我使用 match
表示法解决了这个问题。
["=", "facts.apps.match(\".*\").name", "test-app-2"]
我正在尝试使用 Puppet 4.4 AST 通过 inventory
API 查询自定义事实。我查询的事实结构是
apps: [
{
name: 'test-app-1',
version: '1'
},
{
name: 'test-app-2',
version: '5'
}
...
]
我正在寻找 return 所有包含 app['name'] == 'test-app-1'
散列的节点。这接近 return 我要找的东西:
["=", "facts.apps[1].name", "test-app-2"]
但我不知道应用程序将位于哪个元素索引处,所以我需要更像这样的(不正确的)语法:
["=", "facts.apps[*].name", "test-app-2"]
我使用 match
表示法解决了这个问题。
["=", "facts.apps.match(\".*\").name", "test-app-2"]