Мы рады представить релиз GitLab 11.6, в котором мы расширили возможности бессерверной архитектуры на GitLab и добавили групповые кластеры Kubernetes для упрощения работы с нативной облачной инфраструктурой.
Деплой бессерверных разработок в любое облако через GitLab
Обработка бессерверных вычислений происходит динамически, и при выполнении кода система обращается к облачным ресурсам, таким образом оптимизируя выделение и распределение ресурсов, требуемых для его запуска. Популярность этого подхода среди разработчиков растет, ведь он позволяет им сосредоточиться на том, что действительно важно — например, на написании кода — и не требует понимания базовой инфраструктуры, на которой будет работать ваше ПО.
Бессерверные вычисления на GitLab используют Knative, платформу на Kubernetes, предназначенную для создания и развертывания бессерверных проектов, а также для управления ими. Эта фича предоставляет разработчикам простой способ создавать свои бессерверные разработки и управлять ими наряду с другим кодом в уже знакомом интерфейсе. Для бизнесов бессерверная архитектура позволяет использовать мультиоблачную стратегию и избежать привязки к конкретному облачному провайдеру.
GitLab продолжает упрощать разработку нативных облачных приложений
С помощью встроенного реестра контейнеров и интеграции с Kubernetes GitLab позволяет вам начать работать с контейнерами и облачной разработкой проще, чем когда-либо. Начиная с релиза 11.6 пользователи могут создавать групповые кластеры Kubernetes, которые можно будет использовать во всех проектах в группе или ее подгруппах. Это ещё больше упрощает настройку нативных облачных проектов и позволяет разработчикам сфокусироваться на разработке качественных приложений.
К праздникам мы выпустили много классных фич
Наши любимые: предлагаемые изменения, веб-терминал в Web IDE и график уязвимостей на панели безопасности группы. Вклады команд теперь удобнее принимать, так как предлагаемые в комментарии к диффу мерж-реквеста (в русской локализации GitLab «запрос на слияние») изменения можно принять одним щелчком мыши. Также в этом релизе стала доступна первая фича Web IDE, выполняемая на сервере — веб-терминал. На добавленной в прошлом релизе панели безопасности группы появилась новый график уязвимостей, которая показывает изменение количества уязвимостей изо дня в день, позволяя отследить метрики изменений.
Читайте далее и вы узнаете все о праздничных нововведениях в релизе GitLab 11.6!
MVP этого месяца — Suzanne Hillman
Suzanne помогла GitLab в ревью нашего недавнего продукта, Voluntary Product Accessibility Template (VPAT), организовав и уточнив открытые задачи; также она помогла оценить текущее состояние продукта с помощью статических инструментов анализа и ручного тестирования. VPAT обеспечивает соответствие стандартам доступности (для людей с ограниченными возможностями восприятия и взаимодействия), и этот продукт — большой шаг в улучшении доступности GitLab для всех, чтобы каждый мог использовать его и вносить свой вклад в разработку.
Спасибо, Suzanne! Мы очень ценим твой вклад, который поможет большему числу людей использовать GitLab.
Основные фичи релиза GitLab 11.6
Бессерверные функции (альфа-версия)
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
На основе интеграции с Knative (оригинальная статья, перевод), добавленной в релизе GitLab 11.5, мы представляем новую возможность — бессерверные функции под управлением Knative, которые пользователи могут создавать в своем репозитории.
Вам потребуется определить ваши функции в файле serverless.yml
репозитория и использовать шаблон .gitlab-ci.yml
. Каждая функция будет размещена на вашем кластере, а Knative возьмет на себя все заботы о них и о расширении на основе требуемых ресурсов. Эта фича даст возможность разработчикам приложений быстрее выпускать новые версии, не волнуясь о настройке и поддержке инфраструктуры.
Документация по бессерверным приложениям и функциям и оригинальный тикет
Запуск работ CI/CD для мерж-реквестов
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Запуск конкретной работы в случае мерж-реквеста стал проще. Использование значения merge_requests
совместно с ключевыми словами only/except
позволит вам настроить запуск работы только при мерж-реквесте, или в обратных случаях. Это дает больше контроля над поведением конвейера и также открывает доступ к новым переменным окружения, указывающим на целевую ветку и ID мерж-реквеста, что позволяет реализовывать другие стратегии поведения.
Документация по запуску работ после мерж-реквестов и оригинальный тикет
Предлагаемые изменения
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Совместная работа над мерж-реквестами стала проще — больше не требуется копировать код для принятия предлагаемых изменений. Теперь изменения могут быть предложены при комментировании диффа мерж-реквеста и приняты одним щелчком мыши любым пользователем, у которого есть права на запись в этой ветке.
Сейчас эта фича работает на GitLab.com, и может быть подключена в пользовательских инстансах GitLab с помощью подключаемой фичи diff_suggestions
, а в релизе GitLab 11.7 эта фича будет включена по умолчанию.
Документация по предлагаемым изменениям и оригинальный тикет
Веб-терминал для Web IDE (бета-версия)
(ULTIMATE)
Web IDE позволяет легче и быстрее вносить изменения и обрабатывать фидбэк мерж-реквеста, убирая необходимость сохранять изменения и локально менять ветки. Но вносить большие изменения без терминала для запуска тестов, экспериментов с REPL (Read-Eval-Print Loop — «цикл „чтение — вычисление — вывод“») и компилирования кода непросто.
Теперь через Web IDE вы можете запустить веб-терминал, работать в редакторе и иметь под рукой терминал так же, как вы бы работали локально — отслеживая, что приходит через API или проверяя ваш синтаксис в REPL. Веб-терминал — первая фича с обработкой на стороне сервера в Web IDE, она настраивается с помощью нового файла .gitlab/.gitlab-webide.yml
.
Интерактивные веб-терминалы пока недоступны на GitLab.com и на данный момент изменения не синхронизируются между редактором и веб-терминалом. Вы можете следить за прогрессом разработки здесь, в следующем релизе мы добавим поддержку зеркалирования изменений и предпросмотр в реальном времени.
Документация по веб-терминалам и оригинальный тикет
Шаблоны проектов для групп
(PREMIUM, ULTIMATE, SILVER, GOLD)
Шаблоны проектов помогают пользователям быстро начинать новые проекты. В релизе 11.2 (оригинальная статья, перевод) мы представили шаблоны проектов для пользовательских инстансов.
С GitLab 11.6 мы рады объявить, что эта фича теперь доступна и для групп. Создайте специальную подгруппу через настройки новой группы, и проекты этой подгруппы станут доступны как шаблоны. Это упрощает начальную настройку и обеспечивает единообразие среди ваших проектов, особенно в больших структурах, таких, как архитектура микросервисов.
Документация по шаблонам проектов и оригинальный тикет
Кластеры Kubernetes для групп (бета-версия)
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Часто командам разработчиков, работающих над связанными проектами, нужно использовать один и тот же кластер Kubernetes для развертывания своих приложений. Начиная с GitLab 11.6 пользователи смогут создавать кластеры Kubernetes на уровне группы, которые можно будет использовать во всех проектах, которые содержатся в данной группе или ее подгруппах.
Это значительно упростит и ускорит процесс настройки инфраструктуры ваших проектов и позволит сосредоточить усилия на разработке крутых приложений.
Документация по кластерам для групп и оригинальный тикет
Менеджер сертификатов для Kubernetes
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Обеспечение безопасности критически важно при развертывании приложений на стадии разработки. Менеджер сертификатов — это контроллер для управления сертификатами на основе Kubernetes, который автоматически создает и обновляет SSL-сертификаты, используя Let’s Encrypt.
При использовании этого SSL-сертификата для приложений, обслуживаемых через Auto DevOps, и для развертываний через JupyterHub будет включаться HTTPS.
Документация по установке приложений и оригинальный тикет
График уязвимостей на панели безопасности группы
(ULTIMATE, GOLD)
Панель безопасности группы — это основной инструмент, при помощи которого специалисты по безопасности могут управлять уязвимостями в своих проектах. Одним из важнейших требований является знание того, как число уязвимостей меняется изо дня в день, и понимание того, справляется ли команда с решением возникающих проблем достаточно быстро.
В релизе GitLab 11.6 мы добавили на панель безопасности группы график уязвимостей, который позволит вам легко отслеживать изменения уязвимостей за последний месяц. Для каждого уровня опасности вы сможете посмотреть значения показателей уязвимостей и, перемещаясь по графику, более детально рассмотреть конкретный момент времени.
Документация по панели безопасности группы и оригинальный тикет
Другие улучшения в GitLab 11.6
Аутентификация при помощи аппаратных токенов на основе смарт-карт
(PREMIUM, ULTIMATE)
Для организаций, в которых разработчики работают в средах, использующих аппаратные токены с сертификатами стандарта X.509 и возможности смарт-карт для аутентификации (например, YubiKeys или карт общего доступа (CAC)), GitLab теперь поддерживает локальное создание пользователя и вход в систему.
Теперь пользователи могут использовать аппаратные токены для получения доступа к GitLab, что повышает безопасность и позволяет избавиться от необходимости управлять данными о логинах/паролях, не связанных с каким-либо физическим устройством.
Документация по аутентификации на основе смарт-карт и оригинальный тикет
Информация о групповых подписках на GitLab.com
(FREE, BRONZE, SILVER, GOLD)
Для пользователей с платной подпиской на GitLab.com мы сделали информацию о статусе вашей подписки более доступной для понимания.
В версии 11.6 мы улучшили раздел Billing под страницей групповых настроек, чтобы он включал подробную информацию о вашей групповой подписке. Теперь вы легко сможете просмотреть места, занятые сейчас, и места, которые были заняты в прошлом, а также время начала и конца вашей подписки.
Документация и оригинальный тикет
Отправка уведомлений в Discord
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Начиная с этого релиза, вы сможете интегрировать GitLab с Discord, что позволит вам отправлять уведомления на канал в Discord в качестве ответа на события GitLab, такие как пуши в репозиторий, загрузка обновлений тикетов, мерж-реквесты и другие.
Спасибо Vitaliy Klachkov за эту фичу!
Документация по Discord-уведомлениям и оригинальный тикет
Повышение тикетов до эпиков
(ULTIMATE, GOLD)
Разработка программного обеспечения — это творческий процесс, в котором участвует вся команда, и все идеи должны приниматься на рассмотрение. Мы добавили новую фичу, с помощью которой идеи, которые появляются в виде тикетов, теперь легко могут превращаться в эпики.
Теперь вы можете легко повысить тикет до эпика, используя новое быстрое действие. Просто введите /promote
в комментарии к тикету и нажмите Comment. Тикет будет закрыт, а его содержимое будет скопировано в новый эпик, который появится в родительской группе проекта. Помимо названия, описания и обсуждений под тикетом будут скопированы метки, участники и даже лайки/дизлайки.
Документация по повышению тикетов до эпиков и оригинальный тикет
Улучшенный внешний вид панели настроек при фильтрации тикетов и мерж-реквестов
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Мы обновили дизайн представления результатов поиска для тикетов и панелей настройки мерж-реквестов, чтобы они соответствовали дизайну в остальных частях GitLab.
Документация по поиску в GitLab и оригинальный тикет
Сохранение порядка сортировки тикетов, мерж-реквестов и эпиков для каждого пользователя
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Мы добавили возможность пользователям задавать собственный порядок сортировки тикетов, мерж-реквестов, эпиков и даже графиков задач. Информация об атрибуте, по которому вы сортируете, и о порядке сортировки (восходящий или нисходящий) сохраняется в системе, так что когда вы снова вернетесь к списку объектов, который просматривали ранее, он будет отсортирован точно так же, как до этого.
Документация по поиску эпиков и оригинальный тикет
Просмотр открытых и закрытых эпиков на дорожной карте
(ULTIMATE, GOLD)
Недавно мы добавили в GitLab возможность закрывать эпики, что позволяет отмечать завершенные или нерелевантные эпики.
Начиная с этого релиза, мы также добавляем возможность просматривать открытые эпики, закрытые эпики или оба вида сразу на дорожных картах. Это будет полезно для тех команд, которым важно сосредоточиться только на оставшихся и срочных задачах (открытых эпиках), или которые хотят просмотреть завершенные задачи (закрытые эпики), или которым нужно увидеть на одной карте и завершенные, и текущие задачи. С нашей новой фичей такая гибкость становится доступной. Кроме того, теперь ваши настройки сохраняются в системе для каждого пользователя, так что, когда вы снова вернетесь к дорожной карте, она будет выглядеть точно так же, как и в предыдущий раз.
Документация по графику задач и оригинальный тикет
Отображение схожих задач
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
По мере того, как проекты растут, разработчики создают новые тикеты для возникающих задач, и зачастую эти тикеты начинают повторяться.
Для того, чтобы помочь людям быстрее находить ответы и сэкономить время maintainer-ам проекта, теперь при создании нового тикета отображаются тикеты, похожие на него. Они отображаются при вводе заголовка в веб-форме создания тикетов. Это поможет пользователям сразу находить похожие тикеты, переключаться на них и немедленно включаться в актуальные обсуждения, что дает еще больше возможностей для совместной работы в GitLab.
Документация по похожим тикетам и оригинальный тикет
Поддержка зеркалирования пушей через SSH с аутентификацией по открытому ключу
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Зеркалирование репозиториев позволяет копировать репозитории Git из одного места в другое. Это позволяет проще работать с несколькими инстансами GitLab при создании зеркала репозитория на другом сервере. Однако, некоторые целевые серверы дают доступ к Git только через SSH с аутентификацией по открытому ключу.
GitLab теперь поддерживает зеркалирование через SSH с аутентификацией по открытому ключу помимо аутентификации через SSH по паролю и пуш-зеркалированию через HTTP.
Документация по пуш-зеркалированию и оригинальный тикет
Maintainer проекта теперь может удалять конвейеры через API
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Удалить конвейер теперь можно с помощью API. Это полезно в случаях, когда в конвейере произошла утечка секретной информации, было создано много ненужных конвейеров или возникли другие проблемы, когда конвейеры необходимо удалить.
Документация по удалению конвейеров и оригинальный тикет
Триггерные переменные теперь по умолчанию скрыты в пользовательском интерфейсе
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Все триггерные переменные теперь по умолчанию скрыты в пользовательском интерфейсе и показываются только при явном указании пользователем. Это предотвратит непреднамеренное раскрытие значений при совместном использовании экрана или создании скриншотов.
Документация по использованию триггерных переменных и оригинальный тикет
Одно email-уведомление для ревью мерж-реквестов
(PREMIUM, ULTIMATE, SILVER, GOLD)
Ревью кода — это необходимая практика для каждого успешного проекта, но получать по электронной почте уведомление для каждого комментария — иногда излишне. Теперь отправляется только одно уведомление со списком всех комментариев, чтобы не замусоривать ваш почтовый ящик.
Ревью мерж-реквестов (оригинальная статья, перевод), представленные в GitLab 11.4, облегчают ревью кода, позволяя одним действием составлять, рецензировать и отправлять комментарии.
Эта фича теперь доступна на GitLab.com, а также может быть включена для пользовательских инстансов GitLab с помощью подключаемой фичи (feature flag, feature toggle) batch_review_notification
. Она будет включена по умолчанию для пользовательских инстансов в GitLab 11.7.
Документация по ревью мерж-реквестов и оригинальный тикет
Улучшенная страница просмотра проекта
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
В релизе GitLab 11.6 мы продолжаем работать с пользовательским интерфейсом нашей страницы проекта: поправили отображение заголовка проекта, улучшили контрастность и поработали с пустыми местами, чтобы сделать акцент на часто используемых действиях и улучшить общую структуру информации.
Документация по проектам и оригинальный тикет
Всплывающая подсказка о профиле пользователя
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
В этом релизе мы добавили расширенные всплывающие подсказки при наведении курсора на имя пользователя, пока на страницах задачи и мерж-реквеста. Раньше мы отображали только полное имя, а теперь будут видны полное имя пользователя, ID, компания, информация о местоположении и статус пользователя, если он доступен.
Кроме добавления расширенной всплывающей подсказки на других страницах, мы работаем и над последующими улучшениями всплывающих подсказок для задач и мерж-реквестов, которые скоро будут доступны.
Навигационная цепочка включает 'New' и 'Edit' для майлстоунов и меток
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
В этом релизе мы улучшаем нашу навигационную цепочку (breadcrumb navigation) GitLab для майлстоунов и меток. При создании или редактировании майлстоуна или метки, в конце навигационной цепочки присутствует дополнительный элемент ‘New’ или ‘Edit’, который теперь согласуется с тикетами и мерж-реквестами.
Спасибо George Tsiolis за эту фичу!
Поддержка HTTPS для Auto DevOps
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Auto DevOps в GitLab направлен на решение многих проблем, возникающих при поставке качественного программного обеспечения. GitLab 11.6 еще больше расширяет его возможности, добавляя поддержку HTTPS.
Используя менеджер сертификатов для Kubernetes, Auto DevOps будет автоматически обслуживать приложения через HTTPS, обеспечивая повышенную безопасность для ваших приложений.
Документация по Auto DevOps и оригинальный тикет
Поддержка HTTPS для JupyterHub
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
JupyterHub обеспечивает командам, работающим с данными, мощный способ обмена информацией. Часто конфиденциальные данные требуют повышенной безопасности.
Используя менеджер сертификатов для Kubernetes, JupyterHub будет автоматически обслуживать Jupyter по HTTPS, обеспечивая повышенную безопасность ваших конфиденциальных данных.
Документация по установке приложений на кластеры и оригинальный тикет
Отображение кода ответа HTTP от Kubernetes
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Для облегчения и ускорения устранения неполадок при установке приложений, управляемых GitLab, в кластер Kubernetes, мы теперь передаем код ответа HTTP от Kubernetes.
Документация по управлению кластерами и оригинальный тикет
Неограниченные количество бесплатных гостевых пользователей планов Gold
(ULTIMATE, GOLD)
В версии 11.0 мы ввели неограниченное количество гостевых пользователей для планов Ultimate.
Теперь мы распространяем это на планы Gold, так что группы, использующие самый высокий тарифный план GitLab.com, будь то пользовательский сервер или облачный SaaS, могут получить пользу от добавления гостей без дополнительных затрат.
Документация по правам доступа пользователей и оригинальный тикет
Запрещение администраторам играть роль пользователей
(CORE, STARTER, PREMIUM, ULTIMATE)
В некоторых организациях разрешение администраторам играть роль пользователей представляет угрозу безопасности, поскольку действия администраторов приписываются пользователю, от имени которого они действуют. Для решения этой проблемы мы добавляем настраиваемую опцию, чтобы можно было отключить эту фичу.
Документация по запрещению администраторам играть роль пользователей и оригинальный тикет
Фильтрация markdown front matter для TOML и JSON
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)
Front matter — это метаданные, включенные в начало документа markdown, часто используемые генераторами статических сайтов, такими как Jekyll и Hugo. Когда GitLab преобразовывает файлы markdown в репозиториях в HTML для отображения, front matter сохраняет свой формат и отображается как есть, для ясности.
В дополнение к разделителям из YAML (---
), GitLab теперь также поддерживает разделители из TOML (+++
), разделители из JSON (;;;
) и произвольные разделители, что позволяет поддерживать любой формат данных.
Спасибо Travis Miller за эту фичу!
Документация по front matter и оригинальный тикет
Поддержка Auto DevOps для Панели безопасности группы
(ULTIMATE, GOLD)
В релизе GitLab 11.5 (оригинальная статья, перевод) мы выпустили Панель безопасности группы, где отображаются результаты SAST.
С релизом 11.6 мы добавляем в шаблон Auto DevOps последнюю версию определения работы SAST, и теперь результаты полностью совместимы с панелью безопасности группы, поэтому пользователи могут пользоваться обеими функциями одновременно.
Примечание: Для определения новой работы SAST требуется GitLab Runner 11.5 или выше, более подробную информацию вы можете прочитать в этом посте в блоге.
Документация по Auto DevOps и оригинальный тикет
Подробные release notes и инструкции по обновлению/установке можно прочитать в оригинальном англоязычном посте: GitLab 11.6 released with Serverless and Group-level Clusters.
Над переводом с английского работали cattidourden, rishavant, ainoneko и maryartkey.
Автор: aionin