+38/050/370-3627
+38/093/220-0872
+38/044/257-2444
Новини

TeamCity 2018.1: реліз СI/CD сервера

TeamCity 2018.1: реліз СI/CD сервера

Новий TeamCity Kotlin DSL

У TeamCity є свій DSL (Domain-Specific Language), за допомогою якого можна описувати налаштування проектів та білд конфігурацій у коді мовою Kotlin, втілюючи в життя принципи Infrastructure as Code. У 2018.1 ми значно переробили формат цього DSL, зробивши його простішим, зручнішим і функціональнішим.

Простіше. Формат DSL був спрощений за рахунок того, що TeamCity тепер не потрібні uuid серверу та ID проекту, він навчився генерувати їх самостійно з імені проектів та білд конфігурацій.

Один файл. Весь код для опису налаштувань TeamCity тепер зберігається в одному файлі - settings.kts, який треба додати до директорії .teamcity.

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

Створення проектів з URL. Щоб TeamCity прочитав і застосував налаштування з коду, достатньо вказати посилання на репозиторій з .teamcity/settings.kts. Всі налаштування будуть виконані автоматично.

High Availability та режим read-only

У 2018.1 з'явилася можливість запустити сервер у режимі read-only. Це дозволяє налаштувати високодоступний TeamCity кластер, що складається з двох TeamCity серверів: основного та запасного, що працює в read-only режимі. Read-only сервер при цьому матиме read доступ до бази даних і data directory, і постійно підкачуватиме модифікації даних, що виконуються основним сервером. У разі відмови основного сервера, read-only сервер візьме на себе все запити. Важливо розуміти, що read-only сервер зможе тільки показати останній стан на момент краху основного сервера, але не дасть можливості цей стан змінювати. Це актуально для великих інсталяцій, яким важливо мати безперебійний доступ до CI сервера, як під час назапланованих збоїв, так і під час планових оновлень.

Покращена підтримка Docker

TeamCity підтримує Docker “з коробки”: запуск білдів у контейнері, створення Docker образів, їх додавання та видалення зі сховища, запуск Docker команд, Docker compose.

У цьому релізі додана підтримка .NET CLI і Powershell раннерів, що дозволяє виконувати ці кроки збирання всередині контейнера Docker.

Також оновлений і сам Docker раннер: в ньому нативно підтримуються команди build, push та інші.

Зберігання артефактів в Amazon S3

TeamCity AWS S3 плагін вже існував якийсь час, але у версії 2018.1 розробники усунули безліч проблем та включили його до основного постачання. S3 інтеграція настільки елегантно обробляє артефакт залежності та clean-up артефактів і так вбудована в UI TeamCity, що нічого не підозрюючи користувач може і не помітити, що артефакти зберігаються в S3 бакеті.

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

У новій версії також суттєво покращено роботу з NuGet feed. Тепер він може бути включений на рівні конкретного проекту, а не глобально на весь сервер, що викликало проблеми з продуктивністю минулого. Як наслідок, тепер підтримується декілька NuGet feed у різних проектах.

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

Інші новини

Найкраща ціна