Главная » Хабрахабр » [Перевод] Вышел GitLab 11.0: Auto DevOps и управление лицензиями

[Перевод] Вышел GitLab 11.0: Auto DevOps и управление лицензиями

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

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

Просто сделайте коммит своего кода, и Auto DevOps займется всем остальным. Помимо предоставления возможностей совместной работы на публичных и приватных репозиториях, GitLab также упрощает весь процесс разработки при помощи обширного встроенного, а с этой версии — еще и автоматизированного, набора инструментов. Auto DevOps выходит в общий доступ (GA, General Availability) в GitLab 11. Auto DevOps — это заранее собранный полноценный CI/CD конвейер, который позволяет автоматизировать весь процесс поставки. 0.

0: Другие ключевые нововведения GitLab 11.

  • Управление лицензиями, которое автоматически находит лицензии по зависимостям ваших проектов;
  • Улучшенное тестирование безопасности вашего кода, контейнеров и зависимостей;
  • Новые возможности интеграции с Kubernetes;
  • Улучшенное Web IDE;
  • Улучшенное отображение эпиков и дорожных карт;
  • Инкрементное развертывание;
  • А также многое другое.

Для начала, давайте поподробнее пройдемся по этому списку.

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

«GitLab является ключевым компонентом в наших процессах разработки и поставки, благодаря чему мы увеличили нашу скорость поставки в четыре раза и серьезно упростили процесс совместной разработки в наших командах» — говорит Chris Hill, ведущий системный инженер информационно-развлекательного подразделения в Jaguar Land Rover.

Всем остальным занимается GitLab: автоматические сборки, тестирование, развертывание и даже мониторинг нашего приложения.» «Мы очень довольны Auto DevOps, поскольку он позволяет нам сфокусироваться на написании кода и бизнес-процессах.

Как правило, у каждого компонента имеются лицензионные ограничения и разрешения, которые нужно отслеживать и учитывать. Управление лицензиями (анализ компонентов ПО): Зачастую, программное обеспечение представляет собой сложное переплетение кода со сторонними компонентами (библиотеками, фреймворками и различными инструментами). 0 мы добавляем функциональность Управления Лицензиями (анализа компонентов ПО). В GitLab 11. Она будет встроенной в мерж-реквесты, откуда вы сможете отслеживать лицензии ваших компонентов.

Теперь вы сможете находить уязвимости еще раньше при помощи встроенного статического и динамического тестирования приложений, а также сканирования зависимостей и контейнеров. Безопасность: Мы продолжаем работу над улучшением встроенных возможностей безопасности GitLab. Net. Мы расширили зону покрытия статического тестирования безопасности приложений (SAST) — теперь оно поддерживается для Scala и . Также мы добавили новые элементы в отчеты SAST, теперь они предоставят вам еще больше деталей.

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

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

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

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

GitLab MVP badge

Для версии 11. Виталий внес большой вклад в развитие GitLab и уже был назван MVP несколько раз в этом году. Кроме того, после того, как мы приняли решение по добавлению функциональности сжатия и мержа коммитов (squash and merge) в GitLab Coer и GitLab.com free, Виталий взялся за эту работу и закончил ее к выходу этого релиза. 0 он проделал серьезную работу по актуализации технической стороны GitLab: Виталий перевел большинство из оставшихся тестов Spinach на RSpec, а также вложил много сил в улучшение GitLab для Rails 5. 0. Вот список всех задач, которые он выполнил для GitLab 11.

Скоро вы получите очередную посылку с подарками! И снова спасибо, Виталий!

Ключевые нововведения GitLab 11.0

Auto DevOps выходит в общий доступ (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

0. Первая бета-версия Auto DevOps была добавлена в GitLab 10. 0 Auto DevOps выходит в общий доступ (Generally Available). А в GitLab 11. Auto DevOps требует минимальной настройки и выполняет всю работу по вашему проекту от стадии сборки до продакшена и мониторинга.

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

Auto DevOps позволяет разработчикам сфокусироваться на том, что наиболее важно для их организации — поставке качественного кода.

Наш обновленный гайд по быстрому началу работы с Auto Devops можно посмотреть тут.

Auto DevOps Generally Available

Документация по Auto DevOps

Статусы конвейеров и информация о работах CI/CD в Web IDE (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Документация по Web IDE

CI/CD pipeline status and job traces in the Web IDE

Переключение между мерж-реквестами в Web IDE (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Документация по Web IDE

Switch between merge requests in the Web IDE

Управление лицензиями (ULTIMATE, GOLD)

Поэтому так распространены third-party библиотеки, зачастую они напрямую поставляются сервисами управления пакетами вроде RubyGems и npm. В реалиях современной разработки ПО большинство приложений используют сторонние компоненты для выполнения определенных функций; такой подход позволяет не начинать каждый проект с чистого листа. Однако, при таком подходе нужно следить за тем, чтобы лицензии сторонних компонентов были совместимы с вашим приложением, ведь конфликтующие лицензии могут привести к юридическим проблемам.

0 функциональность управления лицензиями. Для решения таких проблем мы добавляем в GitLab 11. Новые лицензии отображаются в виджете мерж-реквеста перед тем, как они станут частью ветки main. Она автоматически проходит по всем зависимостям в ваших проектах и агрегирует их лицензии.

Вы также можете включить эту функциональность вручную для кастомных определений .gitlab-ci.yml. Если вы используете Auto DevOps, управление лицензиями автоматически включено для ваших проектов.

Документация по управлению лицензиями

License Management

Авторизация SAML на уровне групп (бета-версия) (PREMIUM, ULTIMATE, SILVER, GOLD)

Зачастую для этих целей используется сервис идентификации (identity provider), который работает со всеми пользовательскими данными, поэтому мы добавили поддержку Security Assertion Markup Language (SAML) для групп. Грамотное управление пользовательскими данными — обязательное требование для крупных организаций.

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

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

Документация по SAML для групп

SAML single sign-on for Groups (Beta)

Новые темы навигации (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Мы добавили абсолютно новую красную тему, а также светлую версию для всех существующих тем.

Документация по настройкам профиля

New navigation themes

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

Сжатие и мерж коммитов в GitLab Core и GitLab.com Free (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Однако GitLab еще больше упрощает этот процесс: вы можете провести сжатие и мерж в один клик прямо из веб-интерфейса. Сжатие (squash) является частью функциональности git, так что разработчики могут выполнять эту команду на своем компьютере непосредственно перед мержем. Например, сопровождающие репозитория теперь могут сжимать коммиты, не обращаясь к автору изменений, что ускоряет и упрощает рабочий процесс.

Однако, множество пользователей говорили нам, что такая возможность будет полезна для всех уровней подписки, поэтому теперь она выходит в открытый доступ и становится доступной в GitLab Core и GitLab.com Free! Ранее эта функциональность была доступна только в GitLab Starter, GitLab.com Bronze и на более высоких уровнях.

Спасибо blackst0ne за его вклад в эту работу!

Squash and Merge in GitLab Core and GitLab.com Free

Документация по сжатию и мержу коммитов

Открытие проектов в Xcode (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

На июньской WWDC Apple анонсировали интеграцию Xcode с GitLab, что несомненно упростит работу с проектами Xcode на хосте GitLab.

При просмотре проектов Xcode в интерфейсе GitLab эта кнопка будет расположена рядом с Git URL для клонирования. Теперь GitLab поддерживает клонирование проектов, содержащих файлы .xcodeproj или .xcworkspace по нажатию кнопки «Open in Xcode».

Open projects in Xcode

Документация по открытию проектов в Xcode

Диапазоны дат для дорожных карт (ULTIMATE, GOLD)

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

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

Roadmap date ranges

Документация по диапазонам дат для дорожных карт

Неограниченное количество гостевых пользователей для Ultimate (ULTIMATE)

С целью повышения эффективности работы с GitLab, мы решили, что гостевые (Guest) посетители больше не будут занимать лимит пользователей инстанса Ultimate.

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

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

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

Списки исполнителей для досок задач (PREMIUM, ULTIMATE, SILVER, GOLD)

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

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

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

Вы сможете даже добавлять списки меток и списки исполнителей на одну и ту же доску.

Issue Board assignee lists

Документация по спискам исполнителей для досок задач

Назначение майлстоунов для дочерних подгрупп (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

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

Assign ancestor group milestones

Документация по майлстоунам

Задачи и мерж-реквесты подгрупп в API (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Документация по API GitLab

Токены развертывания для Auto DevOps в Kubernetes (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Это не позволяло кластеру совершать повторные fetch-операции образа (для масштабируемости, работы с отказами и т.д.) Раньше, при использовании Auto DevOps в частных или внутренних проектах, после завершения развертывания у Kubernetes не было доступа в регистр.

0 создается новый токен развертывания. С GitLab 11. Это гарантирует, что кластер может выполнять необходимые операции, и уменьшит вероятность отказов. Он предоставляет постоянный доступ к регистру, когда на приватных/внутренних проектах включен Auto DevOps.

Документация о токенах развертывания для Auto DevOps

Определение стратегии развертывания в настройках Auto DevOps (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

0, Auto DevOps позволяет настроить вашу стратегию развертывания в один клик. Начиная с GitLab 11. Возможность настроить это в один клик позволит вам меньше времени заниматься настройками развертывания и больше — кодить. При подключении Auto DevOps для вашего проекта вы сможете определить, развертывать ли ваш проект автоматически сразу в продакшн, или его предварительно нужно автоматически развернуть в тестовое окружение, а уже затем — вручную — в продакшен.

Specify deployment strategy from Auto DevOps settings

Документация по настройке развертывания с Auto DevOps

Переменные для определения политики развертывания для канареечных окружений (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Раньше пользователям Auto DevOps для запуска канареечного развертывания приходилось делать явную (explicit) специализацию шаблона Auto DevOps и определять желаемое поведение. Часто нам бы хотелось выкатывать изменения на небольшую часть пользователей или серверов, чтобы оценить влияние этих изменений до развертывания на всем окружении.

0, пользователи смогут определять свою политику относительно канареечного развертывания с помощью переменной окружения CANARY_ENABLED — быстро и без дополнительных настроек шаблона Auto DevOps. Начиная с GitLab 11.

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

Подтверждения всегда включены (STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

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

Чтобы упростить и оптимизировать эту фичу, теперь подтверждения будут включены для всех проектов GitLab (для планов Starter, Bronze и выше) по умолчанию. До этого релиза подтверждения нужно было включать в настройках проекта.

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

Always-on approvals

Документация о подтверждениях для мерж-реквестов

Загрузка параметров кластера из GKE (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

В GitLab 11. Создавать в GitLab кластеры Kubernetes теперь стало просто как никогда. Раньше для создания кластера при использовании GKE нужно было вводить все эти данные вручную. 0 значения полей «project» и «zones» автоматически загружаются из вашего аккаунта Google Kubernetes Engine (GKE) и для упрощения отображаются в виде списка.

Упрощенный процесс создания кластера позволит быстро поднимать кластеры из GitLab и ускорит развертывание ваших приложений.

Fetch cluster parameters from GKE

Документация по добавлению и созданию в GitLab нового кластера GKE

Отключение этапов Auto DevOps с помощью переменных (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Когда один или несколько этапов Auto DevOps (юнит-тестирование, проверка качества кода и т.п.) не нужны в вашем приложении, было бы здорово настроить конвейер так, чтобы он запускался только на тех этапах, которые вам нужны.

0 дает возможность пропускать один или несколько этапов Auto DevOps с помощью переменных окружения. Версия GitLab 11. Это позволит вам использовать преимущества Auto DevOps даже тогда, когда не все его этапы подходят для ваших нужд.

Документация по переменным окружения для Auto DevOps

Файлы LFS включаются в импорт проекта (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Git LFS помогает версионировать большие файлы с помощью Git за счет хранения их вне репозитория и ленивого скачивания их по мере необходимости — вместо клонирования.

За счет этого у вас получается полная копия репозитория, включая те самые объекты LFS. При импорте проекта из GitHub, Bitbucket Cloud или использовании Git URL, GitLab теперь импортирует также и объекты LFS. Ранее, объекты LFS не включались в импорт.

Документация по импорту проекта

Вкладка Operations (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

0 мы добавили раздел Operations в панель навигации — эти фичи теперь проще и быстрее найти. В GitLab 11. В будущих релизах мы добавим туда еще несколько секций, например, метрики и логи. В этом релизе Environments и Kubernetes переехали из CI/CD в Operations.

Operations tab

Документация по GitLab CI

SAST для .NET и Scala (ULTIMATE, GOLD)

Мы продолжаем делать наши инструменты безопасности для самых распространенных языков и фреймворков более доступными; как часть этого процесса мы непрерывно расширяем возможности системы статического тестирования безопасности приложений (SAST).

0 мы добавили поддержку двух новых языков: . В GitLab 11. Если вы уже используете Auto DevOps или последнюю версию определения работы sast в вашем файле .gitlab-ci.yml, вам не нужно ничего менять в своих проектах. NET и Scala.

Документация о SAST

Облачная диаграмма GitLab Helm теперь в бета-версии (CORE, STARTER, PREMIUM, ULTIMATE)

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

Документация по диаграмме GitLab Helm

Легкое развертывание и интеграция JupyterHub с GitLab (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

0 умеет по одному клику разворачивать JupyterHub в интегрированный кластер Kubernetes — он автоматически настроен для использования GitLab для бесшовной аутентификации. GitLab 11. Дополнительные возможности вроде HTTPS, фильтрации по группам и настраиваемых блокнотов будут добавлены в будущих релизах.

Easily deploy and integrate JupyterHub with GitLab

Документация по развертыванию JupyterHub

Расширенные значения веса задач (STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

Раньше вы могли назначать вес задачи только от 1 до 9 — но это ограничивало те команды, которые стремятся к более подробным оценкам. Вес задач в GitLab полезен для обозначения оценки усилий или каких-то других метрик, связанных с работой над задачей.

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

Expanded Issue Weight values

Документация по весу задач

Объединение системных уведомлений для последовательных обновлений описания задачи (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

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

Combined system note for successive issue description updates

Документация по задачам

Просмотр логов пода Kubernetes (ULTIMATE, GOLD)

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

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

View Kubernetes pod logs

Документация о логах пода

Роль Master переименована в Maintainer (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Поэтому даже в продукте GitLab мы ищем способы отразить ее. В команде GitLab мы стараемся построить самостоятельную культуру.

Это уберет негативный контекст, который мог быть связан с термином «Master», и, в то же время, термин «Maintainer» легко понять. Мы решили переименовать роль Master в роль Maintainer. С каждым маленьким шагом мы развиваемся и как продукт, и вместе как индустрия.

Master role renamed to Maintainer

Документация о правах доступа

Редизайн списка меток (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

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

Label lists redesign

Документация о метках

Консистентный формат названий для атрибута ‘scope’ API задач (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Атрибут ‘scope’ теперь использует значения переменных created_by_me и assigned_to_me. Мы сделали небольшое изменение для атрибута ‘scope’ API задач, чтобы привести его в соответствие формату змеиного регистра (snake case). 0 вам нужно использовать этот формат вместо предыдущего, в котором использовалось написание через дефис (kebab-case). Начиная с GitLab 11.

Документация по API задач

Поддержка регулярных выражений для выражений с переменными (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

7 мы добавили поддержку выражений с переменными для ключевых слов only и except. В GitLab 10. Эти ключевые слова определяют, нужно ли создавать работу, когда переменная существует или имеет определенное значение.

0 мы расширили этот синтаксис: теперь доступны регулярные выражения. В GitLab 11. Например, пропустить работу с определенным сообщением коммита. Вы сможете создавать гибкие определения, основанные на целом ряде параметров.

Regex support for variables expressions

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

Получение IP адреса GitLab Runner через API (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

6 мы добавили отображение IP адреса конкретного GitLab Runner в деталях веб-интерфейса. В GitLab 10. Это очень полезно для получения информации об инфраструктуре, управления ей и для отслеживания проблем.

0 мы также выдаем эту информацию по запросу API, так что теперь ее можно использовать в автоматизированных процессах. С GitLab 11.

За эту фичу спасибо Lars Greiss.

Документация по API GitLab Runner

GitLab Runner 11.0 (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

0. Также с этим релизом мы выпускаем GitLab Runner версии 11. GitLab Runner — это проект с открытым исходным кодом, используемый для запуска работ CI/CD и пересылки результатов обратно в GitLab.

Ключевые изменения этого релиза:

Полный список изменений вы найдете в CHANGELOG файле GitLab Runner.

Документация по GitLab Runner

Улучшено отслеживание устаревших настроек (CORE, STARTER, PREMIUM, ULTIMATE)

0 пакет Omnibus GitLab будет проверять gitlab.rb на устаревшие настройки до начала обновления. Начиная с GitLab 11. Это позволит существующим версиям продолжать корректно работать до тех пор, пока администратор не обновит проблемные настройки. В случае, если устаревшие настройки обнаружатся, пакет отменит процесс обновления до внесения любых изменений.

Документация по Omnibus GitLab

ID конвейера на уровне проекта (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Для этой цели полезен уникальный идентификатор, который изменяется каждый раз, когда создается новый конвейер. При запуске работ CI/CD для вашего проекта, иногда нужен способ отличить один запуск от другого. Но этот счетчик был один на весь инстанс GitLab, из-за чего он слишком быстро рос, угрожая проблемами с длинными номерами. Такая идентификатор уже был — для этого использовалась переменная окружения CI_PIPELINE_ID.

0 мы представляем другую переменную окружения: CI_PIPELINE_IID. В GitLab 11. Это значит, что такой счетчик будет увеличиваться только тогда, когда создается новый запуск в конкретном проекте. В ней содержится упоминание того, к какому проекту она относится. Числа не будут расти так быстро, как в случае с предыдущим счетчиком, а разработчики смогут использовать эту переменную в процессе релиза — например, как часть номера версии.

Документация по предопределенным переменным CI/CD

0 released with Auto DevOps and License Management. Подробные release notes и инструкции по обновлению/установке можно прочитать в оригинальном англоязычном посте: GitLab 11.

Над переводом с английского работали rishavant и sgnl_05.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Юнит тестирование скриптов баз данных

Принимая удобство в использовании юнит тестов на моем любимом С++, я попытался перенести свой опыт на TSQL, тем более что новый работодатель любит полезную инициативу на местах и раздает плюшки за оное. Просмотрел несколько известных фреймворкoв я пришел к выводу, ...

Теория счастья. Введение в мерфологию

Продолжаю знакомить читателей Хабра с главами из своей книжки «Теория счастья» с подзаголовком «Математические основы законов подлости». Это ещё не изданная научно-популярная книжка, очень неформально рассказывающая о том, как математика позволяет с новой степенью осознанности взглянуть на мир и жизнь ...