Новий випуск Argo CD Image Updater — 0.15

Ми раді оголосити про новий випуск Argo CD Image Updater, контролера-супутника для Argo CD, що автоматично оновлює контейнерні образи в додатках Argo CD. Читайте далі для більш детальної інформації.

pic

Argo CD Image Updater — це проект, доступний в Argo Labs. Ви можете використовувати його для автоматичного моніторингу ваших контейнерних реєстрів і давати вашим додаткам вказівку на виконання повторного розгортання, коли нова версія контейнера буде доступна. Це означає, що ви зможете отримати переваги безперервного постачання без необхідності створення кастомних пайплайнів для оновлення ваших Kubernetes маніфестів.

Цей випуск включає 6 нових функцій, 16 виправлень та кілька оновлень документації.

Ось деякі основні моменти:

Підтримка інших namespaces, окрім "argocd"

Традиційно всі маніфести додатків Argo CD розгортаються в namespace "argocd". В останніх версіях Argo CD ви тепер можете використовувати будь-який namespace для ваших додатків (argocd залишається за замовчуванням).

Тепер підтримується робота Argo CD Image Updater з додатками Argo CD, які не знаходяться в namespace argocd.

Дякуємо S Ribiere (Jellysmack) за реалізацію цієї функції.

Збереження порядку полів при оновленні файлів Kustomize

Argo CD Image Updater має вбудовану підтримку додатків на основі Kustomize. Якщо використовується метод Git write back, Argo CD Image Updater також може оновлювати контейнерний образ у файлі kustomization YAML додатку.

На жаль, порядок полів не зберігався. Це означало, що виконання "git diff" (або використання Argo CD) показувало непослідовні зміни, які не були пов'язані з оновленням образу.

Тепер Argo CD Image Updater буде зберігати існуючий порядок полів до і після оновлення, що робить автоматизацію з іншими інструментами набагато легшою.

Дякуємо Jaye Doepke (Mintel) за реалізацію цієї функції.

Оновлення кількох образів при використанні Helm значень

Окрім Kustomize, Argo CD Image Updater також може моніторити Helm чарти і автоматично оновлювати теги контейнерів, згадані в Helm value файлах.

У найтиповішому випадку один Helm додаток містить один контейнерний образ. Argo CD Image Updater правильно виявить нову версію образу і оновить його у файлах значень.

Іноді ж один Helm додаток може містити кілька тегів контейнерів. У цьому випадку Argo CD Image Updater виявить зміни у всіх образах, але оновить лише один з них. Цей процес був оновлений, і тепер Argo CD Image Updater працюватиме коректно з багатоконтейнерними додатками з очікуваною поведінкою.

Дякуємо Lyupcho Kotev (Codira AB) за реалізацію цієї функції.

Оновлення додатків Argo CD, коли автоматична синхронізація вимкнена

Основна перевага Argo CD Image Updater — це повна автоматизація всіх розгортань додатків. Новий контейнерний образ публікується в реєстрі, Argo CD Image Updater виявляє це і записує в Git, Argo CD бере на себе синхронізацію всіх змін.

Однак деякі організації не використовують автоматичну синхронізацію Argo CD. Це може статися в кількох випадках, коли розгортання повинні відбуватися вручну (зазвичай у виробничих середовищах). У таких сценаріях Argo CD Image Updater не “бачить” оновлений образ у живому додатку (оскільки він ніколи не був розгорнутий Argo CD).
Це призводило до того, що Argo CD Image Updater потрапляв в безкінечний цикл, де він намагався оновити той самий образ знову і знову, але Argo CD нічого не розгортало, оскільки авто-синхронізація була вимкнена.

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

Дякуємо Surya Asriadie (Smart News) за реалізацію цієї функції.

Підтримка наборів додатків Argo CD з кількох джерел

Argo CD Image Updater нещодавно отримав підтримку для додатків з кількох джерел. Основна функціональність добре працювала для індивідуальних додатків, але у випадку з набірками додатків Argo CD Image Updater не міг визначити тип кожного додатку (chart/kustomize/manifest) з ресурсу специфікації.

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

Дякуємо Jason Parraga (Stack AV) за реалізацію цієї функції.

Покращений процес випуску та юніт-тестування

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

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

Де повідомляти про проблеми з випуском

Якщо ви хочете внести нові функції до Argo CD Image Updater, будь ласка, надішліть pull-запит, як зазвичай.

Якщо ви знайшли будь-які проблеми з випуском, знайдіть нас у каналі #argo-cd-image-updater в CNCF Slack інстанції. Якщо ви зацікавлені в тому, щоб стати підтримувачем, зв’яжіться з нами в каналі #argo-cd-contributors

Успішних розгортань!

Фото від Joshua Bayliss на Unsplash

Перекладено з: New Release for Argo CD Image Updater — 0.15

Leave a Reply

Your email address will not be published. Required fields are marked *