У меня есть три виртуальные машины , которые я использовал для развертывания разработки, промежуточной и основной ветки проекта.
Допустим, Дженкинс работает на VM с именем JEN
- Разработка ветки на VM с именем DEV
- промежуточная ветвь на VM с именем STAGE
- И ветвь Master на VM с именем MASTER
Я сделал три подчиненных узла ( DEV , STAGE , MASTER ) на Дженкинсе и у вас на разных ветках Jenkinsfile работает на разных виртуальных машинах ( DEV , STAGE , MASTER ).
Другой подход, через который я прохожу:
- Не делать DEV, STAGE, MASTER в качестве подчиненного узла. То есть у нас есть только один агент Дженкинс ( JEN ).
- Запустите конвейер и тесты в нем на JEN и используйте ANSIBLE для удаленного развертывания ( DEV, STAGE, MASTER )
Как бы это сравнить с первым подходом?