salt config.get はパッケージのインストールステータスを返しません

salt config.get はパッケージのインストールステータスを返しません

nodejs私はsalt-minion (Centos 6.6)に次のようにインストールしましたinit.sls

manager-requirements:
  pkg.latest:
    - pkgs:
      - nodejs    

minion にnodejsインストールして使用できるようになりました。

インストールステータスを取得するために実行すると、空のエントリが返されconfig.getます。salt-master

salt '*' config.get pkg:nodejs

戻り値、

Minion-host-name:

True戻り値としてnodejs のインストール ステータスが期待されていましたが、そこにはありませんでした。

config.getミニオンにインストールされているパッケージを照会するための適切なインターフェースはありますか?

答え1

ソルトモジュール構成ソルトミニオン/マスターの状態について、あなたが望むsalt.modules.pkg

salt '*' pkg.version nodejs python ruby    
salt '*' pkg.install nodejs
salt '*' pkg.install pkgs='["nodejs","python", "ruby"]'

完全なドキュメントはパッケージ固有のモジュールの下にあります:適切おいしい醸造するパックマンパッケージパッケージips

saltにシステムの状態を記述するよう要求する(「パッケージnodejsはインストールされていますか」)か、何かを実行するよう要求する(「パッケージnodejsをインストールしてください」)代わりに、おそらく、状態ファイルまたは問題となっている単一の状態(whatever/init.sls)をチェックまたは強制する方が、saltの推奨されるイディオムです。状態.sls

salt '*' state.sls whatever test=true           # does a dry run
salt '*' state.sls whatever                     # actually applies the state
salt '*' state.sls_id state_name whatever       # single state from whatever/init.sls

しかし、正直に言うと、コマンドを実行多くの場合、勝利します:

salt '*' cmd.run "node --version"
salt '*' cmd.run "dpkg -l |grep salt-minion""

関連情報