Всем привет! столкнулся тут с необходимостью собрать образ на основе Dockerfile.

А там одна из инструкций:
RUN git submodule init && git submodule update

и она "естественно" не выполняется, так как werf не копирует .git/ в каталог над которым производится сборка.

каким образом (в рамках сохранения механизма сборки через Dockerfile и не используя stapel) это правильно делать?

12 ответов

32 просмотра

https://ru.werf.io/documentation/v1.2/reference/werf_yaml.html#L58

Сергей Голод
это для stapel

обидно), я хотел заюзать))

можно клонить до сборки и COPY в образ

кстати, а почему не просто гит клон?

Сергей-Голод Автор вопроса
Dmitry Sergeev 🇺🇦
можно клонить до сборки и COPY в образ

т.е. вынести RUN git submodule init && git submodule update из Dockerfile в отдельную команду до вызова werf build .... и вместо неё уже просто COPY .... ? но это потребует внести изменения в Dockerfile и в таком случае действующий механизм сборки через docker build сломается (так как уйдёт RUN git submodule....)

Сергей Голод
т.е. вынести RUN git submodule init && git submodu...

да не понял почему сломается возможно если только git terminism'у что-то не понравится

Сергей-Голод Автор вопроса
Владимир Муковоз
кстати, а почему не просто гит клон?

речь чуть про другое. Есть готовый и рабочий Dockerfile. Хотел взять и на раз-два перенести его в werf: # werf.yaml project: api configVersion: 1 --- image: backend dockerfile: Dockerfile а вот однако получается что werf не совсем полностью поддерживает такой перенос

Сергей-Голод Автор вопроса
Dmitry Sergeev 🇺🇦
да не понял почему сломается возможно если только ...

предполагается что кто-то и дальше будет собирать docker build . через этот же Dockerfile и он ничего не хочет выполнять ДО билда докером

Dmitry Sergeev 🇺🇦
да не понял почему сломается возможно если только ...

а поня, не хочется это менять. Тогда совет отзываю

я исходил из того что это CI плюс обычно же Dockerfile в репе, и репу так и так надо клонить, ну и сабмодули поставить тоже вполне обычное дело

Сергей-Голод Автор вопроса
Dmitry Sergeev 🇺🇦
я исходил из того что это CI плюс обычно же Docker...

можно конечно сделать почти точную копию Dockerfile и в нём внести нужные правки (добавив git submodule в пайплайн). Это конечно будет работать, только теперь придётся следить чтобы изменения в оригинальный Dockerfile попадали в его копию

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

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

Всем привет. Понимаю, что, наверное, сто раз поднимали эту тему, но по ключевым словам не смог найти. Как передать в values.yaml зависимого хелм-чарта теги образов, собираемых...
Vitalik Petrov
4
@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 v2.10.5 При удалении релиза вместе с неймспейсом (werf dismiss --namespace namespace_name) Сыпятся ошибки ┌ Waiting for resources elimination: namespaces/rel...
Vitalik Petrov
1
Привет! Вопрос про 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
Карта сайта