2013-02-23 11 views
6

Jeśli muszę wykonać następujące 3 polecenia, w jaki sposób je pogrupować, więc muszę je tylko wywołać?Polecenia grupujące Saltstack

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 

mogę wykorzystać tkaninę umieścić te w jednej funkcji powiedzieć deploy które mogłyby przyjąć nazwę minion następnie prowadzony przez pana, ale zastanawiam się, czy jest coś zbudowany saltstack-in?

+0

Czy zastanawiałeś się nad stworzeniem stanu, w którym po prostu uruchamiasz komendy, ale musisz czekać na inny stan i tak dalej? – tudoricc

+0

dlaczego głosowanie w dół? To jest stare pytanie, teraz kilka dni bym utworzył niestandardowy plik stanu i przekazał jako parametr do modułu "state.sls". – Marconi

Odpowiedz

6

Jest to dobry kandydat do niestandardowego modułu.

Tutaj można przeczytać o tworzeniu modułów niestandardowych: http://docs.saltstack.com/ref/modules/index.html. Umieść moduł niestandardowy w/srv/soli/_modules (domyślna lokalizacja), a następnie uruchomić

salt \* saltutil.sync_modules 

moduł będzie wtedy dostępny do pracy na swoich sługusów.

Jeśli moduł nazywa się „wdrożyć”, a funkcja jest „mojawitryna”, wówczas komenda zwyczaj będzie wyglądać następująco:

salt \* deploy.mysite 

Jeśli chcesz kierować konkretną miniona to będzie wyglądać następująco :

salt 'minion_name' deploy.mysite 
+0

Możesz je wszystkie uruchomić w jednym przebiegu: sól '*' git.fetch, git.pull, nginx.signal "cwd =/var/git/myproject opts = '- wszyscy' users = git", "cwd =/var/git/myproject opts = 'origin master'", "reload" –

Powiązane problemy