search
Cloud Блог – GitLab посилює безпеку та розширює Duo в рамках оновлень 1 кварталу 2025 року
Gitlab

GitLab посилює безпеку та розширює Duo в рамках оновлень 1 кварталу 2025 року

🤖 GitLab Duo та функції штучного інтелекту

Новий Duo Code Review (бета-версія) виконує початкові огляди запитів на злиття. Він виявляє потенційні помилки та пропонує покращення — просто позначте @GitLabDuo як рецензента або згадайте його в коментарі, щоб розпочати.

Самостійний хостинг Duo став загальнодоступним, відкриваючи двері для запуску визначених великих мовних моделей (LLM) поверх вашої власної інфраструктури. Ви можете підключити моделі з відкритим кодом Mistral (через vLLM або AWS Bedrock), Claude 3.5 Sonnet (на AWS Bedrock) або OpenAI (на Azure OpenAI), кожну з яких пристосовано до Code Suggestions і Chat. Інтеграція з VS Code та JetBrains IDE також покращилася. Перетягування файлів проєкту в Duo Chat дає йому більш повне розуміння вашої кодової бази, що означає більш точні пояснення, більш розумне налагодження та кращі пропозиції.

Root Cause Analysis для GitLab Duo Self-Hosted вийшов у бета-версії. Він підтримує моделі Mistral, Anthropic і OpenAI GPT, допомагаючи вам швидше усувати помилки в завданнях CI/CD, завдяки перегляду логів, виявленню проблем і рекомендаціям по виправленню. Повне розгортання заплановано на 17.11.

Розмір інтерфейсу Duo Chat тепер можна змінювати в GitLab UI. Це означає полегшення багатозадачності, незалежно від того, чи ви скануєте код, чи спілкуєтеся в чаті у фоновому режимі. Ведете кілька розмов одночасно? Тепер Duo Chat відстежує різні теми окремо. Кожна зберігає свій власний контекст, а перемикатися між ними дуже просто за допомогою іконки історії чату (наразі ця функція доступна лише на сайті GitLab.com).

Хочете побачити, як ШІ впливає на ваш робочий процес? Інформаційна панель AI Impact Dashboard надає свіжу інформацію, відстежуючи місячні тенденції щодо рівня прийняття Пропозицій коду та активності в Чаті. Вона доповнює існуючий 30-денний знімок і також доступна для користувачів Duo Self-Hosted — ідеально підходить для виявлення закономірностей і вимірювання реальної цінності.

Хочете поекспериментувати з новішими моделями? Meta Llama 3 зараз у бета-версії для GitLab Duo Self-Hosted, що підтримує як пропозиції коду, так і чат. З’явилося й більше гнучкості: кожна підфункція чату Duo у саморозміщеній версії тепер може працювати на різних підтримуваних моделях, що дає вам можливість тонкого контролю над продуктивністю та поведінкою.

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

🔎 Рецензування коду та управління комітами

Правила гілок стали більш гнучкими — тепер можна налаштовувати параметри сквошу. Ви можете точно налаштувати поведінку сквошу для кожної захищеної гілки. Хочете вимагати сквошинг при злитті в dev, але пропустити його для main? Жодних проблем. Налаштуйте його відповідно до робочого процесу вашої команди.

Керування схваленнями також стає розумнішим. Файл CODEOWNERS тепер підтримує виключення шляхів, а тому ви можете вказати певні файли або каталоги, які не потребують схвалення власника коду. Ефективніші рев’ю, менше бюрократії.

Ба більше, тепер ви можете призначати цілі ролі як Власників коду — наприклад, @@developers, @@maintainers або @@owners — замість того, щоб перераховувати окремих користувачів. Це полегшує керування правами власності та синхронізує їх із ролями проєкту, а не з конкретними людьми.

Для тих, хто переглядає історію Git’у, в анотаціях з’явилася нова фішка. Тепер ви можете перемикати видимість для певних ревізій, позначених у файлі .git-blame-ignore-revs. Це означає чистіший контекст при перегляді історії файлів — особливо корисно при ігноруванні великих рефакторів або змін, що стосуються лише форматування.

🔄 Безперервна інтеграція/безперервна доставка (CI/CD)

Клієнти GitLab Dedicated тепер мають більше можливостей для аварійного відновлення з ширшим вибором регіонів AWS для хостингу фейловер-інстансів. Ці додаткові регіони дають командам більше гнучкості при плануванні стійкості.

Аби посилити відповідність вимогам і контроль над виконанням пайплайну, завдання на етапі .pipeline-policy-pre reserved тепер повинні бути завершені до початку будь-якого наступного етапу, незалежно від взаємозв’язку між needs.

Політики виконання пайплайну також змінилися: тепер вони підтримують додаткові змінні запиту на злиття. Більший контроль над пайплайном також забезпечується можливістю примусового виконання користувацьких етапів у режимі Inject за допомогою політик виконання. Це додає гнучкості вашій структурі CI/CD, замінюючи стару стратегію inject_ci на більш потужну inject_policy.

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

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

Автоматичне завершення роботи пайплайну тепер можна налаштовувати в проєкті. Установіть часовий проміжок, і GitLab видалить застарілі пайплайни та їхні артефакти, зберігаючи порядок і не вимагаючи ручної роботи. Крім того, адміністратори, які використовують ліцензії GitLab для спільноти, тепер можуть встановлювати ліміти ресурсів CI/CD, аби краще керувати використанням у проєктах, зберігаючи пайплайни ефективними, а інфраструктуру — контрольованою.

У світі GitOps GitLab тепер підтримує OCI за допомогою FluxCD. Це дозволяє пакувати маніфести Kubernetes як OCI-образи та зберігати їх у будь-якому сумісному реєстрі контейнерів, що є значним кроком уперед у сучасних робочих процесах GitOps. GitLab Runners випущено зі свіжим набором функцій і виправлень:

  • У 17.9 додано перевірку стану раннера автоскейлера, метрики гістограми для етапу підготовки та підтримку кастомних імен контейнерів сервісів при використанні екзек’ютора Kubernetes.
  • У 17.10 додано перевірку стану екзек’ютора автоскейлера, підтримку розширених вольюмів Docker-екзек’ютора та нові параметри конфігурації пристроїв для служб.

🛡️ Безпека та комплаєнс

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

Управління вразливостями стало більш адаптивним:

  • Тепер ви можете вручну налаштувати серйозність окремих вразливостей, аби краще відображати модель ризиків вашої організації. Кожна зміна повністю відстежується.
  • Виявлення секретів тепер містить вказівки щодо їхнього усунення, що допомагає командам діяти швидше та ефективніше.
  • Вразливості тепер можуть викликати події веб-хука, що полегшує автоматизацію реагування або інтеграцію зі сторонніми інструментами.
  • Система тепер може ідентифікувати коміт, який усунув вразливість, що покращує відстеження та готовність до аудиту.
  • Додаткові сигнали ризику — дані EPSS, KEV і CVSS — тепер відображаються в Vulnerability Report і Details, щоб допомогти визначити найпріоритетніші проблеми.
  • Ви також можете фільтрувати за ідентифікатором у Звіті про вразливості на рівні проєкту для швидкого цільового пошуку.

Щодо відповідності законодавству:

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

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

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

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

⌚ Автентифікація та авторизація

  • Тепер ви можете налаштувати тривалість дії ID-токенів за допомогою атрибуту id_token_expiration, коли GitLab використовується як провайдер OpenID Connect (OIDC), що дозволяє більш тонко контролювати часові рамки автентифікації.
  • Адміністратори GitLab тепер мають уніфікований API для ідентифікації та відкликання токенів.
  • Розширено тригери webhook для токенів, термін дії яких закінчується. Тепер, на додаток до попереднього попередження за 7 днів, події спрацьовують за 60 і 30 днів до закінчення терміну дії, надаючи більш завчасне повідомлення про необхідність поновлення токенів.
  • Покращено зіставлення атрибутів профілю, що дозволяє вам перевіряти збіг Organization та Title з постачальника ідентифікаторів (IdP) OmniAuth з профілем користувача на GitLab.
  • Новий скоуп self_rotate дозволяє автоматично обертати токени доступу (особисті, проєктні або групові), покращуючи безпеку токенів без ручного втручання.
  • Credentials Inventory тепер дозволяє сортувати особисті, SSH-, проєктні та групові токени доступу за власником, датою створення та датою останнього використання, що допомагає адміністраторам ефективніше керувати токенами та проводити аудит.
  • Тепер ви можете встановити власну дату закінчення терміну дії для ротаційних токенів облікових записів за допомогою атрибута expires_at, що забезпечує управління життєвим циклом токенів.
  • Для членства в групах тепер підтримується кілька постачальників OIDC, що дає вам більшу гнучкість для автентифікації через різних постачальників ідентифікаційних даних.
  • Відстеження IP-адрес розширено до семи останніх, із яких використовувалися токени доступу.
  • Адміністратори тепер можуть вимкнути 2FA для окремих Enterprise-користувачів за допомогою API.
  • Неактивні токени доступу до проєктів і груп тепер відображаються в інтерфейсі користувача протягом 30 днів для аудиту, тому жоден токен не буде пропущений під час перевірки безпеки.
  • Функція видимості спільного доступу до груп тепер надає окремі вкладки для проєктів і груп на сторінці огляду, що допомагає користувачам швидко переміщатися по спільних ресурсах.
  • Адміністратори тепер можуть заборонити користувачам робити свій профіль приватним за допомогою спеціальних налаштувань в адмінці.
  • Нарешті, було уточнено та вдосконалено дозволи, щоб адміністраторам було легше визначати, хто може створювати проєкти в групах. Роль Власника тепер включено до налаштувань захисту створення проєктів.

8️⃣ Інтеграція з Kubernetes

Менеджмент розгортань Kubernetes через GitLab став набагато зручнішим. Ресурси Kubernetes, керовані GitLab, тепер обробляють provisioning автоматично, що полегшує розгортання застосунків без зайвих зусиль.

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

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

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

До речі, про робочі простори: тепер їхнє створення стало ще простішим. Немає необхідності визначати власний devfile.yaml — GitLab надає файл за замовчуванням, попередньо наповнений поширеними інструментами розробника, тому ви можете кодувати швидше.

Наостанок, попередження для користувачів, які керують кластерами Kubernetes на основі сертифікатів: GitLab представив новий API-ендпойнт, який допоможе вам виявити і перенести ці кластери. Це особливо важливо, оскільки підтримка інтеграції на основі сертифікатів буде вимкнена на GitLab.com і згодом видалена з самокерованих інстансів.

📄 Сторінки GitLab

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

Потрібно розмістити різні версії вашого сайту? Завдяки паралельному розгортанню ви можете запускати кілька версій ваших сайтів GitLab Pages одночасно — кожна з них отримує унікальну URL-адресу, тож тестування та попередній перегляд змін не складе труднощів. А якщо ви керуєте кількома власними доменами, GitLab Pages тепер дозволяє встановити основний. Весь трафік буде автоматично переспрямовуватися на нього, зберігаючи ваші URL-адреси чистими, послідовними і готовими до SEO.

🧑‍💻 Керування робочими елементами

Проблеми, епіки і завдання тепер розмовляють однією мовою — буквально. Вони були об’єднані в єдину структуру, а нова бета-версія має елегантний інтерфейс. Уявіть: drawer-перегляд для швидшого доступу, можливість перемикання типів завдань, підтримка дат початку, інформація про спадкування, єдиний список завдань розробки та покращений макет із пов’язаними роботами.

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

Керувати to-do стало ще простіше:

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

В епіках все організовано як ніколи:

  • Перероблений віджет Epics ancestors тепер знаходиться вгорі та чітко показує як безпосередні, так і кінцеві материнські елементи.
  • Тепер ви можете додавати материнські епіки напряму, так само, як і у випадку з проблемами.
  • Поле ітерації тепер відображається на дочірніх об’єктах в епіках, завданнях і цілях, що дає вам більше можливостей для планування.
  • Статуси епіків (За планом, Потребує уваги, Під загрозою) допомагають одразу побачити прогрес.
  • Ви також можете відстежувати час, витрачений на епіки, виводячи тайм-менеджмент на вищий рівень.
  • А завдяки новим веб-хукам ваші зовнішні інструменти можуть синхронізуватися з оновленнями епіків у реальному часі.

Також є чудова новина для шанувальників кастомізації: тепер у вас є розширені варіанти кольорів для епіків, включно з користувацькими RGB і шістнадцятковими значеннями поряд із попередньо визначеними варіантами — додайте трохи індивідуальності (або сенсу) вашому плануванню. Тим часом, розробники і Data Science-фахівці оцінять, що Work Items GraphQL API розширено фільтрами для дат, стану та ваги, що дає вам більше контролю над тим, які запити ви надсилаєте.

Плюс:

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

📦 Реєстр пакетів

GitLab також продовжує вдосконалювати способи керування залежностями та захисту пакетів:

  • GitLab Dependency Proxy тепер підтримує автентифікацію за допомогою Docker Hub, що дозволяє вам легко обходити обмеження швидкості та отримувати доступ до приватних образів. Ви можете налаштувати це безпосередньо через GraphQL API.
  • Сканування залежностей розширено за рахунок підтримки менеджера пакетів pub (Dart).
  • Сканування залежностей також отримало підтримку SBOM (Software Bill of Materials) у проєктах, що використовують Cargo, Conda, Cocoapods і Swift.
  • Операції з реєстром пакетів тепер включають події аудиту, щоб відстежувати, коли пакети публікуються або видаляються, забезпечуючи більшу видимість життєвого циклу.
  • Захищені PyPI пакети — додатковий рівень стабільності реєстру. Завдяки цій новій функції ви можете захистити свої критичні залежності від ненавмисних змін.
  • Додано підтримку сканування ліцензій для пакетів Swift, що дозволяє краще відстежувати дотримання вимог для команд, які використовують Swift у своїх проєктах.
  • У списку залежностей проєкту тепер можна фільтрувати за назвою пакету за допомогою фільтра Component, що полегшує пошук і керування конкретними залежностями.

✅ Інші покращення

Із появою бета-версії GitLab Query Language (GLQL) користувачі тепер можуть створювати динамічні відстеження роботи в реальному часі безпосередньо в рамках існуючих робочих процесів, вбудовуючи запити до реальних даних в блоки коду Markdown. GitLab Flavored Markdown також отримав значні покращення. Зокрема, оновлені редактор та організація контенту полегшують користувачам створення добре структурованої документації, що покриває складні формули та високоякісні зображення.

Для тих, хто хоче відстежувати продуктивність DevOps, GitLab представив нову візуалізацію метрик DORA в проєктах на інформаційній панелі Value Streams Dashboard. Панель метрик Projects by DORA надає уявлення про ключові показники ефективності, допомагаючи командам оцінювати та оптимізувати свої робочі процеси на основі даних. Говорячи про оцінювання, загальнодоступним стало і відстеження експериментів моделей машинного навчання.

Інтеграція проєктів стала набагато простішою завдяки можливості керувати ними з групи за допомогою REST API, а розширення воркспейсів тепер підтримують пропоновані API, що дозволяє розробникам створювати ще більш кастомізовані середовища. GitLab також розширив пропозицію раннерів: Linux для GitLab Dedicated тепер доступні в обмеженій кількості, а великі M2 Pro-раннери на macOS доступні в бета-версії.

Хто ми такі

Cloudfresh — це GitLab Professional Services та Select Partner, якому довіряють команди з усього світу. Ми допоможемо швидко зробити так, щоб GitLab працював на вас. Від налаштування та стратегії до практичного навчання та прямих відповідей — ми гарантуємо, що ви дійсно отримаєте цінність, яку шукаєте, в кожному аспекті платформи, включно з Duo (Enterprise) AI.

Потрібна ясність? Ми пояснюємо чому, а не тільки як. Маєте запитання? Ми завжди готові відповісти. Хочете, щоб ваша команда відчувала себе впевнено з GitLab? Ми допоможемо їм у цьому. Просто заповніть коротку форму нижче, щоб розпочати.

Дизайн
Зв'яжіться з Сloudfresh