Команды группировки Saltstack

Если мне нужно выполнить следующие 3 команды, как их сгруппировать, чтобы мне нужно было вызвать только одну?

salt '*' git.fetch cwd=/var/git/myproject opts='--all' user=git
salt '*' git.pull cwd=/var/git/myproject opts='origin master'
salt '*' nginx.signal reload

Я могу использовать ткань, чтобы поместить их в одну функцию, скажем deploy который может принять имя миньона, а затем запустить master, но мне интересно, есть ли у saltstack что-то встроенное?

1 ответов


Это хороший кандидат для пользовательского модуля.

вы можете прочитать о создании пользовательских модулей здесь: http://docs.saltstack.com/ref/modules/index.html. Поместите пользовательский модуль в /srv / salt / _modules (расположение по умолчанию), а затем запустите

salt \* saltutil.sync_modules

ваш модуль будет доступен для запуска на ваших приспешников.

Если ваш модуль называется "deploy" , а функция - "mysite", то ваша пользовательская команда будет выглядеть так это:

salt \* deploy.mysite

Если вы хотите нацелиться на конкретного миньона, то это будет выглядеть так:

salt 'minion_name' deploy.mysite