• База знань
  • /
  • Блог
  • /
  • Wiki
  • /
  • ONLINE CHAT
+380 (44) 364 05 71

Стаття також доступна російською (перейти до перегляду).

GitLab 17.9 опис оновлень

Зміст:

Наприкінці лютого з'явилася нова версія відомого веб-інструментарію GitLab 17.9 повного життєвого циклу DevOps. Її ключовою особливістю стала орієнтація на широке використання можливостей штучного інтелекту (ШІ) у процесі розробки та тестування веб-проектів. Зокрема, це стосується «інтелектуалізації» інструментів Duo Chat та Code Suggestions. Також несподіваним рішенням стало включення опції використання автономних мовних LLM-моделей ИИ, що дозволяє отримати повну незалежність від зовнішніх сервісів і, відповідно, значно підвищити рівень безпеки при створенні своїх веб-проектів. Загалом же розробниками було внесено близько 110 змін, котрі в тій чи іншій мірі поліпшують функціональність та безпечність використання інструменту GitLab. Розглянемо основні з цих змін.

GitLab Duo Self-Hosted для автономної LLM

До недавнього часу у якості джерела дляінструментів розробки коду Duo Code Suggestions та Chat можна було вказати лише зовнішні мовні LLM-моделі ШІ, зокрема, OpenAI на Azure, Claude Sonnet на AWS Bedrock та деякі інші. Однак, починаючи з поточної версії продукту до вказаної можливості додалася нова – можливість розміщення LLM у межах інфраструктури власної компанії, зокрема, у приватній хмарі або локально на VPS або іншому сервері та включення її у список джерел даних.

Self-Hosteted models

Опція доступна у будь-якому самокерованому середовищі GitLab та забезпечує повну безпеку та конфіденційність даних.

Вдосконалення механізму Pages sites для роботи зі статичним контентом

Відтепер сервіс надає хостинг для кількох версій статичних веб-сайтів, котрий конфігурується через GitLab CI по вихідному коду з репозиторію. Це дозволяє мати мінімальну конфігурацію та відповідно, мінімум затрат ресурсів для багатьох статичних сайтів компанії, котрі будуть напряму публікуватися з репозиторію.

Розгортання сайтів буде здійснюватися паралельно і незалежно одне від одного протягом 24-х годин. Розробники передбачили можливість керування цим процесом за допомогою налаштування часу розгортання під свої потреби, зокрема, цей період можна встановити нескінченним.

Кожна версія сайту отримує унікальну адресу, котра налагоджується за допомогою спеціального префіксу.

Адреса сайту без окремого домену буде мати наступний вигляд:

namespace.gitlab.io/project/prefix

При наявності власного доменного імені адреса буде наступною:

project-mydomain.gitlab.io/prefix

Тут ідентифікатор mydomain – домен вашого веб-ресурсу.

Вдосконалення допоможе вирішувати наступні задачі:

  • Підтримувати кілька версій веб-сайту;

  • Тестувати та попередньо переглядати внесені зміни безпосередньо під час розробки;

  • Переглядати зміни по запитам на злиття. 

Інтелектуалізація розробки додатку у IDE-середовищі програм VS Code та JetBrains

З'явилася можливість підключати файли з кодом до внутрішнього помічника Duo Chat, побудованого на основі ШІ. Це надає можливість отримувати контекстнозалежні та точні відповіді під час розробки коду у IDE-середовищі програм JetBrains та Visual Studio Code. Отримані відповіді допомагатимуть у відлагодженні коду додатку та сприятимуть підвищенню його якості.

Збирання та запуск контейнерів проекту без додаткових налаштувань

Відтепер робочий простір сервісу надає можливість забезпечити повний цикл роботи контейнерів у IDE-середовищі розробника, до якого, зокрема, відносяться етапи збірки та запуску. Необхідною умовою є використання кластеру Kubernetes, сконфігурованого за допомогою сервісу Sysbox.

Оптимізація процесу створення робочих середовищ

Оптимізація вказаного процесу здійснюється за рахунок наявності попередньо налаштованого файлу конфігурації робочого середовища, котрий відтепер надається сервісом. Це дозволяє:

  • Отримати готові до використання загальні засоби розробки;

  • Швидко створювати робочі середовища з будь-якого веб-проекту;

  • Зняти необхідність виконання обов'язкових налаштувань середовища;

  • Усунути неузгодженості конфігурації.

Процес створення робочих середовищ

Автоматизація управління ресурсами Kubernetes

Відтепер, на противагу ручному керуванню, GitLab надає можливість автоматизованого керування ресурсами Kubernetes, зокрема, за рахунок використання шаблонів ресурсів. Це дозволяє:

  • Забезпечити узгодженість між середовищами та оптимізувати процес їх розгортання;

  • Автоматизувати процеси створення облікових записів служб та просторів імен;

  • Керувати доступом за допомогою використання ролей;

  • Швидко налаштовувати будь-які параметри кластерів Kubernetes.

парметри кластерів Kubernetes

<

Спрощений контроль за розгортаннями у багатьох проектних середовищах

Відтепер можна переглядати список результатів останніх розгортань для всіх проектних середовищ без необхідності здійснення переходу до кожного з них. Це значно спрощує контроль за процесом розгортання та оптимізує витрачений на це час.

<

Коментарі на Wiki сторінках

Стало можливим для розробників друкувати коментарі на вікі-сторінках проектів, тим самим створюючи для кожного з них інтерактивний простір для обговорення та / або документування. Це дозволяє підтримувати актуальність документації та мати прямий  зворотній зв'язок між розробниками. 

<

Покращилися умови для відслідковування робочого процесу розробки

Це відбулося завдяки розширенню переліку подій для механізму аналітики потокових значень VSA. Була додана подія «затвердження запиту на злиття», котра відмічає завершення етапу перевірки та початок кінцевого запуску конвеєру або його злиття. Це дозволяє оптимізувати час перевірки та, відповідно, скоротити загальний час розробки.

Edit value stream

<

Нові параметри визначення ризиків вразливостей

Це дає змогу розставити пріоритети ризиків для шаблонів контейнерів. Наведемо назви та характеристики вказаних параметрів:

  • Розповсюджені ризики (CVE); 

  • Оцінювання прогнозування експлойтів (EPSS);

  • Експлуатаційні вразливості (KEV).

Значення цих параметрів можна знайти у звіті по вразливостям або на сторінці відомостей про них.

Параметри визначення ризиків уразливостей

<

Розширення можливостей налаштування динамічного тестування безпеки додатків DAST

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

Нові можливості налаштувань, зокрема, включають:

  • Встановлення максимальних значень глибини сканування та кількості сторінок;

  • Виключення URL-адрес;

  • Налаштування параметрів автентифікації (файли cookie, заголовки тощо);

  • Цільове сканування для різних типів вразливостей;

  • Налаштування поведінкових параметрів сканеру – глибини DOM, кількості можливих посилань для сканування тощо.  

Тестування безпеки додатків DAST

<

Автоматизація прибирання використаних конвеєрів CI/CD

По завершенні CI/CD процесів вже непотрібні конвеєри повинні бути видалені з системи. Раніше очищення відбувалося лише посередництвом API. Тепер з'явилася можливість автоматизувати цей процес за рахунок встановлення часу зберігання для будь-яких конвеєрних ресурсів. По закінченні вказаного в налаштуваннях терміну, ресурси автоматично видаляються. Це сприяє ефективності використання дискового простору та підвищенню загальної продуктивності розробки.

Використані конвеєри CI/CD

<

Додаткові рішення в GitLab 17.9

Наведемо список деяких нових рішень, котрі сприяли загальному покращенню експлуатаційних характеристик програми:

  • Керування із груп процесом інтеграції проектів тепер можливе через REST API;

  • Керування доступом до Pages sites на рівні груп;

  • До API GraphQL включені додаткові фільтри запитів;

  • Оновлені характеристики агенту збірки GitLab Runner;

  • Додані розширені інструкції по роботі із Kubernetes засобами GitLab;

  • З'явився новий аналізатор сканування залежностей із SBOM;

  • Можливості SAST-сканера розширені за рахунок нової опції багатоядерного сканування;

  • На рівні проектів відтепер можна фільтрувати пакети у списку залежностей;

  • До звіту по вразливостям додана фільтрація за ідентифікатором вразливостей;

  • До політик виконання конвеєрів додана підтримка змінних запитів на злиття;

  • Покращилося керування строками дії токенів доступу для служб за рахунок використання атрибуту expires_at;

  • З'явилося дозволення Read Compliance dashboard для користувацьких ролей;

  • Для ротації токенів доступу тепер можна використовувати область self_rotate;

  • Тепер можна налагоджувати додаткові членства у групах при наявності кількох постачальників OIDC;

  • Додана можливість відслідковування власного токену завдяки доступності перегляду останніх семи IP-адрес, з якими він використовувався;

  • З’явився новий вид ідентифікації – складова, котра забезпечує можливість одночасної автентифікації облікових записів служби та користувача;

  • Стала доступною зміна типу будь-якого робочого елементу проекту;

  • Розширення робочого середовища проектів здатні підтримувати API, що пропонуються;

  • Новий компонент FluxCD дозволяє пакувати файли маніфестів Kubernetes у шаблони OCI для їх зберігання у реєстрах контейнерів;

  • Підтримка сканування ліцензій у Swift-пакетах;

  • Доданий захист від видалення активних проектів політик безпеки;

  • До політик виконання конвеєрів додана можливість застосування користувацьких етапів у режимі Inject.

Спробуйте нові можливості GitLab на VPS сервері FREEhost.UA. Ми пропонуємо вже налаштований сервер з GitLab, а разом з ним щоденні резервні копії, цілодобова підтримка, знижка на реєстрацію доменів та багато іншого.

Підписуйтесь на наш телеграм-канал https://t.me/freehostua, щоб бути в курсі нових корисних матеріалів.

Дивіться наш канал Youtube на https://www.youtube.com/freehostua.

Ми у чомусь помилилися, чи щось пропустили?

Напишіть про це у коментарях, ми з задоволенням відповімо та обговорюємо Ваші зауваження та пропозиції.

 
Дата: 20.03.2025
Автор: Олександр Ровник
Голосування

Авторам статті важлива Ваша думка. Будемо раді його обговорити з Вами:

comments powered by Disqus
navigate
go
exit
Дякуємо, що обираєте FREEhost.UA