@artemiyokulov, еще раз скажу: титаническая и очень замечательная работа!
"У нас есть желание открыть исходный код Gitlab Actions для использования его всеми желающими, так как инструмент завязан только на GitLab, и каждый, кто использует GitLab, может его к себе разместить и использовать. Будем вести работы в эту сторону."
Если до этого дойдете, то с удовольствием попытаемся помочь в популяризации с нашей стороны как можем.
4 основные метрики, которые используются в ежегодном отчете State of DevOps DORA (DevOps Research and Assessment, с 2018 года часть Google Cloud), в DevOps сообществе получили очень широкую популярность, применение и стали де-факто стандартом.
Есть ли в GitLab профили переменных? Например, я хочу сделать переменную host, и чтобы она приезжала разная в зависимости от окружения. Есть ли какое-нибудь профилирование? Например, я не хочу называть переменную host_dev, host_prod и host_test, а хочу указать окружение, и оно определённый набор переменных вытащит? Можно ли такое сделать?
NikolasSumrak,
Я работаю архитектором решений в GitLab и попытаюсь ответить здесь. Соглашусь, что это было бы неплохое улучшение в плане UX, простоты создания MR. Но к сожалению по нескольким причинам не выходит в топ бэклога:
Не является блокером / критичным
Не получил (на сегодня) достаточного интереса со стороны клиентов
Иными словами: реализация безусловно будет полезна, но по приоритет на сегодня ниже других возможных улучшений. Поэтому это отличный кандидат для community contribution (все-таки ГитЛаб это опенсорсовый продукт, который развивается усилиями большого количества участников сообщества).
Насколько я понимаю, Merge Request, для этой фичи был открыт какое-то время назад одним из участников open source сообщества и, надеюсь, будет в скором завершен.
Примерно понял так: Хочется иметь возможность получить информацию, на каких хостах (физические / виртуальные) был произведено развертывание. (а также обратное: посмотреть какие именно деплойменты запущены на ресурсе)
Если сможете поделиться конкретными кейсами и сценарии, то это поможет формулировке feature request для продуктовой команды. Спасибо большое!
Я работаю архитектором решений в GitLab и, наверное, соглашусь с вами: огромная часть функционала по развертывания завязана на K8s. Мы это прекрасно осознаем понимаем и пытаемся добавлять возможности развертывания без Кубера
В качестве примера можете посмотреть на недавно развиваемую инициативу "5 Minute Production App": https://about.gitlab.com/blog/2020/12/15/first-code-to-ci-cd-deployments-in-5-minutes/ (к сожалению, на английском) целью которой создать простой и легкий механизм выката в production за кратчайший срок (без использования K8s). Фокус начальной итерации стало развертывание приложений в AWS, но в будущем планируем дорабатывать и добавлять другие облачные (и не только) таргеты.
Если есть возможность, поделитесь каких возможностей в плане развертывания хотелось бы увидеть вам?
Да, в облачной версии используется тот же самый софт, что и on-premises. Облачная версия может "бежать" немного вперед, но весь функционал включенный в Release notes доступен и там и там.
Для тех, кому интересно, за работой по созданию CI/CD каталога шаблонов в GitLab можно следить (и активно участвовать) через эпик: https://gitlab.com/groups/gitlab-org/-/epics/7462
В частности, прямо сейчас можно проголосовать, какое имя выбрать для этого каталога: https://gitlab.com/gitlab-org/gitlab/-/issues/355678 ;-)
@artemiyokulov, еще раз скажу: титаническая и очень замечательная работа!
Если до этого дойдете, то с удовольствием попытаемся помочь в популяризации с нашей стороны как можем.
Спасибо большое, за отличную статью!
Замечу, что
в общем случае правильнее заменить на
only
/ exceptrules
. Они дают куда больше гибкости.Очень круто и интересно написано! Спасибо большое!
Статья отличная. Все четко, с примерами. Плюусую.
Но ведь и ГитЛаба есть свой встроенный PyPi репозиторий, почему не использовать его?
https://docs.gitlab.com/ee/user/packages/pypi_repository/#gitlab-pypi-repository
when/only
синтаксис по большому уже депрекейтнули.Rules дают куда больше гибкости
А чем собственно это отличается от создания проекта для всех переиспользуемых CI шаблонов и подгрузкой их через
include
?4 основные метрики, которые используются в ежегодном отчете State of DevOps DORA (DevOps Research and Assessment, с 2018 года часть Google Cloud), в DevOps сообществе получили очень широкую популярность, применение и стали де-факто стандартом.
Русский перевод, если интересно, можно почитать здесь --> https://habr.com/ru/post/488212/
А в общем отличная Q&A сессия! Спасибо большое!
Добавлю также к ответу, что общая рекомендация на сегодня — переход на использование
rules
вместоonly/except
Да, у переменных есть Environment Scope
NikolasSumrak,
Я работаю архитектором решений в GitLab и попытаюсь ответить здесь. Соглашусь, что это было бы неплохое улучшение в плане UX, простоты создания MR. Но к сожалению по нескольким причинам не выходит в топ бэклога:
Иными словами: реализация безусловно будет полезна, но по приоритет на сегодня ниже других возможных улучшений. Поэтому это отличный кандидат для community contribution (все-таки ГитЛаб это опенсорсовый продукт, который развивается усилиями большого количества участников сообщества).
Насколько я понимаю, Merge Request, для этой фичи был открыт какое-то время назад одним из участников open source сообщества и, надеюсь, будет в скором завершен.
Спасибо!
Примерно понял так:
Хочется иметь возможность получить информацию, на каких хостах (физические / виртуальные) был произведено развертывание. (а также обратное: посмотреть какие именно деплойменты запущены на ресурсе)
Если сможете поделиться конкретными кейсами и сценарии, то это поможет формулировке feature request для продуктовой команды. Спасибо большое!
VolCh, спасибо за отзыв!
Я работаю архитектором решений в GitLab и, наверное, соглашусь с вами: огромная часть функционала по развертывания завязана на K8s. Мы это прекрасно осознаем понимаем и пытаемся добавлять возможности развертывания без Кубера
В качестве примера можете посмотреть на недавно развиваемую инициативу "5 Minute Production App": https://about.gitlab.com/blog/2020/12/15/first-code-to-ci-cd-deployments-in-5-minutes/ (к сожалению, на английском) целью которой создать простой и легкий механизм выката в production за кратчайший срок (без использования K8s). Фокус начальной итерации стало развертывание приложений в AWS, но в будущем планируем дорабатывать и добавлять другие облачные (и не только) таргеты.
Если есть возможность, поделитесь каких возможностей в плане развертывания хотелось бы увидеть вам?
Shmele
Да, в облачной версии используется тот же самый софт, что и on-premises. Облачная версия может "бежать" немного вперед, но весь функционал включенный в Release notes доступен и там и там.
amarao, спасибо за отзыв!
Планируем выпустить это в 13.6. За прогрессом можно наблюдать в https://gitlab.com/gitlab-org/gitlab/-/issues/15603
Трудности перевода, случается. Спасибо за отзыв, поправили.
Трудности перевода, случается. Спасибо за отзыв, поправили.
Это возможно в Premium версии GitLab при помощи защищенных окружений (protected environments)
1) Добавляем
environment
в определение джобы2) В настойках проекта объявляем окружение защищенным (в этом примере production) и выставляем Allowed to deploy: Maintainers
