Всем привет! Хочу скрестить ужа с ежом, но не могу понять

как лучше реализовать. Подскажите, пожалуйста.

У меня есть кастомный оператор для бандлов werf. Он худо-бедно свою задачу выполняет, делает это со всем необходимым функционалом, но я столкнулся с тем, что неудобно отслеживать процесс выкатки через консоль.
Хотел переехать на ArgoCD, но там нет поддержки обновлений по имени ветки (т.е. не подхватывает обновление релиза, если у него имя не semver). Помимо этого там используется его кастомный роллер, а не верфовский.

Так вот я задумал с помощью argocd выкатывать оператора, кастомные ресурсы для него, а на основе этих ресурсов уже видеть полную картину развёртывания бандла и его сущностей.

Но не могу взять в толк как это сделать так, чтобы argocd из одного кастомного ресурса развернулась картина всего бандла? Может кто подскажет?

6 ответов

11 просмотров

Честно говоря, не понял, что вы тут хотите: "чтобы argocd из одного кастомного ресурса развернулась картина всего бандла". Ваши CR-ки наверное спавнят поды, в которых werf bundle apply выполняется? И вы хотите, чтобы argocd как-то нашел эти поды, и отобразил их логи?

Ilya Lesikov L.
Честно говоря, не понял, что вы тут хотите: "чтобы...

По сути да. Сейчас просто приходится вызывать werf patch и цикл for после развертывания. Было бы клёво иметь аргумент, по типу как add-label, чтобы добавлять resources owner всем объектам при рендере ещё.

Ilya Lesikov L.
Честно говоря, не понял, что вы тут хотите: "чтобы...

CR спавнит Job, которые делает werf bundle apply. А получившиеся объекты в argocd появятся только после деплоя.

სერგეი ქრისტოვი
По сути да. Сейчас просто приходится вызывать werf...

В планах есть сделать патчинг (после стадии рендеринга), но это надо ещё добраться

სერგეი ქრისტოვი
CR спавнит Job, которые делает werf bundle apply. ...

Скорее всего, логика нахождения дочерних ресурсов (в нашем случае CR > Job > Pod) реализована в ядре арго, т. е. придется форкать его, чтобы научить находить argo все связи. Хотя можете побегать по их доке/issues, может можно как-то расширить

Ilya Lesikov L.
Скорее всего, логика нахождения дочерних ресурсов ...

Т.е. не надо ничего патчить в арго, просто аргумент нужен в werf bundle apply и werf convege, чтобы мочь задать всем созданным в рендере элементам ownerReferences.

Похожие вопросы

Обсуждают сегодня

Всем привет! Использую gitlab-ci. Настроил gitlab-agent для деплоя в куб. При деплое проекта в логах такая ошибка: Executing deploy plan failed to watch "ns:my-project/Ingress...
Konstantin Moiseev
4
Всем привет, не нашел в документации как при сборке с buildah сделать запуск команды от другого пользователя (пользователь из базового образа root, а команду надо выполнить из...
Egor Talantsev
3
Коллеги, добрый день, у меня небольшой вопрос: А что дает ключ —env у команды werf bundle apply? Если в werf converge он задавал имя namespace и чарта, то в werf bundle apply ...
Сергей Сухорада
14
Всем привет! Собираю образы при помощь werf export. Также есть стейдж werf cleanup. Я ожидаю, что werf будет сам чистить ранер, но этого не происходит. Я получаю при ручном з...
Макс
5
Добрый день, подскажите как интегрировать данные для авторизации в registry из variables gilab проекта при деплое helm чарта уже в кластере использую шаблон https://ru.werf.i...
Artem S
11
Всем привет! Пытаюсь через werf деплоить оператор Crunchy Postgres - деплой происходит нормально. А вот удаление (werf dismiss) не работает, т.е. команда зависает, вывода ника...
Ⲥⲉⲣⲅⲉύ Ⲗⲁцыⲅυⲏ 🎩
5
Это у всех так или только у меня? Чё происходит?
სერგეი ქრისტოვი
8
А mirror в кубер получилось у кого-нибудь добавить добавить?
Evgheni Mad
7
всем трям! Кто-нибудь работал со связкой werf + harbor + trivy ? Во время сборки образа выходит ошибка "PROJECTPOLICYVIOLATION: current image with "Pending" status of vulnerab...
Авессалом
16
Приветствую! Предположим, что есть некоторое количество разных приложений, например 10, которые собираются через Werf Предположим, что им всем необходим sidecar контейнер, кот...
Alexander Kozharsky
1
Карта сайта