Вышел GitLab 11.9 с обнаружением ключей в коде и множественными правилами подтверждения мерж-реквестов

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

Быстрое оповещение при утечке секретных ключей

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

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

Слаженное управление изменениями

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

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

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

Обновление: правила подтверждения были временно отключены на GitLab.com и по умолчанию выключены в релизе 11.9 для пользовательских инстансов в связи с возникшими проблемами, подробности в этом тикете.

ChatOps теперь с открытым исходным кодом

ChatOps в GitLab — мощный инструмент автоматизации, предназначенный для запуска заданий CI/CD и проверки их статуса в чат-приложениях типа Slack и Mattermost. Представленный в релизе 10.6 (оригинальная статья, перевод), ChatOps изначально находился в плане Ultimate. Но благодаря нашей стратегии развития продукта и приверженности открытому исходному коду, мы периодически перемещаем фичи в младшие планы, и никогда — в старшие.

Мы думаем, что ChatOps будет полезен всем, как и участие сообщества в его разработке, так что в релизе 11.9 мы открываем исходный код ChatOps и перемещаем его в планы Free и Core.

И даже больше!

В этом релизе мы выпускаем много классных нововведений, вам наверняка захочется узнать о них все: аудит подключаемых фич, мерж-реквест для исправления уязвимости, шаблоны для задач CI/CD, связанных с безопасностью и не только.

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

GitLab MVP badge

MVP этого месяца — Marcel Amirault

Marcel постоянно помогает нам с улучшением документации GitLab. Он отправил немало мерж-реквестов, которые заметно улучшили качество и читаемость нашей документации. Домо аригато, Marcel, мы очень это ценим!

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

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

(ULTIMATE, GOLD)

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

С релизом 11.9 мы добавляем новую проверку “Secret Detection” для обнаружения таких данных. Содержимое репозитория будет просканировано на наличие ключей API и другой информации, которой там быть не должно. GitLab покажет результаты в отчете SAST в виджете мерж-реквеста, отчетах конвейера и панели безопасности.

Если SAST в вашем приложении уже подключен, никаких дополнительных действий не понадобится; также эта функциональность добавлена в конфигурацию Auto DevOps по умолчанию.

Detect secrets and credentials in the repository

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

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

(PREMIUM, ULTIMATE, SILVER, GOLD)

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

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

Обновление: правила подтверждения были снова отключены в связи с возникшими проблемами, подробности в этом тикете.

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

Merge request approval rules

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

Переместили ChatOps в план Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

ChatOps, функциональность, введенная в GitLab 10.6 для плана Ultimate, теперь находится в плане Core. ChatOps дает возможность запускать задания CI/CD с помощью Slack, используя специальные команды.

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

Move to Core

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

Аудит подключаемых фич

(PREMIUM, ULTIMATE, SILVER, GOLD)

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

Auditing for feature flags

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

Мерж-реквест для исправления уязвимости

(ULTIMATE, GOLD)

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

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

Vulnerability remediation merge request

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

Результаты Сканирования контейнеров на панели безопасности группы

(ULTIMATE, GOLD)

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

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

Container Scanning results in the group security dashboard

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

Шаблоны для заданий CI/CD, связанных с безопасностью

(ULTIMATE, GOLD)

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

С релизом GitLab 11.9 мы добавляем встроенные шаблоны для всех видов заданий, связанных с безопасностью, таких, как sast и dependency_scanning. Эти шаблоны будут совместимы с версией GitLab, в которой они поставляются.

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

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

CI/CD templates for security jobs

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

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

Ответы на комментарии

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Reply to comment

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

Шаблоны проектов для .NET, Go, iOS и Pages

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Чтобы упростить для наших пользователей создание новых проектов, мы добавили несколько новых шаблонов проектов:

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

Запрос подтверждений мерж-реквестов от владельцев кода

(PREMIUM, ULTIMATE, SILVER, GOLD)

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

Теперь GitLab поддерживает запрос подтверждения мерж-реквестов на основе того, какие файлы изменяются при мерже, через фичу Code Owners (владельцы кода). Владельцы кода назначаются через файл CODEOWNERS, аналогично назначению атрибутов git gitattributes.

Поддержка автоматического назначения владельцев кода для подтверждения мерж-реквестов была добавлена в GitLab 11.5 (оригинальная статья, перевод).

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

Перемещение файлов через Web IDE

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Для файлов и директорий теперь можно задавать новый путь в репозитории через Web IDE при переименовании файла или директории.

Move files in the Web IDE

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

Сортировка меток в алфавитном порядке

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

В GitLab 11.9 мы постарались сделать чтение этих меток более удобным. В тикетах, мерж-реквестах и эпиках метки, показываемые на боковой панели, теперь упорядочены в алфавитном порядке. При просмотре списков объектов алфавитный порядок меток также сохраняется.

Alphabetically ordered labels

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

Быстрое комментирование при фильтрации активности тикетов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Quickly comment when filtering issue activity

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

Изменение порядка вложенных эпиков

(ULTIMATE, GOLD)

Недавно мы добавили в GitLab вложенные эпики (оригинальная статья, перевод), что позволяет создавать эпики для эпиков (в дополнение к тикетам для эпиков).

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

Reorder child epics

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

Пользовательские системные сообщения в заголовке и футере на сайте и в email

(CORE, STARTER, PREMIUM, ULTIMATE)

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

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

Custom header and footer system message in web and email

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

Разделение тикеты на конфиденциальные и неконфиденциальные

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

В GitLab 11.9 вы сможете использовать фильтр для того, чтобы разделять тикеты на конфиденциальные и неконфиденциальные в списке тикетов. Также вы сможете делать это при работе с тикетами через API.

Спасибо Robert Schilling за эту фичу!

Filter by confidential issues

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

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

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

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

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

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Expand merge request diff to an entire file

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

Проверка формата корневого сертификата Kubernetes

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Мониторинг GitLab через Grafana

(CORE, STARTER, PREMIUM, ULTIMATE)

В этом релизе мы встроили Grafana в пакет Omnibus. Теперь разобраться в работе вашего инстанса будет проще чем когда-либо.

Для использования этой фичи установите grafana['enable'] = true в gitlab.rb, и Grafana будет доступна в https://your.gitlab.instance/-/grafana. В ближайшем будущем мы также планируем добавить сюда панель активности GitLab работающую «из коробки».

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

Запуск определенных заданий после мерж-реквестов только при изменении конкретных файлов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

В GitLab 11.6 мы добавили возможность задавать атрибут only: merge_requests заданиям, чтобы пользователи запускали определенные задания только при создании мерж-реквестов.

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

Спасибо Hiroyuki Sato за эту фичу!

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

Ссылка на новый тикет из перемещенных и закрытых тикетов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Несмотря на то, что перемещение тикета отражается в системном сообщении, для пользователей может быть не очевидно, что данный тикет был закрыт по причине перемещения.

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

Link to new issue from a moved and closed issue

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

Просмотр эпиков-предков в боковой панели эпиков

(ULTIMATE, GOLD)

Недавно мы добавили вложенные эпики (оригинальная статья, перевод), что позволяет создавать эпики эпиков.

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

View ancestor epics in the epic sidebar

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

Переход к последним доскам задач

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

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

В GitLab 11.9 мы также добавили раздел Recent («Недавние») в выпадающем списке, чтобы вы могли быстро перейти к доскам задач, которыми вы недавно пользовались.

Navigate to recent issue boards

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

Интеграция YouTrack

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

В этом релизе мы также интегрируемся с YouTrack от JetBrains.

Спасибо Kotau Yauhen за эту фичу!

YouTrack integration

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

Дедупликация объектов Git для публичных форков (Beta)

(CORE, STARTER, PREMIUM, ULTIMATE)

Создание форков позволяет любому внести свой вклад в проекты с открытым исходным кодом без необходимости раздавать всем права на запись. Вместо этого весь репозиторий копируется в новый проект. При этом хранить полную копию популярных репозиториев часто неэффективно. Используя фичу Git alternates, форки теперь разделяют общие объекты из апстрима в пуле объектов для рационального использования дискового пространства.

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

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

Настраиваемый размер дерева файлов в мерж-реквесте

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Resizeable merge request file tree

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

Горячие клавиши для перехода к следующему или предыдущему файлу в мерж-реквесте

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

При просмотре изменений в мерж-реквесте, нажмите ] или j для перехода к следующему файлу и [ или k — к предыдущему.

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

Теперь разработчики могут создавать защищенные ветки

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

«Защищенные ветки» (Protected Branches) предотвращают пуш или слияние кода, не прошедшего ревью. Однако, когда никто не имеет права пушить в защищенную ветку, никто не сможет создать новую защищенную ветку (например, ветку релиза).

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

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

Упрощение .gitlab-ci.yml для бессерверных проектов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Основываясь на функциональности include из GitLab CI, мы значительно упростили шаблон gitlab-ci.yml для бессерверных проектов, оставляя простор для изменений в будущих релизах без необходимости менять этот файл.

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

Фильтрация списка мерж-реквестов по назначенным подтверждающим

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

Ревью кода является неотъемлемой практикой любого успешного проекта, но ревьюверу может быть трудно отслеживать, какие мерж-реквесты требуют его внимания.

В GitLab 11.9 список мерж-реквестов теперь можно отфильтровать по назначенным подтверждающим, чтобы вы могли найти мерж-реквесты, в которые вы были добавлены как подтверждающий.

Спасибо Glavin Wiechert за эту фичу!

Filter the merge request list by assigned approvers

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

Ограничение доступа к JupyterHub только для членов группы или участников проекта

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

С GitLab 11.9 вход в инстансы JupyterHub, развернутые через интеграцию Kubernetes, разрешен только с правами доступа «Developer» (в группе или проекте).

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

Поддержка имен хостов Ingress

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

При развертывании контроллера Kubernetes для Ingress некоторые платформы (например, гугловый GKE) могут вернуть IP-адрес, а другие (например, амазоновский EKS) могут возвращать DNS-имя хоста.

Наша интеграция Kubernetes теперь поддерживает оба типа конечных точек для отображения в разделе проекта clusters.

Спасибо Aaron Walker за эту фичу!

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

Добавлено задание на сборку Auto DevOps для тегов

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Этап “Auto Build” в Auto DevOps создает сборку вашего приложения, используя Dockerfile проекта или buildpack от Heroku.

С GitLab 11.9, результирующий образ Docker, построенный в конвейере тегов, будет называться так же, как обычный образ, но будет помечен тегом tag вместо контрольной суммы SHA коммита.

Спасибо Aaron Walker за эту фичу!

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

Регулируемые диапазоны времени для графиков панели безопасности

(ULTIMATE, GOLD)

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

В GitLab 11.9 теперь можно выбрать временной интервал этого графика уязвимости. Значение по умолчанию — последние 90 дней, но вы можете установить интервал в 60 или 30 дней, основываясь на желаемом уровне детализации.

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

Adjustable time ranges for security dashboard charts

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

Code Climate обновили до версии 0.83.0

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

Оценка качества кода (Code Quality) в GitLab использует движок Code Climate чтобы проверять, как новое изменение может повлиять на «здоровье» вашего кода и проекта.

С GitLab 11.9 мы обновили этот движок до последней версии (0.83.0), чтобы сделать доступными в GitLab преимущества поддержки дополнительного языка и статического анализа (linting) кода.

Спасибо члену команды GitLab Core Takuya Noguchi за эту фичу!

Документация по Code Quality.

Масштабирование и прокрутка панели метрик

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Zoom and scroll the metrics dashboard

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

SAST для TypeScript

(ULTIMATE, GOLD)

TypeScript — относительно новый язык программирования на основе JavaScript.

С GitLab 11.9, Static Application Security Testing (SAST) может анализировать и обнаруживать уязвимости в коде на TypeScript, показывая их в виджете мерж-реквеста, на уровне конвейера и на панели безопасности. Вам не нужно изменять текущее определение задания sast, и это задание также уже включено в Auto DevOps.

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

SAST для многомодульных проектов Maven

(ULTIMATE, GOLD)

Проекты Maven часто организованы для агрегирования нескольких модулей в одном репозитории. Ранее GitLab не мог правильно сканировать такие проекты, а об уязвимостях не сообщалось разработчикам и исследователям безопасности.

GitLab 11.9 представляет улучшенную поддержку SAST для такой специфической конфигурации проекта, так что теперь она может быть протестирована на наличие уязвимостей «из коробки». Из-за гибкости наших анализаторов такой вид конфигурации обнаруживается автоматически, и вам не нужно ничего менять, чтобы увидеть результаты для ваших многомодульных приложений Maven. Как обычно, те же улучшения также доступны как часть Auto DevOps.

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


Подробные release notes и инструкции по обновлению/установке можно прочитать в оригинальном англоязычном посте: GitLab 11.9 released with secrets detection and multiple MR approval rules.

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