これを正しく言いたいのかどうか分かりませんが、穀粒のキーでマッチングしてフィルタリングする例が得られることを期待していました。値(またはサブキー:値)。私の懸案事項は、将来別の穀物が追加され、誤ってfilter_byによって取り上げられる可能性があるということです。以下の実施例...穀物のSaltStack - grains.filter_by、穀物キーを指定し、サブキーでフィルターをかける
例リスト:
Host1
role:
webserver
secondary:
none
Host2
role:
appserver1
secondary:
appserver2
Host3
role:
appserver1
appserver2
secondary:
none
例マップファイル:
{% set java = salt['grains.filter_by']({
'default': {
'target': '/some/default/file/path',
},
'appserver1': {
'target': '/app/server1/path',
},
'appserver2': {
'target': '/app/server2/path',
},
},
default='default'
)%}
この例では、二次的には将来の時点で添加した追加の穀物だったと想像します。このセカンダリグレインが追加された後、マップファイルはHost2でどのように選択されますか?私はこれが最良の例ではないことを知っていますが、これはコードが私が書いたいくつかの州をレビューするときに出てきました。私は穀物キーをどのようにターゲットできるかについて良い答えを得ていませんでした。この場合、私は穀粒の役割をターゲットにし、その穀粒の中の値にフィルターをかけたいと思うでしょう。どうすればいい?私は複数回それを読むまで、私は完全にドキュメントでこれを逃した