ChatOps со всем своим функционалом станет бесплатным — это наш вам подарок на праздники.
GitLab это open-core проект, в котором есть как платные, так и бесплатные продукты. В какой разряд отправится тот или иной продукт, определяет наше предположение об основном пользователе. То, что нужно контрибьюторам для личного пользования, мы делаем бесплатным.
Иногда мы неверно оцениваем аудиторию. В случае ошибки открытые инструменты мы платными не делаем, а вот платные открываем.
К последнему случаю относится ChatOps в GitLab. ChatOps позволяет запускать команды прямо из чата (в настоящий момент поддерживаются Slack и Mattermost). Когда есть общий канал, это позволяет работать совместно в режиме реального времени. Мы используем эту функцию в продакшене, когда публикуем и разворачиваем GitLab и обращаемся к базе данных:
Мы обнаружили, что эта функция популярна среди контрибьюторов для личного пользования, поэтому в GitLab 11.8 переводим ее в разряд свободных. Хотите получить ее раньше — просто подтвердите мерж-реквест для версии 11.7.
Рынок ChatOps стартовал не так, как предсказывали многие из нас (в том числе и я). Первым клиентом ChatOps стал Hubot, но с 2015-го его популярность снизилась. Когда вышло новое поколение ChatOps в проекте Cog, я воспрял духом, однако компания, стоявшая за этой инициативой, свернула деятельность.
Я общался с экспертами в этой индустрии, и подумал, что для успеха ChatOps необходимо 5 составляющих:
- Мониторинг. ChatOps великолепен для совместного траблшутинга, так что в нем должны легко отображаться графы.
- Поддержка запросов. Позволять параметрам, например, команде SQL запускаться или показывать график определенного сервера.
- Допуск. У всех должен быть разный уровень допуска, желательно на основе ролей, RBAC.
- Нулевая конфигурация. У вас должен быть доступ ко многим функциям, и чтобы при этом не требовалось их устанавливать.
- Совместимость. ChatOps должен работать одинаково у всех сотрудников организации.
Мне кажется, мониторинг и поддержку запросов ввели для Hubot. В нем же любой, у кого был допуск, мог делать что угодно, но уже в Cog добавили уровни допуска, исправив это. GitLab ввел нулевую конфигурацию и совместимость, так что все теперь работает "из коробки". В GitLab вещи работают "из коробки", потому что они — единое приложение для всего жизненного цикла DevOps. Мы знаем, как задеплоить приложение с Auto DevOps. В GitLab есть мониторинг с метриками и трассировкой.
В настоящий момент в ChatOps нет команд для развертываний и метрики по умолчанию. Надеемся, теперь, когда ChatOps станет бесплатным, это побудит больше людей использовать его и делать вклад в его развитие.
За этот год наше широкое сообщество работало активнее: внесено больше 150 улучшений в различные части последней версии GitLab.
За это мы чрезвычайно вам благодарны. Веселых праздников!
Наш подарок: We're making GitLab ChatOps available to everyone via @sytses Click to tweet!
Автор: nAbdullin