Как передать ключевое слово в Git при коммите - PullRequest
0 голосов
/ 02 апреля 2019

Я выполнил задание CICD на Gitlab, где фиксация файлов в хранилище запускает задание, создает файл и публикует файлы на сервере. Это работало нормально, но теперь моя работа должна также идентифицировать сервер при фиксации, потому что в среде теперь есть 4 сервера, указывающих на 4 разных региона. Как разработчик может передать какое-либо ключевое слово (даже двухбуквенное слово должно работать) при фиксации, отличной от сообщения фиксации, которое я могу получить в задании Gitlab CICD.

Я исследовал различные переменные среды, которые есть у Gitlab, но я ни одна из них не удовлетворяла моим требованиям. Есть идеи / предложения?

1 Ответ

1 голос
/ 02 апреля 2019
  • вы можете использовать теги и запускать задачу сборки только для тегов с определенным форматом
  • вы можете создать конвейер, который ожидает переменные, и запустить этот конвейер с помощью прямого http-вызова (например:curl или конкретный скрипт)

Дополнительные сведения:

  • у ОП нет возможности изменить структуру хранилища git
  • хранилище содержит каталог со списком файлов
    • каждый из этих файлов описывает конкретный продукт
    • каждый из этих файлов является файлом yaml
    • в зависимости отпродукт, файл должен быть передан, когда модифицирован, на один или несколько из 4 потенциальных целевых серверов

Я предлагаю: добавить что-то, что описывает, какие файлы должны бытьотправлено на какой сервер.

например: добавьте комментарий # @companycicd : publish srv1 srv3 в файл, если его необходимо отправить в srv1 и srv3

, и обновите задание CICD, чтобы получить списокцелевых серверов дляr каждый файл из этой конкретной строки комментариев.

...