Вышел релиз GitLab 13.2 с планированием итераций и нагрузочным тестированием производительности

Картинка для привлечения внимания

GitLab 13.2 помогает командам управлять планированием проектов с итерациями майлстоунов, улучшать совместную работу для более быстрого реагирования с диффами для вики-страниц и общую производительность и эффективность с нагрузочным тестированием производительности.

Оптимизация планирования и управления agile-проектами

Налаживание рабочих процессов и планирование задач для разных команд может отнимать у вас значительное количество времени, которое вы бы хотели потратить на разработку. Мы выпускаем первую версию (MVC) Итераций, которые помогут вам разбить работу на более мелкие, легко контролируемые фрагменты. Мы стремимся уменьшить время, которое вы тратите не на разработку, и упростить планирование проектов. Поэтому впереди вас ждет еще множество улучшений.

Если ваша команда использует Jira для управления проектами, теперь вам будет удобнее просматривать тикеты Jira в GitLab, ведь мы считаем, что GitLab должен хорошо взаимодействовать с другими сервисами и стремимся сбалансировать количество интеграций и количество собственных возможностей. Если вы используете эпики (в русской локализации GitLab «цели») для планирования и управления большими проектами, то теперь вы сможете защитить конфиденциальный контент с помощью конфиденциальных эпиков. Если вам нужно обновить несколько тикетов или эпиков сразу, на помощь придет редактирование нескольких тикетов в эпике, что поможет уменьшить количество открытых вкладок и действий, необходимых для обновления.

Эффективная совместная работа для более быстрого реагирования

Хорошая коммуникация является ключом к эффективному сотрудничеству, поскольку она позволяет командам быстрее получать обратную связь об изменениях, прежде чем отправить их в продакшн. С возможностью просмотреть дифф изменений для вики-страниц сравнивать истории редактирования разных версий страниц становится так же быстро и просто, как сравнивание изменений файлов в репозитории. Обратная связь в реальном времени для .gitlab-ci.yml в Web IDE делает более эффективным обновление вашего конвейера CI за счет добавления линтинга и автодополнения в реальном времени. Теперь вам не нужно запоминать все параметры при настройке конвейера или переключать контекст, чтобы получить нужную информацию.

Дизайнеры — важные члены команды, и релиз 13.2 включает в себя значительные улучшения для управления дизайнами. Теперь вам будет легче найти дизайны в тикете, так что это будет отнимать меньше времени, а официальный плагин Figma от GitLab упрощает процесс загрузки файлов из Figma в тикеты GitLab.

Улучшение производительности и эффективности

13.2 представляет обновления для повышения эффективности и производительности вашей команды. Теперь вы можете воспользоваться расширенным глобальным поиском на GitLab.com — возможностью, которая улучшает релевантность и производительность поиска, и позволяет осуществлять поиск по всем проектам группы непосредственно через пользовательский интерфейс.

Каждая команда разработчиков сталкивается с проблемой производительности приложений. Новое нагрузочное тестирование производительности в GitLab позволяет запускать пользовательские нагрузочные тесты как часть ваших CI/CD конвейеров (в русской локализации GitLab «сборочные линии»), что поможет лучше понять, как ваше приложение будет работать при большой нагрузке.

На сегодняшний день, похоже, что все работают из дома и «распределены» больше, чем когда-либо. GitLab Geo помогает удаленным командам работать более эффективно, используя локальную ноду GitLab. В этом релизе мы представляем улучшенную производительность репликации для проектов, чтобы обеспечить актуальность локальных данных. Также GitLab теперь включает результаты CI-тестов в наблюдения по релизу для удобства предоставления данных о соответствии требованиям или как более эффективный способ отображения актуальных изменений в продакшне во время аудита.

И это еще не все!

Нам никогда не хватит места, чтобы выделить все классные новые фичи наших релизов в обзоре. Важное улучшение для управления пакетами, которое невозможно не отметить: GitLab теперь поддерживает Composer, менеджер зависимостей PHP. С его помощью вы можете с легкостью искать, делиться и устанавливать PHP-зависимости.

Вот еще несколько фич, на которые вам стоит обратить внимание:

Огромное спасибо нашему GitLab-сообществу: не так давно были приняты более 300 мерж-реквестов от нашего обширного сообщества. Мы ценим вклад каждого из вас!

Если вы хотите заранее узнать, что вас ждет в следующем релизе, посмотрите наше видео по релизу 13.3.

Приглашаем на наши встречи.

GitLab MVP badge

MVP этого месяца — Jesse Hall

Благодаря Jesse в этом релизе появилась крутая фича, пакетная обработка предложений, которая позволяет ревьюверам мерж-реквестов сгруппировать все предложения в один общий дифф и отправить их одновременно. Поскольку каждое предложение переводится в git-операцию, при большом количестве предложений их отправка по отдельности могла бы занять немало времени. Пакетная отправка предложений экономит время, эффективнее использует ресурсы CI (для всех предложений понадобится только один конвейер), а также предотвращает слишком большую загруженность истории Git.

Спасибо Jesse за приложенные усилия, терпение и упорство, которые позволили завершить эту работу. Мы очень это ценим.

Основные фичи релиза 13.2

Назначение тикетов итерациям

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Plan

До этого релиза в GitLab не было возможности связать тикет с несколькими временными блоками (timebox). Эта проблема была особенно актуальна для команд, которые применяют Scrum или XP. Таким командам могло требоваться связывать тикеты с итерациями/спринтами, одновременно сдвигая их до более долгосрочных майлстоунов (в русской локализации GitLab «этапы»), таких как инкремент программы.

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

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

Мы будем рады получить от вас обратную связь и узнать, как нам стоит развивать итерации дальше.

Документация по итерациям и оригинальный эпик.

Мониторинг и блокировка на уровне хоста контейнера

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Defend

Мы рады представить первую версию безопасности хоста контейнера. Эта первая итерация позволяет администраторам обеспечивать безопасность работающих контейнеров на уровне хоста, отслеживая и опционально блокируя непредвиденную активность. На данный момент отслеживаемая активность включает в себя запуск процесса, изменение файлов или открытие сетевых портов. Эта фича использует Falco для обеспечения мониторинга, для блокировки — AppArmor и Pod Security Policies.

Документация по установке Falco и оригинальный тикет.

Официальный плагин GitLab-Figma

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Недавно команда, отвечающая за дизайн продукта GitLab, и наша открытая система Pajamas перешли на Figma. В связи с этим мы решили создать новый плагин для Figma, который позволит легко загружать файлы с Figma в тикеты GitLab, что упростит совместную работу в области дизайна. Теперь вы сможете соединить вашу среду проектирования дизайна с управлением исходным кодом в едином рабочем процессе.

С релизом 13.2 мы выпускаем официальный плагин, который будет работать с Figma:

Official GitLab-Figma Plugin

Документация по плагину Figma и оригинальный тикет.

Мониторинг состояния кластера теперь в Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Чтобы лучше понимать производительность системы, ваша команда разработчиков должна следить за состоянием и производительностью базовой инфраструктуры. Мы хотим, чтобы наши метрики были доступны всем пользователям GitLab, поэтому в рамках нашего подарка к 2020 году мы перенесли оценку состояния кластера стадии Monitor с GitLab Ultimate в GitLab Core. Начиная с этого релиза все пользователи могут подключать кластер и контролировать его состояние через пользовательский интерфейс GitLab.

Cluster health monitoring now available in Core

Документация по визуализации состояния кластера и оригинальный тикет.

Управляйте PHP-зависимостями с репозиторием Composer в GitLab

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Package

PHP-разработчикам необходим удобный механизм совместного использования зависимостей для их проектов. Composer — менеджер зависимостей для PHP, который позволяет вам объявлять библиотеки, от которых зависит ваш проект, и он будет управлять ими за вас. Мы рады представить репозиторий Composer, встроенный непосредственно в GitLab. Теперь у PHP-разработчиков есть простой способ искать и задавать зависимости своих проектов. Благодаря этой интеграции, GitLab предоставляет централизованное место для просмотра пакетов там же, где находятся исходный код и конвейеры.

На данный момент зависимости PHP в реестре пакетов будут перечислены во вкладке Все (All), а не в специальной вкладке для Composer. Мы добавим специальную вкладку для Composer в следующем майлстоуне.

Особая благодарность @ochorocho, который внес существенный вклад в разработку этой фичи. Мы не смогли бы сделать это без его помощи и рекомендаций.

Документация по репозиторию Composer и оригинальный тикет.

Организация важной работы в конфиденциальных эпиках

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Plan

Теперь вы можете собрать несколько связанных конфиденциальных тикетов в конфиденциальный эпик. У заказчиков, работающих в таких сферах, как финансы, HR или безопасность, часто возникает необходимость работать над вещами, которые нельзя выкладывать в публичный доступ. Чтобы помочь клиентам в управлении множеством конфиденциальных тикетов, которые относятся к одной общей цели или проекту, мы расширили функциональность по работе с конфиденциальными данными до эпиков.

Organize sensitive work into Confidential Epics

Документация по конфиденциальным эпикам и оригинальный эпик.

Поддержка обработчика заданий GitLab для Linux на IBM Z

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

Пользователи GitLab, использующие мейнфреймы IBM, перенимают современные методы DevOps и тоже заинтересованы в возможности запускать обработчики заданий GitLab (GitLab Runners) непосредственно на своем оборудовании. Исходя из этого растущего интереса к появлению поддержки для мейнфреймов z/OS, мы выпустили первую версию обработчика заданий GitLab и вспомогательный образ, который вы можете использовать для запуска и нативного выполнения задач непрерывной интеграции на архитектуре s390x в среде Linux на IBM Z.

GitLab Runner support for Linux on IBM Z

Документация по образам Docker и оригинальный тикет.

Секции владельцев кода

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Create

В крупных организациях у нескольких независимых групп может быть общий интерес к отдельным частям приложения. Например, у компании, занимающейся обработкой платежей, могут быть команды разработчиков, специалистов по безопасности и соблюдению требований, которые следят за общими частями базы кода. Для подтверждения изменений может понадобиться одобрение всех трех команд. В то время как подтверждающие владельцы кода устанавливаются на основе того, какие файлы были изменены, по одному пути к файлу может быть применен только один шаблон CODEOWNERS.

В GitLab 13.2 секции владельцев кода позволяют каждой команде независимо настраивать своих ответственных. Правила секций могут использоваться для общих файлов, так что несколько команд могут быть добавлены в качестве проверяющих. Это обеспечит получение обратной связи и рецензий от нужных проверяющих в каждом конкретном случае, что приведет к повышению качества кода и эффективности работы.

Code Owner Sections

Документация по секциям владельцев кода и оригинальный тикет.

Поддержка Fargate в Auto DevOps и шаблоне для ECS

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Release

Мы хотим упростить развертывания в AWS. Для этого мы недавно представили шаблон CI/CD, который развертывает в AWS ECS:EC2, и даже подключили его к Auto DevOps. Масштабирование контейнеров в EC2 является непростой задачей, поэтому многие пользователи предпочитают использовать AWS Fargate вместо EC2. В этом релизе мы добавили поддержку Fargate к нашему шаблону, который продолжает работать и с Auto DevOps, так что теперь больше пользователей смогут воспользоваться им.

Документация по развертыванию в ECS и оригинальный тикет.

Расширенный глобальный поиск теперь на GitLab.com

(BRONZE, SILVER, GOLD) Доступность

До выхода этого релиза пользователям GitLab.com, которые хотели выполнить поиск кода по всем проектам, приходилось клонировать репозитории и искать локально на своем компьютере — трудоемкая и неудобная задача. С релизом GitLab 13.2 пользователи GitLab.com плана Bronze и выше могут воспользоваться поиском по коду во всей группе непосредственно через пользовательский интерфейс с помощью расширенного глобального поиска.

Расширенный глобальный поиск добавляет возможность искать код по всем проектам в группе, улучшает релевантность и производительность поиска, позволяет сузить границы поиска, а такжее позволяет использовать расширенный синтаксис поиска. Искать контент в GitLab станет намного легче и удобнее.

Advanced Global Search now available on GitLab.com

Документация по расширенному глобальному поиску и оригинальный эпик.

Ассоциирование переключаемых фич со связанными тикетами

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Release

Мы добавили возможность ассоциировать тикеты с соответствующими переключаемыми фичами. Например, вы можете привязать тикет, по которому создавалась эта фича. Эта связь будет видна в деталях фичи и облегчит поиск причин, по которым она была изначально создана. Также это облегчит отслеживание майлстоуна тикета и его статуса непосредственно из переключаемой фичи, что поможет получить лучшее представление о деталях фичи.

Документация по связыванию тикета с фичей и оригинальный тикет.

Просмотр списка тикетов Jira в GitLab

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Create

Для организаций, использующих Jira в качестве основного инструмента отслеживания работы, может быть непросто работать с несколькими системами и поддерживать единый источник информации.

В этом дополнении к нашей текущей интеграции Jira администраторы проектов смогут выводить список тикетов Jira внутри проекта GitLab. Это позволит разработчикам, работающим в основном в GitLab, оставаться в потоке, не переключаясь на второй инструмент для отслеживания того, что нужно сделать. Дальнейшие запланированные доработки включают в себя комментирование, изменение статуса (переходы) и многое другое.

View Jira issue list in GitLab

Документация по отображению списка тикетов из Jira и оригинальный эпик.

Нагрузочное тестирование производительности

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Verify

Важно понимать, как будут работать под нагрузкой приложения, которые вы разрабатываете. Например, знаете ли вы, сможет ли ваш API одновременно обслуживать 1000 пользователей? До этого релиза не было простого способа проверить, как изменения в мерж-реквесте повлияют на базовую производительность приложения до его принятия.

С этим релизом вы сможете использовать нагрузочное тестирование производительности для выполнения собственных нагрузочных тестов. Настроенное «из коробки» тестирование производительности сообщает, какой процент встроенных проверок пройден, 90-й и 95-й процентиль по времени до первого байта (TTFB) и среднее количество запросов в секунду (RPS). Это упростит сравнение результатов с общей статистикой и поможет увидеть результаты непосредственно в мерж-реквесте перед тем, как принять решение о том, принимать ли его.

Load Performance Testing

Документация по нагрузочному тестированию и оригинальный тикет.

В интерфейсе GitLab доступны логи управляемых GitLab приложений

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

При обработке инцидента или проверке статуса вашего сервиса, у вас должна быть возможность просматривать логи подов Kubernetes по всему стеку ваших приложений. Ранее в пользовательском интерфейсе GitLab отображались только логи развернутых приложений (логи, которые берутся из приложения, которое вы развернули в кластере с помощью CI/CD). В GitLab 13.2 вы сможете выполнять поиск также по логам управляемых GitLab приложений непосредственно из пользовательского интерфейса GitLab.

Managed application logs available in GitLab UI

Документация по просмотру логов и оригинальный тикет.

Использование нескольких кластеров Kubernetes теперь в Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Configure

Ранее требовалась лицензия Premium для развертывания нескольких кластеров Kubernetes в GitLab. Наше сообщество высказалось, и мы услышали: теперь развертывание на нескольких кластерах доступно даже для отдельных участников. По вашим запросам, начиная с релиза 13.2 вы можете разворачивать приложения на нескольких групповых и проектных кластерах в Core.

Multiple Kubernetes cluster deployment in Core

Документация по использованию нескольких кластеров и оригинальный тикет.

Создание релизов из .gitlab-ci.yml

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Release

В релизе 12.10 мы представили способ автоматического создания тегов релиза из файла .gitlab-ci.yml. Теперь мы сделали его более простым и естественным в использовании, указав ключевое слово release в качестве шага, который парсит обработчик заданий GitLab. Вам больше не нужно добавлять скрипт для вызова API релизов для создания релиза. Теперь вы можете просто добавить нужные параметры в ваш CI/CD файл.

Create releases from .gitlab-ci.yml

Документация по ключевому слову release и оригинальный тикет.

Включение результатов CI-тестов в наблюдения по релизу

(ULTIMATE, GOLD) Стадия цикла DevOps: Release

GitLab дополняет введенные в 12.6 наблюдения по релизу, добавляя к ним результаты CI-тестов. Эти сгенерированные конвейером артефакты задания автоматически включаются в JSON-файл наблюдений по релизу. Пользователи Ultimate смогут без особых усилий предоставить изменения аудитору или для проверки соответствия. Вы можете загрузить JSON-файл с наблюдениями и показать соответствующие результаты тестирования, не покидая GitLab и не прерывая вашего обычного рабочего процесса.

Документация по наблюдениям по релизу и оригинальный тикет.

Динамически генерируйте дочерние конвейеры с Jsonnet

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

Мы выпустили динамические конвейеры parent-child («родитель-ребенок») еще в GitLab 12.9, они позволяют вам сгенерировать весь файл .gitlab-ci.yml во время выполнения. Это отличное решение для монорепозиториев, например, если вы хотите, чтобы поведение во время выполнения было еще более динамичным. Теперь мы сделали создание CI/CD YAML во время выполнения еще проще, включив шаблон проекта, который демонстрирует, как использовать Jsonnet для генерации YAML. Jsonnet — это язык шаблонов данных, который предоставляет функции, переменные, циклы и условия, позволяющие полностью параметризовать конфигурацию YAML.

Dynamically generate Child Pipeline configurations with Jsonnet

Документация по шаблону проекта Jsonnet и оригинальный тикет.

Другие улучшения в GitLab 13.2

Изменения групп подтверждения в событиях аудита

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Manage

Изменения в подтверждениях мерж-реквестов уже записываются в лог событий аудита. В релизе 13.2 мы дополнили эту функциональность, добавив детали по изменениям в группах подтверждений. Теперь, когда в правила подтверждений мерж-реквестов будут вноситься изменения, вы увидите больше подробностей по этим изменениям в логе.

Документация по событиям аудита и оригинальный тикет.

Настройки мерж-реквестов в инстансе по меткам соответствия требованиям

(PREMIUM, ULTIMATE) Стадия цикла DevOps: Manage

Ранее, когда администратор настраивал мерж-реквесты на панели настроек администратора, все проекты в инстансе наследовали эти настройки. Эта модель наследования была слишком широкой для пользователей, которые хотели бы применять более гибкие требования к нерегулируемым проектам. Теперь мы предоставляем большую гибкость, позволяя администраторам задавать метки набора правил соответствия требованиям для проектов, к которым они хотят применять эти настройки инстансов. При выборе меток только проекты с соответствующими метками унаследуют настройки, и их смогут редактировать только администраторы на уровне инстансов.

Эта фича позволит организациям, нацеленным на соответствие требований, гарантировать, что такое критически важное разделение обязанностей не будет доступно для редактирования посторонним пользователям, что нарушило бы работу их механизма соблюдения требований. Пока эта фича доступна только для инстансов с самостоятельным управлением, но мы планируем сделать эту функциональность доступной для владельцев групп на GitLab.com. Мало того, мы хотим сделать ее необходимым инструментом управления соблюдением требований, а именно, разделением обязанностей.

Scope instance-level merge request settings to compliance-labeled projects

Документация по настройкам для проектов с метками соответствия требований и оригинальный эпик.

Возможность отключения принудительного истечения срока личных токенов доступа

(ULTIMATE) Стадия цикла DevOps: Manage

Теперь вы можете отключать принудительное истечение срока действия личных токенов доступа, если их предельный срок жизни был определен и подошел к концу. Это предоставит организациям гибкость в управлении ротациями учетных данных. Эта фича — часть большого эпика, в котором мы делаем управление учетными данными более эффективным для организаций и удобным для разработчиков.

Документация по отключению истечения срока действия личных токенов доступа и оригинальный тикет.

Пакетное редактирование тикетов в эпике из списка тикетов

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Plan

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

Bulk edit the Epic for multiple issues from the Issues List

Документация по пакетному редактированию и оригинальный тикет.

Сопоставление пользователей Jira с пользователями GitLab при импорте тикетов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Plan

Теперь при импорте тикетов из Jira в GitLab вы можете сопоставлять пользователей Jira с участниками проекта GitLab перед импортом. Это позволит правильно назначать ответственного и исполнителя для тикетов, которые вы переносите в GitLab.

Map Jira users to GitLab users when importing issues

Документация по импорту проектов из Jira в GitLab и оригинальный тикет.

Перестановка тикетов через REST API

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Plan

Теперь вы можете менять относительный порядок тикета через REST API. До этого релиза в GitLab не было возможности программно переставлять тикеты. Это было особенно большой проблемой для пользователей API, которые поддерживали собственные настройки интерфейса досок задач, так как они не могли менять относительный порядок тикетов.

Спасибо @jjshoe за добавление конечной точки в наш публичный API для поддержки этой фичи!

Документация по перестановке тикетов через API и оригинальный тикет.

Сортировка активности эпиков по последним обновлениям

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Plan

Сортировка «от старого к новому», применяемая по умолчанию для обсуждений и системных заметок, очень полезна в некоторых сценариях, таких как изучение истории конкретного эпика. Однако она куда менее полезна, когда команды работают в режиме разбора и устранения инцидентов, так как им приходится листать до конца эпика, чтобы просмотреть последние обновления.

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

View the Epic feed by newest activity first

Документация по порядку сортировки активности эпиков и оригинальный тикет.

Настройка имени основной ветки для новых репозиториев

(CORE, STARTER, PREMIUM, ULTIMATE) Стадия цикла DevOps: Create

При создании нового репозитория Git по умолчанию первая созданная ветка называется master. Вместе с сообществом и разработчиками Git мы прислушивались к обратной связи от пользователей по поводу более содержательного и удобного имени основной ветки и возможности предлагать пользователям самим задавать имя основной ветки для их репозиториев.

GitLab теперь разрешает администраторам инстансов задавать свое имя для основной ветки нового репозитория при создании его через интерфейс GitLab.

Документация по заданию имени основной ветки, оригинальный тикет и оригинальный эпик.

Отслеживание активности в дизайнах

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Для нас важно, чтобы вам отдавали должное за работу над дизайнами в GitLab. Мы добавили действия добавления, изменения и комментирования дизайнов в ваш профиль, на страницу группы и страницу проекта. Отслеживать активность по дизайнам стало намного проще.

Keep track of your activity in Designs

Документация по отслеживанию активности по дизайнам и оригинальный тикет.

Подтверждения мерж-реквестов в GitLab Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Ревью кода — это обязательная практика в любом успешном проекте. Ваше подтверждение мерж-реквеста после того, как он был приведен в хорошую форму, — важная часть этого процесса, так как оно означает, что добавленные изменения можно мержить. Пользователи Core обычно делают это, оставляя комментарий или thumbs up, однако подтверждения в такой форме легко могут потеряться.

В версии 13.2 любой пользователь с правами Developer может подтверждать мерж-реквесты в GitLab Core. Теперь пользователям, проводящим ревью, будет очевидно, как дать свое подтверждение, а сопровождающие (maintainers) будут знать, когда изменение готово для мержа. Подтверждения мерж-реквестов являются опциональными в GitLab Core и GitLab.com Free, пользователи GitLab Starter и GitLab.com Silver и более высоких планов также могут сделать подтверждения обязательными для мержа в базу кода.

Документация по подтверждениям мерж-реквестов и оригинальный тикет.

Редирект со страниц вики на рабочее пространство Confluence

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Если вы используете Confluence для совместной работы, вам может быть сложно следить сразу за рабочим пространством Confluence и за проектами GitLab, для которых вы его используете. В релизе 13.2 мы добавили интеграцию с Confluence, которая позволяет переходить с левой боковой панели сразу на рабочее пространство Confluence в новой вкладке.

Redirect wikis to Confluence Workspace

Документация по Confluence и оригинальный тикет.

Диффы для страниц вики

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Пользователи Git часто используют диффы для наблюдения, ревью и отслеживания изменений. В GitLab 13.2 мы добавили поддержку просмотра диффов на страницах вики. Теперь вы сможете легко просматривать построчные изменения между двумя версиями страницы через историю коммитов вики.

Спасибо Steve Mokris и Greg за эту фичу!

Wiki page diffs

Документация по просмотру изменений между двумя версиями страницы и оригинальный тикет.

Изменение подписей для индикаторов покрытия

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

Ранее при использовании в проекте нескольких индикаторов покрытия кода, для которых рассчитываются разные значения, на каждом из индикаторов можно было отображать только слово coverage. Из-за этого было сложно определить, к чему относится то или иное значение.

Теперь вы как maintainer или владелец проекта можете изменять текст на индикаторах покрытия, чтобы вам было удобнее отличать разные индикаторы, используемые в вашем проекте.

Спасибо Fabian Schneider за эту фичу!

Custom text for coverage badges

Документация по изменению подписей для индикаторов покрытия и оригинальный тикет.

Просмотр и управление групповыми обработчиками заданий

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

Теперь вы сможете воспользоваться новым пользовательским интерфейсом для управления своими групповыми обработчиками заданий. С новым интерфейсом вы можете просматривать, редактировать, ставить на паузу и останавливать любые обработчики заданий, связанные с вашей группой в GitLab. Это позволит проще выявлять потенциальные проблемы с обработчиками заданий для нескольких проектов одновременно.

View and manage group Runners

Документация по просмотру и управлению групповыми обработчиками заданий и оригинальный тикет.

Проверка регулярных выражений для правил очистки тегов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Package

Вы можете регулярно удалять старые теги из реестра контейнеров, создав правило очистки тегов для проекта. Такие правила основаны на создаваемых пользователями регулярных выражениях. К сожалению, задание container_repository:cleanup_container_repository, которое запускается для этих выражений, выдает 25% ошибок. Когда задание Gitlab::UntrustedRegexp считает регулярное выражение недействительным и правило не выполняется, об этом никому не сообщается.

Мы сделали первый шаг к решению этой проблемы. Теперь GitLab проверяет регулярное выражение с помощью библиотеки re2, так что вы не сможете сохранить невалидный шаблон. Мы также добавили в документацию шаблоны некоторых распространенных регулярных выражений. Вы можете узнать больше подробностей и наш план по дальнейшим улучшениям этой фичи в соответствующем эпике.

Документация по правилам очистки тегов и оригинальный тикет.

Ключевое слово для неразвертываемых заданий в .gitlab-ci.yml

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Release

Исторически сложилось так, что ключевое слово environment:action не отражало точно задания окружения, которые не завершались развертыванием, как, например, задания, ждущие подтверждения и сборка образов для будущих развертываний. В GitLab 13.2 задания теперь могут иметь ключевое слово prepare, которым вы обозначите, что это неразвертываемое задание, и ваша активность по развертыванию будет отображаться более точно.

Annotate non-deployment jobs in .gitlab-ci.yml

Документация по подготовке окружений CI и оригинальный тикет.

Доступ только для чтения к API состояний Terraform

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Configure

Пользователи GitLab без прав доступа Maintainer на данный момент не могут взаимодействовать с командами Terraform, включая команду terraform plan, которая создает план выполнения, полезный в рабочих процессах развертываний. В GitLab 13.2 пользователи с ролью Developer получат доступ только для чтения к API состояний Terraform, что позволит большему числу пользователей делать вклад в разработку без риска неправомерного использования.

Документация по разрешениям Terraform и оригинальный тикет.

Системные заметки на страницах с информацией по уведомлению

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Когда вы изменяете статус уведомления, назначаете уведомление другому члену команды или создаете тикет из уведомления, GitLab отслеживает эти события и отображает их как заметки на странице с информацией по уведомлению. Заметки дают нужный контекст для ответственных лиц, что позволяет вашей команде лучше работать над обработкой уведомлений и предотвращает ненужную повторную работу.

Alert detail pages display system notes

Документация по системным заметкам для уведомлений и оригинальный тикет.

Горячие клавиши для панелей метрик

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

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

Документация по горячим клавишам в метриках и оригинальный тикет.

Поиск текстовых данных в списке уведомлений

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Уведомления часто бывают надоедливыми. Чтобы помочь вам находить релевантные уведомления для обработки, мы добавили поиск по тексту в списке уведомлений.

Документация по поиску уведомлений и оригинальный тикет.

Запуск тестовых уведомлений

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

После настройки систем уведомлений для передачи данных на вашу конечную точку REST API в GitLab, вы теперь сможете отправлять тестовые уведомления, чтобы убедиться, что вы все настроили правильно.

Документация по запуску тестовых уведомлений и оригинальный тикет.

Аутентификация через роли Amazon ECS для расширенного глобального поиска

(STARTER, PREMIUM, ULTIMATE) Доступность

Ранее при подключении к сервису Amazon Elasticsearch на AWS для включения расширенного глобального поиска вы могли использовать только статические учетные данные или роли EC2 IAM через Aws::InstanceProfileCredentials. Теперь вы также можете использовать для аутентификации роли IAM для задач Amazon ECS.

Спасибо Jason Barbier @kusuriya за эту фичу!

Документация по включению Elasticsearch и оригинальный тикет.

Упрощенные формы настроек Geo с проверкой вводимых данных

(PREMIUM, ULTIMATE) Доступность

Системные администраторы могут настраивать Geo для отдельных нод через интерфейс администратора. Ранее формы этих настроек содержали устаревшие элементы интерфейса и слишком много ненужной информации, а некоторые поля в них не проверялись как следует.

В GitLab 13.2 настройки отдельных нод Geo и общие настройки Geo проверяют данные, вводимые пользователем, и делятся на несколько секций (например, «Управление производительностью и ресурсами»), что позволит системным администраторам быстрее находить нужные настройки.

Geo settings forms easier to read and validate input

Документация по репликации Geo и оригинальный тикет.

Поддержка репликации реестров пакетов GitLab в Geo

(PREMIUM, ULTIMATE) Доступность

Geo теперь поддерживает реестры пакетов на вторичных нодах. Это позволяет распределенным командам получать к ним доступ через ближайшую ноду, что уменьшает задержку и повышает удобство для пользователей. Кроме того, ресурсы реестра пакетов теперь можно восстановить со вторичной ноды.

На данный момент мы не поддерживаем верификацию этих ресурсов, но планируем добавить ее в будущем.

Документация по репликации Geo и оригинальный эпик.

Patroni в качестве альтернативы repmgr

(CORE, STARTER, PREMIUM, ULTIMATE) Доступность

Для самостоятельных установок GitLab Patroni теперь доступен как альтернативное решение для репликации и отказоустойчивости PostgreSQL. У Patroni есть несколько преимуществ перед repmgr, который он заменяет:

Использование Patroni с Geo сейчас тестируется и пока не поддерживается. Этот переход поддерживает цели GitLab по проверке решений, которые мы внедряем. Gitlab.com использовал Patroni для управления отказоустойчивостью с 2018 года, что делает его проверенным решением. Repmgr будет доступен в Omnibus GitLab до релиза GitLab 14.0. Для инструкций по установке Patroni в экспериментальном режиме, смотрите документацию GitLab по Patroni.

Документация по Patroni и оригинальный эпик.

Возможность отсрочить удаление проекта

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Manage

В GitLab 13.2 мы улучшили процесс удаления проекта, чтобы он был согласован для всех планов, и ввели переключатель на уровне группы, управляющий периодом задержки перед окончательным удалением. Ранее поведение по умолчанию для удаления проекта было различным для разных планов. Проекты удалялись сразу в планах Free/Core и Bronze/Starter и могли быть восстановлены в течение 7 дней в планах Silver/Premium и Gold/Ultimate.

Теперь это поведение одинаково для всех планов и удаление проекта означает немедленное удаление. Чтобы сохранить гибкость в этом рабочем процессе, мы ввели на уровне группы переключатель «Отложенное удаление проектов» для групп и проектов, где ключевым условием является предотвращение потери данных. Удаление проекта должно быть легким, когда это необходимо, и предостерегать от непоправимых действий для организаций с более строгими требованиями по сохранению интеллектуальной собственности.

Документация по переключателю «Отложенное удаление проектов» и оригинальный эпик.

Подсветка просроченных или отозванных ключей SSH и личных токенов доступа в хранилище учетных данных

(ULTIMATE) Стадия цикла DevOps: Manage

Управление учетными данными пользователей является важным элементом любой программы обеспечения соответствия и требует наглядности для специалистов, которым поручено следить за соблюдением правил. В хранилище учетных данных теперь выделяются цветом даты ключей SSH или личных токенов доступа, срок действия которых истек. Кроме того, отозванные токены также будут отмечены, чтобы предоставить специалистам по соответствию необходимую информацию для проведения проверки учетных данных пользователя.

Это изменение — часть более широкой инициативы, направленной на то, чтобы сделать управление учетными данными в GitLab более простым, дружественным и гибким, что должно помочь вам реализовывать процессы, которые подходят больше всего для ваших пользователей и организации.

Show expired or revoked SSH keys and PATs in the credentials inventory

Документация по администрированию хранилища учетных данных и оригинальный тикет.

Одновременное редактирование статусов нескольких тикетов в списке

(ULTIMATE, GOLD) Стадия цикла DevOps: Plan

При изменении или планировании нескольких тикетов может быть утомительно изменять статус каждого тикета отдельно. Теперь вы можете одновременно редактировать статусы сразу нескольких тикетов в списке тикетов.

Bulk edit issue health status from the Issues List

Документация по массовому редактированию и оригинальный тикет.

Сворачивание майлстоунов на дорожной карте

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Plan

При совместном использовании, просмотре или презентации вашей дорожной карты (в русской локализации GitLab «план развития») часто бывает необходимо свернуть некоторые разделы или адаптировать информацию в зависимости от аудитории. GitLab теперь позволяет сворачивать раздел «Майлстоуны» дорожной карты, чтобы отображать больше эпиков или скрывать ненужную информацию.

Collapse milestones on the Roadmap

Документация по настройке отображения дорожной карты и оригинальный тикет.

Новая страница создания эпика

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Plan

Создавайте эпик и заполняйте свое описание, добавляйте метки и устанавливайте даты начала и окончания за один шаг с нашей новой страницей создания эпика.

New epic creation page

Документация по созданию нового эпика и оригинальный тикет.

Служба поддержки переехала в Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Plan

В релизе 9.1 мы добавили службу поддержки (Service Desk) к нашему плану Premium, позволяя командам напрямую связываться с внешними пользователями по электронной почте.

Прислушавшись к нашим пользователям, мы поняли, что служба поддержки — полезная функция для команд любого размера. В GitLab 13.2 вы можете включить службу поддержки независимо от вашего плана GitLab.

Документация по службе поддержки и оригинальный тикет.

Пакетная обработка предложений

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Предложение изменений в мерж-реквестах позволяет легко предлагать улучшения, но если предложений очень много, применять их по одному может быть утомительно.

С пакетной обработкой предложений вы можете применять сразу несколько предложений, что быстрее и проще. Также полезно держать в порядке историю коммитов в мерж-реквесте. Спасибо Jesse Hall за этот вклад!

Документация по пакетной обработке предложений и оригинальный тикет.

Поддержка TLS в кластере Gitaly

(CORE, STARTER, PREMIUM, ULTIMATE) Стадия цикла DevOps: Create

Кластер Gitaly теперь поддерживает безопасность транспортного уровня (TLS), что означает, что все коммуникации между Gitaly и его клиентами, GitLab и Praefect, шифруются, когда TLS включен как для компонентов Gitaly, так и для компонентов Praefect. Это полезно при развертывании GitLab в сети с другими внутренними службами, которые не являются доверенными.

Ранее связь между GitLab и Gitaly поддерживала шифрование TLS, но шифрование не поддерживалось при использовании Praefect, который является компонентом кластера Gitaly.

Документация по поддержке TLS для Gitaly и Praefect и оригинальный тикет.

Упрощение поиска дизайнов по тикету

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Поскольку работа над дизайном является существенной частью процесса разработки продукта, важно, чтобы дизайны, которые вы создали и добавили в тикеты, можно было легко найти. До 13.2 у нас была вкладка Design (Дизайн), но теперь мы передвинули дизайны вверх, так что они находятся прямо под описанием тикета.

Это будет способствовать большему сотрудничеству, поскольку все будут видеть дизайны прямо под описанием тикета.

Make it easier to find Designs on an issue

Документация по управлению дизайнами и оригинальный тикет.

Обратная связь в реальном времени в Web IDE

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Create

Работа с CI в GitLab быстрая и гибко настраиваемая, но может быть сложно запомнить все параметры конфигурации, причем опечатка может сделать ваш файл .gitlab-ci.yml нерабочим. Чтобы упростить настройку конвейера GitLab CI, с этого релиза Web IDE предоставляет линтинг и автодополнение в реальном времени при редактировании файлов .gitlab-ci.yml.

Линтинг и автодополнение встроены сразу в Web IDE: всплывающие подсказки помогут вам понять, в чем ошибка. В настоящее время эти подсказки основаны на внесенной сообществом схеме на Schemastore, но мы продолжаем разрабатывать встроенную схему в рамках GitLab.

Real-time feedback for .gitlab-ci.yml in Web IDE

Документация по подсветке синтаксиса в Web IDE и оригинальный тикет.

Транзакционные записи для кластера Gitaly (бета-версия)

(CORE, STARTER, PREMIUM, ULTIMATE) Стадия цикла DevOps: Create

Кластер Gitaly позволяет реплицировать репозитории Git на несколько «теплых» нод Gitaly. Это повышает отказоустойчивость, удаляя единичные точки отказа. Однако, поскольку операции записи в настоящее время реплицируются асинхронно, на сервере GitLab изначально имеется только одна копия изменения.

In GitLab 13.2, transactional write operations to Git repositories can be enabled for Gitaly Cluster. When this option is enabled and an update is pushed to GitLab, the write operation will be proxied to the replica Gitaly nodes. The write operation will be coordinated between the Gitaly nodes using the two-phase commit protocol, so that they agree on the new state of the repository. Write transactions are currently limited to operations pushed over the HTTP and SSH Git interfaces, and does not include write operations via the GitLab interface like the Web IDE.

В GitLab 13.2 для кластера Gitaly могут быть разрешены транзакционные операции записи в репозитории Git. Когда эта опция включена и обновление передается в GitLab, операция записи будет проксироваться на ноды реплики Gitaly. Операция записи будет координироваться между нодами с использованием протокола двухфазного коммита, чтобы они согласовывали новое состояние хранилища. Транзакции записи в настоящее время ограничиваются операциями, передаваемыми через Git HTTP и SSH, и не включают в себя операции записи через интерфейс GitLab, например, в Web IDE.

Документация по настройке Gitaly и Praefect и оригинальный тикет.

Виджет качества кода в мерж-реквестах перенесли в Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

В релизе 9.3 GitLab добавил проверку качества кода в наш план Starter/Bronze, что позволило видеть изменения качества кода непосредственно в мерж-реквестах. С тех пор наши пользователи писали о том, что эти данные полезны для команд любого размера, включая отдельных участников. В 13.2 вы сможете видеть отчеты о качестве кода в мерж-реквестах независимо от плана GitLab.

Документация по виджету качества кода в мерж-реквестах и оригинальный тикет.

Исключайте файлы в путях артефактов CI

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

С новым синтаксисом exclude вы можете запретить добавление отдельных файлов в артефакты. Больше не понадобится явной ссылки на путь каждой папки, которую нужно добавлять ​​к артефакту (чтобы не включать слишком много). Поддержка подстановочных символов (включая «двойную звездочку» для сопоставления в любом подкаталоге) позволяет легко исключать целые подкаталоги.

Документация по исключению файлов-артефактов и оригинальный тикет.

Уведомление, когда система удаляет мерж-реквест из цепочки

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Verify

Если вы добавляете мерж-реквест в цепочку, но система удаляет его из-за какой-то проблемы, теперь вы получите уведомление в виде задачи To-Do. Это означает, что вы можете добавить мерж-реквест в цепочку, зная, что либо мерж произойдет автоматически, либо вы получите уведомление об ошибке. Если мерж не удастся, вы сможете быстро исправить ошибки и повторно отправить свой мерж-реквест, а не внезапно обнаружить позже, что он не был смержен.

Документация по триггерам To-Do и оригинальный тикет.

Визуальная корреляция триггерного задания с нижестоящим конвейером

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Verify

Если вы когда-нибудь смотрели на сложный график конвейеров, желая, чтобы был простой способ узнать, какое задание вызвало конкретный нижестоящий конвейер, мы вас услышали. Теперь вы можете просто навести курсор мыши на нисходящий конвейер, чтобы увидеть всплывающую подсказку с именем задания, которое запустило его. И нет необходимости просматривать все имена заданий, чтобы найти то самое, потому что наведение также выделяет триггерное задание в вышестоящем конвейере.

Visual correlation of trigger job to downstream pipeline

Документация по триггерам и оригинальный тикет.

SAST анализатор для JavaScript и TypeScript теперь доступен для всех

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Secure

Мы хотим помочь разработчикам писать лучший код и меньше беспокоиться о распространенных ошибках безопасности. Статическое тестирование безопасности приложений (SAST) помогает предотвратить уязвимости безопасности, позволяя разработчикам легко идентифицировать частые проблемы безопасности по мере создания кода и активно устранять их. В рамках наших обязательств по управлению GitLab мы делаем наш анализатор SAST для JavaScript и TypeScript (ESLint) доступным для каждого плана GitLab. Это позволит всем пользователям GitLab, разрабатывающим на JavaScript или TypeScript, использовать сканирования безопасности SAST для своих проектов.

В рамках этого шага мы избавились от нашего устаревшего анализатора TSLint, поскольку его функциональность теперь присутствует в ESLint. Вы можете узнать больше об этом в разделе Deprecations. Мы продолжим переводить другие анализаторы SAST с открытым исходным кодом (OSS) в план Core. Вы можете следить за нашим эпиком «SAST to Core», чтобы увидеть, когда станут доступными другие анализаторы, и даже внести свой вклад в этот процесс.

JavaScript & TypeScript SAST analyzer available for all

Документация по анализаторам SAST и поддерживаемым языкам и фреймворкам и оригинальный тикет.

Поддержка нескольких планов Terraform в мерж-реквестах

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Configure

В течение одного конвейера Terraform может быть затронуто несколько инфраструктурных окружений. Ранее GitLab в мерж-реквесте включал быстрый обзор ожидаемых изменений только для одного окружения. Начиная с GitLab 13.2 виджет Terraform в мерж-реквесте поддерживает несколько файлов артефактов Terraform.

Мы очень ждем ваши отзывы о наших фичах Terraform. Если у вас есть идеи по улучшению виджета для мерж-реквеста, поделитесь с нами в соответствующем эпике.

Документация по виджету Terraform для мерж-реквестов и оригинальный тикет.

Доступ к Opsgenie из пользовательского интерфейса GitLab

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Opsgenie — это популярный инструмент управления ИТ-сервисами для выполнения операционных задач, включая оповещения и управление инцидентами. В GitLab 13.2 вы можете запустить рабочий процесс Opsgenie прямо из GitLab. Хотите оставить отзыв об этой интеграции? Внесите свой вклад в этот тикет и расскажите нам, как мы можем сделать эту интеграцию лучше!

Access Opsgenie from the GitLab user interface

Документация по интеграции с Opsgenie и оригинальный тикет.

Автоматическая группировка идентичных оповещений для уменьшения визуального шума

(PREMIUM, ULTIMATE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Команды, обслуживающие ИТ-сервисы, получают сотни или тысячи оповещений в день. GitLab теперь убирает дубликаты и организует ваши входящие оповещения, показывая вам количество оповещений и сохраняя при этом ваш список оповещений управляемым и полезным. Ваши оповещения связываются с инцидентами, созданными из них, помогая вам отслеживать, какие оповещения были обработаны, а с какими еще нужно разобраться.

Документация по автоматической группировке одинаковых оповещений и оригинальный тикет.

OAuth для настроенных вручную серверов Prometheus

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

При использовании настроенного вручную (внешнего) сервера Prometheus может возникнуть проблема с аутентификацией пользователей из GitLab. В Gitlab 13.2 теперь вы сможете использовать OAuth, чтобы аутентификация была безопасной и простой в администрировании.

Документация по настройке сервера Prometheus в GitLab и оригинальный тикет.

Установка переменных панели метрик с помощью PromQL

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

Теперь вы можете устанавливать значения переменных на панели метрик с помощью PromQL. Ваши запросы PromQL могут возвращать список значений для использования в качестве динамических переменных на панели метрик.

Set metrics dashboard variables with PromQL

Документация по панели метрик и шаблонным переменным и оригинальный тикет.

Короткие ссылки для панелей метрик

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) Стадия цикла DevOps: Monitor

GitLab 13.2 представляет короткие ссылки (“Vanity URLs”) для панелей метрик, чтобы помочь вам быстрее перемещаться между различными панелями и проектами.

Документация по навигации по панелям метрик и оригинальный тикет.

Ускорение репликации Geo для проектов

(PREMIUM, ULTIMATE) Доступность

GitLab Geo позволяет распределенным командам работать более эффективно, создавая и поддерживая локальную копию GitLab. Такая копия уменьшает задержки, поэтому командам не нужно ждать долгой загрузки файлов на больших расстояниях. В этом обновлении Geo мы улучшаем работу базы данных с изменениями. Чтобы определить, что нужно реплицировать из первичной базы данных, Geo сравнивает базу данных отслеживания с вторичной базой данных, доступной только для чтения. Ранее если запросы к базе данных Geo не завершались из-за тайм-аута, данные не могли быть успешно реплицированы.

В GitLab 13.2 мы используем новый подход к синхронизации проектов, тем самым исключая возможность тайм-аута при обращении к базе данных. Мы также улучшили способ удаления данных из вторичных нод для всех источников данных, что повышает общую масштабируемость и производительность GitLab Geo.

Эти итерации приближают нас к устранению зависимости Geo от сторонних оберток данных, которые были добавлены для повышения производительности, но делают структуру Geo более сложной и затрудняют обслуживание.

Документация по репликации с использованием Geo и оригинальный эпик.

Geo поддерживает приостановку репликации базы данных на вторичной ноде Geo

(PREMIUM, ULTIMATE) Доступность

Geo реплицирует данные с первичной ноды Geo в одну или несколько вторичных. Хотя Geo поддерживает приостановку репликации для репозиториев и файлов через интерфейс администратора, приостановить репликацию базы данных ранее было невозможно. В 13.2 Geo поддерживает приостановку и возобновление репликации всех реплицируемых данных, включая базу данных PostgreSQL, с помощью новых команд gitlab-ctl geo:pause и gitlab-ctl geo:resume на вторичной ноде Geo.

Это позволяет системным администраторам приостанавливать всю репликацию на вторичной ноде Geo при выполнении критических операций обслуживания на первичной ноде. В случае сбоя на первичной ноде никакие изменения не реплицируются на приостановленную вторичную, на которую затем можно будет аварийно переключиться.

Документация по репликации и приостановке репликации Geo и оригинальный тикет и оригинальный эпик.

Команда Geo для «предполетной проверки» аварийного переключения проверяет состояние репликации

(PREMIUM, ULTIMATE) Доступность

При выполнении аварийного переключения с использованием GitLab Geo системные администраторы должны выполнить ряд «предполетных проверок» с помощью команды gitlab-ctl promotion-preflight-checks.

В GitLab 13.2 команда gitlab-ctl promotion-preflight-checks теперь автоматически проверяет состояние репликации и информирует вас о результатах, устраняя шаг, который раньше выполнялся вручную. Команда gitlab-ctl promote-to-primary-node также поддерживает принудительный режим, что означает, что аварийное переключение произойдет, даже если некоторые проверки завершатся неудачно.

Это один из шагов в направлении упрощения аварийного переключения, и мы планируем автоматизировать «предполетные проверки» в будущем.

Документация по аварийному переключению и «предполетным проверкам» и оригинальный тикет.

Нулевое время простоя при переиндексации для расширенного глобального поиска

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) Доступность

В предыдущей версии расширенного глобального поиска, если вам нужно было провести переиндексацию, приходилось временно отключать расширенный глобальный поиск. Результаты поиска были недоступны, когда старый индекс был уже удален, а новый еще не создан. В 13.2 мы добавили псевдонимы индексов, что позволяет переиндексировать без каких-либо простоев, просто нажав кнопку в настройках администратора. Теперь расширенный глобальный поиск можно переиндексировать, не нарушая рабочий процесс ваших пользователей. Это важно, потому что для больших инстансов переиндексация занимает заметное время.

Zero downtime reindexing for Advanced Global Search

Документация по индексации из интерфейса администратора и оригинальный тикет.


Подробные release notes и инструкции по обновлению/установке можно прочитать в оригинальном англоязычном посте: GitLab 13.2 released with Planning Iterations and Load Performance Testing.

Над переводом с английского работали @cattidourden, @maryartkey, @ainoneko и @rishavant.