Я использую gitlab и gitlab-runners для обновления проектов на хостах linux, и все они обновляют один и тот же проект.Однако конфигурация gitlab-ci.yml
в лучшем случае отсутствует для того, что мне нужно.
Например, у меня есть около 500 хостов, которые будут запускать сценарий, когда проект подталкивается к перенастройке компьютеров в соответствии с сценарием из содержимого впроект.Примечание: это один и тот же проект на каждом хосте.
Чтобы заставить это работать, мне нужно изменить тег типа host1
и host2
для каждого хоста, а затем создать огромный файл с 500 хостами.
Для рабочего метода gitlab-ci.yml
выглядит следующим образом:
stages:
- build
host1_build:
stage: build
tags:
- host1
script:
- sudo bash /project/update.sh
host2_build:
stage: build
tags:
- host2
script:
- sudo bash /project/update.sh
Я хотел бы иметь один тег типа update
на каждом хосте и один build
в файле gitlab-ci.yml
;однако при такой настройке он работает только на одном хосте.
update_build:
stage: build
tags:
- update
script:
- sudo bash /project/update.sh
Я сделал некоторые другие вещи безуспешно, кроме первого показанного рабочего варианта, который требует много времени для управления, и надеялся, что кто-то знал о некоторыхДругой вариант - обновить один и тот же проект сразу на нескольких хостах.