ее просто в последовательности ролей явно. Какая разница по времени от того, что мы укажем ее не явно в плейбуке, а через dependencies?
В ансибле нет примитива "последовательность ролей"
Есть. Называется - плей в плейбуке 🙂
по времени -- никакой. Но роль, с моей точки зрения, будет сломанной.
роль не завязана на плей. В её meta (или любом другом месте) нет инструкции "выполнять только в таком-то плее после такой-то роли".
Бывает роль, которая может использовать разные зависимости в разных плейбуках. Это не покроешь универсальным указанием зависимости. В одном случае зависимость может быть одна, а в другом - другая.
Это плохая роль, её надо подправить. В ней лишняя логика (может быть, даже выбор хоста)
В мета, разумеется, нет. Это явно указывается в плейбуке
Роль, которая ломается, не будучи запущена в определенном плейбуке, требует рефакторинга. У нас была целая инфраструктура, состоящая из ролей, которые могли выполняться только из одного плейбука в строго определенном порядке 😁 И это со временем стало проблемой, которую смогли решить только полным переписыванием всего.
При чем тут выбор хоста? Есть, например, роль установки некого приложения с использованием набора внешних данных. Она ставит пакеты по определенному алгоритму. А есть роль, которая конфигурирует уже конкретные конфиги приложения и оперирует с его данными по разным сценариям. Объединение их в одну роль нерационально, т.к. сильно усложняет логику и затрудняет поддержку. Гораздо проще как раз использовать разные наборы под определенные случаи
Обсуждают сегодня