В одном из моих текущих проектов я решил использовать версии для своего сценического окружения. Я нашел этот способ весьма полезным, и поэтому я хотел бы поделиться им с вами.

Итак, в текущей настройке у нас есть 3 среды:

  • разработка (для фронтенд-разработчиков и тестирования)
  • этап (для правильного контроля качества и демонстраций)
  • производство (для фактического использования)

Среды разработки и производства автоматически обновляются из соответствующих веток (dev и master).

deploy:dev:
  stage: deploy
  only:
    - dev

А вот для стейджинга — есть теги версии. Обычно эти теги создаются из ветки dev и автоматически обновляются с помощью GitLab CI. Он поддерживает регулярные выражения, и я создал простой вариант для версий в формате v(float), например. v1.3

deploy:stage:
  stage: deploy
  only:
    - /^v[0-9]+\.[0-9]+$/

https://regex101.com/r/O08jjy/3 — здесь вы можете ознакомиться с примерами и пояснениями к используемому регулярному выражению.

Спасибо за чтение! Надеюсь, вы найдете это полезным.

Ignisor при поддержке Go Wombat Team