Привет! На связи Максим Рязанцев, DevOps-специалист в AGIMA. В начале недели GitLab выпустил новую версию — версию 16.0. Всего в ней более 55 новых фич и доработок. Мы с коллегами изучили этот список, разобрались, как нововведения повлияют на работу с Git. И теперь делимся коротким обзором. Как водится, большая часть изменений в облачной Ultimate-версии, но рано или поздно доступны они будут всем.

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

  1. В версии 16.0 доступен новый Value Streams-дашборд, который позволяет всем заинтересованным лицам следить за метриками. Авторы пишут, что это поможет быстрее ориентироваться и принимать решения. С помощью этого инструмента можно сравнивать метрики потока ценности и показатели уязвимости в заданные периоды времени. Еще он поможет на ранних этапах замечать тенденции к снижению эффективности и угрозы безопасности. В общем, удобный аналитический инструмент.

  2. В новом релизе увеличили производительность облачной версии на Linux. Пишут, что вдвое улучшили показатели vCPU & RAM для SaaS — для всех трех пакетов: бесплатный, Premium и Ultimate.

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

  4. Теперь Mobile DevOps-команды могут запускать CI/CD в облачной версии GitLab на Apple silicon (M1), чтобы создавать, тестировать и деплоить приложения для экосистемы Apple.

  5. Шаблоны комментариев внедрили вообще во всех версиях. Суть простая: иногда приходится оставлять одинаковые комментарии под ошибками, эпиками и т. д. Чтобы не печатать одно и то же десятки раз, вы можете просто вставить шаблонный комментарий. Создать шаблон просто: настройки > шаблоны комментариев.

  6. Управлять форками теперь можно через GitLab UI. Когда форк готов, нужно выбрать Create merge request, чтобы вышестоящий проект обновился. Раньше эти операции можно было делать через командную строку. Эта опция доступна во всех версиях, платных и бесплатных.

  7. Новая версия позволяет зеркалировать только необходимые ветки. Например, вы создаете зеркало репозитория, чтобы работать только с некоторыми ветками. Раньше приходилось делать полное зеркало. Теперь можно ограничить количество отзеркаленных веток.

  8. Web IDE теперь доступен всем и во всех версиях. GitLab пишет, что получили отличную обратную связь от пользователей Beta-версии, и теперь редактор кода Web IDE будет использоваться повсеместно. Из интересного: он умеет давать рекомендации по коду.

  9. Удаленные рабочие пространства теперь доступны в Beta-версии для общедоступных проектов. Это, по сути, персональная среда разработки в облаке. В GitLab уверены, что это позволит ускорить процесс подключения к новому проекту. Когда вы настроили GitLab для Kubernetes и все зависимости в кластере, можно описать свою среду разработки в файте типа .devfile.yaml и сохранить его в общедоступном проекте. Потом вы или ваша команда можете создавать рабочую среду на основе этого файла и работать в ней через Web IDE.

  10. Интеграция с SecureFlag. Начиная с версии 14.9, система GitLab сама учится находить уязвимости. Но в новом релизе к этому добавили еще и интеграцию SecureFlag, в основе которого CWE.

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

  12. В этом пункте GitLab просто сообщает, что теперь многие его процессы работают за счет искусственного интеллекта. Речь пока только про облачную Ultimate-версию. Фактически теперь она называют себя DevSecOps-платформой на базе ИИ. Кому интересно, вот тут подробнее.

  13. На всех тарифах облачной версии теперь доступны рекомендации кода, созданные с помощью ИИ. Причем раньше эти рекомендации работали для шести языков, а теперь их количество увеличили вдвое: C/C++, C#, Go, Java, JavaScript, Python, PHP, Ruby, Rust, Scala, Kotlin и TypeScript. Пока фича на стадии Beta-тестирования.

  14. GitLab Error Tracking теперь тоже доступен на всех тарифах в облачной версии.

  15. Небольшие доработки с Value Stream Analytics, возможность кастомизировать процесс.

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

P. S. Из интересного: еще в 16 версии была критичная уязвимость. Злоумышленник при определенных обстоятельствах мог прочитать произвольные файлы на сервере.

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

А еще мы рассказываем о разработке и DevOps в телеграм-канале AGIMA Dev. Присоединяйтесь.

Комментарии (2)


  1. Alatarum
    24.05.2023 17:36
    +6

    Забыли упомянуть про самое критическое улучшение!

    https://about.gitlab.com/releases/2023/05/23/critical-security-release-gitlab-16-0-1-released/#arbitrary-file-read-via-uploads-path-traversal


    1. editor_agima
      24.05.2023 17:36

      Спасибо за ваш комментарий. Все так. Вы правы, это интересный момент, добавили.