У меня есть несколько компьютеров, управляемых Saltstack, которые используются как для производства, так и для разработки.
Эти ПК являются нашими внутренними серверами, и целью использования Saltstack является (1) резервное копирование настроек для быстрого их повторного применения в случае сбоев (2) быстрая настройка нового ПК в случае его появления.Все случаи случаются не часто, и общее количество серверов меньше 10.
Стабильные состояния для Salt хранятся в gitfs в основной ветке выделенного репозитория git.
Иногда яНужно добавить новые функции и начать разработку нового состояния.В настоящее время я выполняю фиксацию непосредственно на master, и часто мои коммиты нарушают существующую конфигурацию из-за ошибок.
Я хотел бы зафиксировать свою работу в отдельных ветках git и использовать что-то вроде
$ sudo salt minion state.apply my-new-state saltenv=feature/branch
Однако вместо этого я получаю сообщения об отсутствующей среде:
~$ sudo salt minion state.show_sls ups saltenv=feature/ups
minion:
- No matching salt environment for environment 'feature/ups' found
- No matching sls found for 'ups' in env 'feature/ups'
Моя конфигурация в /etc/salt/master
:
gitfs_saltenv_whitelist:
- base
- feature\/*
gitfs_remotes:
- git@gitlab.local.corp:ci-formula.git
Я видел похожие вопрос на serverfault.com , пробовал предлагаемое решение с динамическим {{saltenv}}
.Это не помогло