Назад | Перейти на главную страницу

Установить значение в /etc/zypp/zypp.conf через соль

Я хотел бы установить следующий параметр в /etc/zypp/zypp.conf через соль:

solver.allowVendorChange = true

Как это сделать?

Есть модуль для zypper, но я не нашел способа обновить вышеуказанный параметр:

https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.zypper.html

В SaltStack есть общие модули модификации файлов и состояния. Например, вы можете использовать file.replace:

salt '*' file.replace /etc/zypp/zypp.conf pattern='solver.allowVendorChange = true' repl='solver.allowVendorChange = false'

Если строка вообще не существует, вы можете добавить ее в конфигурацию в состоянии, используя file.blockreplace:

   file.blockreplace:
  - name: /etc/zypp/zypp.conf
  - marker_start: "#BLOCK TOP: Salt managed entry, do not edit!"
  - marker_end: "#BLOCK BOTTOM: End of Salt managed entry"
  - content: |
     solver.allowVendorChange = true
  - show_changes: True
  - append_if_not_found: True

Вы должны уметь это делать, используя file.sed:

salt '*' file.sed /etc/zypp/zypp.conf '^(#|)\s*solver.allowVendorChange(.+)?$' 'solver.allowVendorChange = true'