2014-12-05 8 views
21

Używam ansible do skryptu wdrożenia dla API. Chciałbym, żeby to działało sekwencyjnie za pośrednictwem każdego hosta w moim pliku zasobów, aby móc w pełni wdrożyć na jednym komputerze naraz.Ansible - Jak sekwencyjnie uruchamiać playbook dla każdego hosta

Przy zachowaniu pola wyjściowego każde zadanie w moim podręczniku jest wykonywane dla każdego hosta w pliku inwentarza przed przejściem do następnego zadania.

Jak mogę zmienić to zachowanie, aby wykonać wszystkie zadania dla hosta przed rozpoczęciem pracy na następnym hoście? Idealnie chciałbym mieć tylko jeden playbook.

Dzięki

Odpowiedz

44

się bliżej przyjrzeć Rolling Updates:

Co szukasz jest

- hosts: webservers 
    serial: 1 
    tasks: 
    - name: ... 
+1

Dzięki, to jest dokładnie to, czego szukałem. – Lynn

+0

ProfHase85, dziękuję za odpowiedź, ale czy mógłbyś pokazać przykład, jak przekazywać wartość "szeregową" za pośrednictwem argumentów wiersza poleceń? Zgodnie z tym problemem https://github.com/ansible/ansible/issues/1767 powinno być możliwe, ale trudno jest znaleźć dobrą próbkę tego. – sviklim

+1

Nie ma to właściwie nic wspólnego z pytaniem, tylko standardowe użycie zmiennych. Oto podstawowe informacje na ten temat: https://gist.github.com/profhase/57af3e715ec7faf5bf34d84299228591 W ostatnim wierszu znajduje się przykład połączenia – ProfHase85

Powiązane problemy