Я установил nodejs
на моем соляном миньоне (Centos 6.6), используя init.sls
так как,
manager-requirements:
pkg.latest:
- pkgs:
- nodejs
О миньоне, nodejs
установлен, и я могу его использовать.
Когда я бегу config.get
на salt-master
чтобы получить статус установки, он возвращает пустые записи.
salt '*' config.get pkg:nodejs
возвращается,
Minion-host-name:
Я ожидал статус установки nodejs как True
в возвращаемом значении, но его там нет.
Является config.get
правильный интерфейс, чтобы узнать об установленных пакетах в миньонах?
salt.modules.config о состоянии соленого миньона / хозяина, вы хотите salt.modules.pkg
salt '*' pkg.version nodejs python ruby
salt '*' pkg.install nodejs
salt '*' pkg.install pkgs='["nodejs","python", "ruby"]'
Полные документы находятся в специальном модуле упаковщика: подходящий, ням, заваривать, Пакман, pkgng, pkgin, ips, и т.д
Вместо того, чтобы просить соль описать состояние системы («Установлен ли пакет nodejs») или что-то сделать («Установить пакет nodejs»), предпочтительная идиома соли, вероятно, состоит в том, чтобы проверить или принудительно применить файл состояния или отдельное состояние, о котором идет речь ( независимо от / init.sls) с state.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
Но, честно говоря, быстрая и грязная проверка работоспособности с cmd.run часто побеждает:
salt '*' cmd.run "node --version"
salt '*' cmd.run "dpkg -l |grep salt-minion""