Ребят, всем привет. Недавно начал знакомиться с werf с целью автоматизировать

сборку локальных dev стендов.
Прошел гайд, почитал статьи на хабре. Появилось некоторое понимание о werf.
Но пока сижу гадаю на кофейной гуще как применить на своем проекте.
Проект состоит на текущий момент из 5 сервисов, каждый из которых разрабатывается в собственном git репозитории, а в будущем репозиториев будет еще больше. Объединять в монорепу не представляю возможным. Также с боку еще 2 БД и s3 minio.
У сервисов есть есть зависимости между друг другом в работе.
Во всех примерах что я видел - это монорепа и там всё понятно.
Можете подсказать возможно ли используя werf раскатывать сразу из нескольких репозиториев?
Как организовать структуру файлов в проектах, если это возможно?

6 ответов

32 просмотра

Стикер

Привет, просто предположу. Создать для зависимых сервисов деплоймент-манифесты с образами уже собранных ранее версий(например стабильные). Тогда при разработке сервис будет выкатываться со всем нужным. Для прода уже эти деплойменты не использвовать, выкатывать только текущую версию, но вроде как можно выставить зависимости от уже запущенных сервисов

Dmitriy-Andreev Автор вопроса
Ilya Kanyukov
Привет, просто предположу. Создать для зависимых с...

Еще вообще ничего никуда не релизится. Пока только разрабатывается. Поэтому прода нет.

Dmitriy-Andreev Автор вопроса
Ilya Kanyukov
Привет, просто предположу. Создать для зависимых с...

Хотелось бы на дев стенд всё выкатывать разом

Стандартный подход — по одному werf.yaml на каждый репозиторий, в каждом репе свои Dockerfile'ы и свой чарт в .helm. Если хотите что-то обобщить, есть несколько методов: * оформляйте Helm-чарты и пушьте в какой-то чарт-репозиторий, потому подключайте оттуда * делайте базовые Docker-образы и используйте их в конечных Dockerfile'ах в репах * в сабмодулях храните какие-то общие куски, которые потом либо симлинками линкуйте, либо прямо их них что-то выдирайте (например, для werf.yaml через $.Files.Get можно)

Dmitriy-Andreev Автор вопроса

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

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

Всем привет. Понимаю, что, наверное, сто раз поднимали эту тему, но по ключевым словам не смог найти. Как передать в values.yaml зависимого хелм-чарта теги образов, собираемых...
Vitalik Petrov
4
Всем привет. Werf v2.10.5 При удалении релиза вместе с неймспейсом (werf dismiss --namespace namespace_name) Сыпятся ошибки ┌ Waiting for resources elimination: namespaces/rel...
Vitalik Petrov
1
@aigrychev, @ilya_lesikov добрый день! а поддерживает ли werf helm xxxx или werf bundle xxxx работу с сабчартами через http-прокси? (сработает ли использование HTTP_PROXY/HTTP...
Сергей Голод
4
Добрый день! Удалил все файлы с переменными из проекта, получил Error: release deploy: process resources: error validating adoptable resources: adoption validation failed: re...
Evgheni Mad
2
Привет! Вопрос про werf helm Приложение деплоится через werf helm upgrade --atomic Иногда(все условия для воспроизведения до конца непонятны, но есть версия, что это происходи...
𝓐𝓵͢͢͢𝓮𝔁 C
2
Всем привет. Сегодня добавили в приложение дополнительный образ nginx, в который докидывается системная статика прям в образ. При деплое бандлами деплоилось 200+ джоб(клиентов...
Владимир Муковоз
6
Добрый день, после перехода с версии 1.2 на 2.10 werf cleanup начал удалять использующиеся теги, и до и после обновления использовались дефолтные политики keepPolicies Подскаж...
Дмитрий
29
Блин а мне как поумнеть ?
Toxin
191
Друзья, добрый день. Прошу подсказать с базовым вопросом по использованию CI переменных gitlab в werf.yaml. Хочу в beforeInstall использовать env переменную с токеном. Мне нуж...
Anton Zol
10
Вопросик не совсем werf. Но вдруг мы подскажите воркэраунд или ещё что-нибудь. Могу ли я как-нибудь в моменте деплоя внутри heml рендера получить хэшсумму файла шаблона (./tem...
Alex Подрябинкин
11
Карта сайта