Хабрахабр

[Перевод] GitLab 12.2: направленные ациклические графы для пайплайнов и управление дизайном

2 поможет командам оптимизировать пайплайны, расширить возможности совместной работы и управлять взаимозависимостями между проектами.
Потрясающий выпуск GitLab 12. Подробности ниже.

Более быстрые и гибкие пайплайны

Но в некоторых случаях эффективность пайплайнов GitLab CI/CD далека от идеала. Пайплайны CI нужны для автоматизации задач сборки и тестирования, чтобы ускорить поставку ПО и избежать ошибок, присущих обработке вручную. 2 теперь поддерживает направленные ациклические графы (DAG), чтобы создавать зависимости детализированных заданий и управлять ими, а не полагаться на последовательные этапы. GitLab 12. Это суперэффективный инструмент, с которым ваши пайплайны CI станут работать быстрее и продуктивнее.

Управление дизайном

В выпуске 12. Разработка ПО — это командный спорт, и мы хотим сделать его доступным для всех. Управление дизайном упростит отправку, контроль версий и совместную работу над артефактами дизайна, чтобы работа команд стала еще эффективнее благодаря единому источнику истины. 2 мы предлагаем новые возможности, чтобы включить дизайнеров и управление дизайном в GitLab.

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

Зависимости мердж-реквестов между проектами

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

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

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

Самый ценный сотрудник этого месяца (MVP) — Фабио Папа (Fabio Papa)

2 появился новый параметр, с которым не только владельцы, но и мейнтейнеры могут создавать подгруппы. Благодаря Фабио в GitLab 12. 0 и GitLab 11. А еще Фабио внес ценный вклад в выпуски GitLab 12. 10.

Спасибо, Фабио!

Главные фичи GitLab 12.2

Направленные ациклические графы для пайплайнов GitLab

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

Во многих пайплайнах нужно пройти все тесты до деплоя. В простом пайплайне все задания на одном этапе должны выполняться до перехода на следующий этап. Например, проект создает приложения для Android и iOS в многоэтапном пайплайне. Но в более сложных пайплайнах иногда хочется, чтобы задания на одном этапе начинались до завершения предыдущего этапа. Общее время вычисления будет таким же, а физическое время будет отличаться. Скорее всего, вы захотите, чтобы развертывание приложений iOS началось сразу после прохождения тестов для iOS, чтобы не ждать, пока будут пройдены все тесты для Android. С ключевым словом needs можно указать, что одно задание должно обязательно выполняться после другого. Чтобы упростить работу в таких случаях и дать вам эффективный и гибкий инструмент для определения сложных пайплайнов, мы добавили ключевое слово needs:, которое определяет отношения между заданиями в .gitlab-ci.yml. Внутри GitLab мы реализовали эту функцию с помощью направленного ациклического графа. Когда первое задание будет выполнено, зависящее от него задание на следующем этапе сразу начнет выполняться, не дожидаясь остальных заданий на предыдущем этапе. Во-первых, пайплайн выполняется эффективнее, а во-вторых на базе этого можно внедрить и другие расширенные возможности. По сути, когда GitLab создает пайплайн из вашей конфигурации, он использует сложный набор правил, чтобы определить последовательность заданий, а не просто приступать к выполнению заданий на одном этапе только после завершения предыдущего. Используйте ключевое слово needs уже сегодня, чтобы создавать пайплайны, как в примере выше, или применяйте его в интересных новых сценариях монорепозиториев, когда несколько несвязанных между собой служб хранятся в одном репозитории и не должны ждать друг друга.

Аннотации к дизайнам

PREMIUM, ULTIMATE, SILVER, GOLD

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

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

Для управления дизайном нужно включить Large File Storage (LFS). Сейчас управление дизайном на стадии альфа и может меняться в любое время без предварительного уведомления.

Зависимости мердж-реквестов между проектами

PREMIUM, ULTIMATE, SILVER, GOLD

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

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

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

PREMIUM, ULTIMATE, SILVER, GOLD

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

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

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

PREMIUM, ULTIMATE, SILVER, GOLD

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

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

PREMIUM, ULTIMATE, SILVER, GOLD

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

Утверждение безопасности в мердж-реквестах

ULTIMATE, GOLD

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

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

Указание переменных при запуске задания вручную

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

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

Переменные среды с областью действия теперь доступны в Core

CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD*

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

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

Реестр NPM теперь поддерживает аутентификацию с персональным токеном доступа GitLab

PREMIUM, ULTIMATE, SILVER, GOLD

NPM требует аутентификацию с OAuth, и до выпуска 12. Реестр GitLab NPM позволяет разработчикам Javascript собирать, публиковать и версионировать пакеты NPM с помощью своего экземпляра GitLab. Пользователям приходилось создавать собственный токен (за пределами GitLab), чтобы использовать реестр NPM, и невозможно было использовать двухфакторную аутентификацию. 2 персональный токен доступа GitLab не поддерживал OAuth. Это решение не масштабировалось для корпоративных клиентов.

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

Список пользователей, отметивших проект звездой

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

Благодаря вкладу сообщества теперь можно просматривать список пользователей, которые отметили определенный проект. Чтобы следить за достойными внимания проектами, можно отметить их звездой. Список также доступен в Projects API. Для этого нужно нажать на количество таких пользователей на странице проекта.

Отмеченные проекты можно просмотреть в профиле пользователя.

Спасибо за вклад, Камил Стэпс (Camil Staps)!

Мейнтейнеры могут создавать подгруппы

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

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

Спасибо за вклад, Фабио Папа (Fabio Papa)!

Новые опции push для мердж-реквестов

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

Теперь применять небольшие изменения можно быстро и просто. GitLab уже поддерживает открытие мердж-реквестов и настройку их применения после успешного завершения пайплайна — и все в команде Git push.

2 появились новые параметры push: В выпуске GitLab 12.

  • Настройка удаления ветки после слияния.
  • Изменение заголовка мердж-реквеста.
  • Изменение описания мердж-реквеста.

Улучшенное развертывание дифф-файла

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

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

2 скрытые диапазоны строк можно открывать полностью или постепенно. В GitLab 12. Раньше скрытые диапазоны строк можно было открывать только постепенно, снизу диапазона.

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

PREMIUM, ULTIMATE, SILVER, GOLD

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

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

STARTER, PREMIUM, ULTIMATE, BRONZE, SILVERGOLD

Будет проще, если назначать владельцев кода файлам. Часто неочевидно, кто должен проверять изменения. 2 теперь можно назначать владельцами кода целые группы, а не только пользователей по имени на GitLab и электронной почте. После назначения вы видите владельцев при просмотре файла и автоматически добавляете их как утверждающих для мердж-реквестов.
В GitLab 12. Если назначить группу, владельцы кода не отстанут в случае изменений команды, особенно при использовании LDAP для управления членством в группах.

Git Blame API

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

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

2 новый Blame API извлекает эту информацию напрямую с GitLab, а не через репозиторий. В GitLab 12. Это полезно для скриптов и автоматизации на основе пользователей, которые недавно меняли файл.

Спасибо, Олег Зубченко, за твой вклад.

Загрузки для управления дизайном

PREMIUM, ULTIMATE, SILVER, GOLD

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

Контроль версий для дизайнов

PREMIUM, ULTIMATE, SILVER, GOLD

2 мы представляем контроль версий для дизайнов. В GitLab 12. Благодаря контролю версий можно легко просматривать изменения со временем и отслеживать эти изменения и прогресс.

Множественное удаление для реестра контейнеров

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

Со временем образы накапливаются и захламляют диск. Очень важно соблюдать порядок в реестре контейнеров. Если тегов слишком много, растягивается время загрузки страницы управления реестром контейнеров в Packages > Container Registry, и ее бывает сложно использовать.

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

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

Сортировка списка задач вручную

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

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

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

Порядок сохраняется во всем экземпляре для всех списков задач проекта и списков задач групп, где включен режим Manual.

Пространство имен Kubernetes для каждой среды

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

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

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

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

Удаление Cert Manager из управляемых приложений Kubernetes GitLab

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

Если вы установили Cert Manager в кластер Kubernetes через GitLab Kubernetes, теперь его можно удалить одним щелчком на странице кластера.

Удаление Helm из управляемых приложений Kubernetes GitLab

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

Если вы установили Helm в кластер Kubernetes через GitLab Kubernetes, теперь его можно удалить одним щелчком на странице кластера.

Удаление Knative из управляемых приложений Kubernetes GitLab

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

Если вы установили Knative в кластер Kubernetes через GitLab Kubernetes, теперь его можно удалить одним щелчком на странице кластера.

Отключение уведомлений по эл. почте для группы или проекта

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

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

Фильтрация проектов по имени при импорте из Bitbucket Server

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

Но если таких проектов тысячи, замучаешься выбирать репозитории Bitbucket. Импортировать существующие проекты из Bitbucket Server на GitLab должно быть просто.

2 мы упрощаем эти миграции и представляем фильтр на странице импорта Bitbucket Server, где можно указать имена репозиториев, которые нужно импортировать. В выпуске 12. Мы с удовольствием добавляем этот фильтр во все импортеры проекта в будущих выпусках.

Файл блокировки, не допускающий несколько экземпляров раннера на одном хосте

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

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

Улучшенные примеры для автоматического разделения тестов

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

Есть опенсорс-решения, например Test Boosters, которые совершенствуют этот процесс и разделяют конфигурацию теста на несколько файлов, автоматизируя эту часть настройки. У нас уже есть ключевое слово parallel, с которым можно контролировать и гибко настраивать параллельные тесты (или выполнять вообще любое задание параллельно), но разработчику приходится много настраивать, и иногда логика разделения просто дублируется. Мы обновили документацию для ключевого слова parallel, чтобы сделать процесс более очевидным и повысить эффективность пайплайнов.

Улучшенная маскировка переменных для символов @ и :

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

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

Ярлыки и аннотации для задач с помощью GFM в оповещениях из внешних экземпляров Prometheus

ULTIMATE, GOLD

Мы добавили поле gitlab_incident_markdown, где GitLab ищет оповещения. Если у вас есть экземпляр Prometheus, который управляется за пределами GitLab, мы упростили сортировку и назначение инцидентов. GFM (GitLab Flavored Markdown) можно добавить к файлам конфигурации оповещений в AlertManager и использовать, чтобы автоматически назначать и помечать задачи, открытые по оповещениям. Оно отображается над инцидентами в разделе Summary.

Ярлыки для задач, открытых оповещениями Prometheus с инцидентом

ULTIMATE, GOLD

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

Встроенные метрики Prometheus в задачах

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

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

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

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

Чтение и запись примечаний администратора о пользователях через API

STARTER, PREMIUM, ULTIMATE

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

Загрузка CSV-файла диаграмм Prometheus на панели мониторинга с метриками

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

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

Панель мониторинга безопасности в представлении по умолчанию для групп

ULTIMATE, GOLD

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

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

GitLab Runner 12.2

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

2! Сегодня мы выпустили GitLab Runner 12. GitLab Runner — это проект с открытым исходным кодом, который используется для запуска заданий CI/CD и отправки результатов обратно в GitLab.

Самые интересные изменения:

Полный список изменений можно найти в журнале изменений GitLab Runner: CHANGELOG.

Улучшение схем GitLab

CORE, STARTER, PREMIUM, ULTIMATE

Мы внесли следующие улучшения в схемы GitLab:

Улучшения Omnibus

CORE, STARTER, PREMIUM, ULTIMATE

  • GitLab 12.2 включает Mattermost 5.13 — альтернативу Slack с открытым кодом, в новый выпуск которого входят новые плагины для сообщества, интеграции DevOps и многое другое.
  • В GitLab 12.2 формула подсчета по умолчанию для рабочего процесса Unicorn была скорректирована, чтобы улучшить обработку параллельных запросов в больших деплоях. Формула изменилась с CPUs + 1 на int(CPUs * 1.5 +1).
  • Пакеты GitLab 12.2 теперь доступны для Debian Buster.
  • nginx обновлен до 1.16.1, поддержка TLS v1.3 и ECDSA теперь включена по умолчанию.
  • postgresql обновлен до 9.6.14 и 10.9.
  • gitlab-monitor обновлен до 4.2.0, graphicsmagick — до 1.3.33.
  • Чтобы улучшить безопасность и доступность, команда Redis KEYS теперь отключена по умолчанию. При желании эту и другие команды можно контролировать или скрыть.
  • Добавлена поддержка случайных кодов и политики безопасности контента для защиты от JavaScript XSS-атак. Эти параметры отключены по умолчанию.

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

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

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

2: Некоторые улучшения в GitLab 12.

Устаревшие фичи

Удаление страницы интеграции с сервисом Kubernetes

2. Страница интеграции с сервисом Kubernetes удалена в выпуске 12. 11. Ее заменит функционал кластера на уровне экземпляра, который появился в GitLab 11.

Дата удаления: 22 августа 2019 г.

Режим видимости Internal (внутренний) отключен на GitLab.com для новых проектов, групп и фрагментов кода.

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

А раз любой может зарегистрироваться и получить доступ на чтение ресурсов в режиме видимости Internal, между Internal и Public (общедоступным режимом) почти нет разницы. Но на GitLab.com регистрация пользователей открыта и доступна всем желающим.

Существующие ресурсы в режиме Internal останутся без изменений и в ближайшем будущем для них будет установлено Private. Поэтому с 30 июля новые проекты, группы и фрагменты кода смогут быть только общедоступными (Public) или закрытыми (Private). Владельцы могут изменить параметры видимости раньше.

Дата удаления: 30 июля 2019 г.

Требуется Ruby 2.6

2 для запуска требуется Ruby 2. Начиная с GitLab 12. Omnibus GitLab и GitLab Chart уже поставляются с Ruby 2. 6. 3, но пользователи исходных установок с версией Ruby 2. 6. 5 или раньше должны обновиться.

Дата удаления: 22 августа 2019 г.

Важные примечания об обновлении до GitLab 12.2

Понижение уровня cookie сеанса не поддерживается. Как указано в посте о критическом обновлении безопасности, будет сделана резервная копия существующих данных Grafana, Grafana будет сброшена до исходной конфигурации, и GitLab SSO будет единственным доступным режимом аутиентификации.
Аутентифицированное шифрование cookie Rails теперь включено, старые сеансы автоматически обновляются. 2 понижение версии приведет к тому, что все сеансы станут недействительными, и пользователей выкинет.
Как и GitLab 12. После перехода на выпуск 12. 1, выпуск GitLab 12. 0 и GitLab 12. 7.
Вы можете пропустить автоматическое обновление до PostreSQL 10. 2 автоматически увеличит версию PostgreSQL до 10. 7, создав /etc/gitlab/disable-postgresql-upgrade.

Журнал изменений

Ищите все эти изменения в журнале изменений:

Установка

Если вы настраиваете новую установку GitLab, посетите страницу загрузки GitLab.

Обновление

Загляните на страницу обновлений.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть