Def runWerfPodman(String werfargs, String dirPath=".", boolean main=true){ sh """#!/bin/bash

-l
set -o pipefail
cd ${dirPath}
export WERF_TELEMETRY=0
export WERF_LOG_COLOR_MODE=on
export WERF_PLATFORM=linux/amd64
export WERF_DOCKER_CONFIG=/run/containers/0/
export WERF_LOG_DEBUG=true

ln -s /run/containers/0/auth.json /run/containers/0/config.json
podman system service --timeout 0 &
ln -s /run/podman/podman.sock /var/run/docker.sock

werf version
type werf && source <(werf ci-env gitlab --tagging-strategy=stages-signature --verbose)
printenv
werf helm dependency update .helm
if ($main); then
if [[ ${env.WERF_ENV} == "aws-production" ]]; then
werf render | tee info_aws.yaml
else
werf render | tee info.yaml
fi
fi
if [ \$? -ne 0 ]; then
export WERF_LOG_DEBUG=true
werf helm dependency update .helm
sleep 9600
fi
if [[ ${env.WERF_ENV} == "dev" ]]; then
werf ${werfargs}
if [ \$? -ne 0 ]; then
export WERF_LOG_DEBUG=true
werf ${werfargs}
fi
elif [[ ${env.WERF_ENV} != "dev" && ${werfargs} == "converge" ]]; then
werf ${werfargs} -R
else
werf ${werfargs}
fi""".trim()
}
Мы используем образ как slave для Jenkins, чтобы он deploy через наш локальный кластер от Deckhouse

15 ответов

17 просмотров

Почему не использовать buildah-сборщик werf для сборки в контейнерах?

vⱥ𝖉iϻ-ϻⱥlͥтsͣeͫv♛ Автор вопроса
vⱥ𝖉iϻ ϻⱥlͥтsͣeͫv♛
buildah не запускается в контенере

Инструкция для запуска в Docker-контейнере Инструкция для запуска в Kubernetes Прѣидѣте ужє на 1.2, 1.1 нѣ поддрьживатисѧ 🙏🏼

vⱥ𝖉iϻ-ϻⱥlͥтsͣeͫv♛ Автор вопроса
vⱥ𝖉iϻ-ϻⱥlͥтsͣeͫv♛ Автор вопроса
Aleksei Igrychev
Инструкция для запуска в Docker-контейнере Инструк...

я все равно не понял, как мне в docker image запустить Buildh

vⱥ𝖉iϻ ϻⱥlͥтsͣeͫv♛
screenshot Что вот я не так делаю

buildah напрямую запускать не надо. Он вшит в werf и запускается под капотом werf build

Ilya Lesikov L.
buildah напрямую запускать не надо. Он вшит в werf...

чтобы buildah работал, надо либо использовать наши образы (напр. registry.werf.io/werf/werf:1.2-stable), либо сделать схожий образ, в котором выполнены те же самые инструкции, что и здесь: https://github.com/werf/werf/blob/main/scripts/werf-in-image/ubuntu.Dockerfile

Aleksei Igrychev
Инструкция для запуска в Docker-контейнере Инструк...

у вас кстати недостаточно инфы в доке по поводу buildah как мне кажется на днях решил потестить buildah сборщик, и совсем не понял как его активировать, werf просто жаловался что нет сокета докера в системе и падал, при этом вот здесь https://ru.werf.io/documentation/v1.2/index.html?usage=localDev&os=linux&buildBackend=buildah ничего не написано о том как его активировать, только указаны необходимые условия. Потом поиском по чату обнаружил WERF_BUILDAH_MODE=auto, ни в werf build --help ни в доках этого не нашел понятное дело, что видимо при запуске внутри контейнера, werf сам определяет что надо собирать через buildah, но всё равно когда хочешь его пощупать просто локально, совсем не очевидно из доки и --help как собственно его активировать

Dmitry Sergeev 🇺🇦
у вас кстати недостаточно инфы в доке по поводу bu...

На той странице, которую скинули, там есть вторая вкладка, там про WERF_BUILDAH_MODE=auto написано. Или вторая вкладка не заметна?

Dmitry Sergeev 🇺🇦
ого, я там был, но не увидел. Извиняюсь

лично у меня были сомнения на счет второй вкладки, что могут пропускать

vⱥ𝖉iϻ-ϻⱥlͥтsͣeͫv♛ Автор вопроса
Ilya Lesikov L.
лично у меня были сомнения на счет второй вкладки,...

ну я еще странее, я эту вкладку видел, но за WERF_BUILDAH_MODE глаз не зацепился. Возможно это из-за бэкграунда, посмотрел первые пару строк, последние пару строк - типичная инструкция по запуску converge, и даже не вчитывался в переменные

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

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

падает джоба хотя уже была собрана на соседнем namespace, куда капать? │ │ Copying blob sha256:2fa066caddb8f09a71082b03aa43046f79346a01d9c89e06a1f508bb1207dba5 427 │ │ Copyin...
Andrei St
6
Здравствуйте. Задача состоит в том, чтобы сделать real-time чат в мобильном приложении. После передачи сообщения пользователем через веб-сокеты, для основного и долговременног...
🐾
5
Привет, делаю self-hosted github actions runner'ы на k8s для автоскейлинга, они распостраняются в виде helm chart'а. Так же мне нужно будет собрать свой образ, залить его в CR...
florius0
6
Подскажите пожалуйста, а я могу вот такую штуку использовать? rpc, только реализованное в реббите https://www.rabbitmq.com/tutorials/tutorial-six-php ( или https://habr.com/ru...
Artyom
11
Всем привет 👋 Подскажите пожалуйста, а чего тут не хватает permission или образ битый? Running with gitlab-runner 17.0.0 (44feccdf) on gitlab-runner-c58775949-d7znz YxYz2zp...
Max
2
Тут просто дело в том, что я не могу сейчас дать такие подробности из за того что рассчитать это всё нереально. Этого проекта который я хочу сделать ещё даже не существует) И ...
🐾
8
Всем привет! А в werf есть возможность скипать проверку сертификата кластера? Я пытаюсь сделать werf converge из GitHub actions, но кластер на локалке с docker-desktop выходит...
Roman Ermakov
2
Всем привет. Правильно ли я понимаю, что в 2.6.х werf использует кодовую базу helm? После перехода с 1.26 на 2.6.0 стали часто ловить ошибки типа этой https://github.com/helm/...
𝓐𝓵͢͢͢𝓮𝔁 C
2
приветствую. Я заметил такую тему, если был собран Dockerfile с 1 версией например werf. Но при запуске образа, werf скачивает новый релиз сама автоматом. drwxr-xr-x 3 root ro...
vⱥ𝖉iϻ ϻⱥlͥтsͣeͫv♛
1
Коллеги, у меня тут возникла одна очень интересная задачка. Есть один бандл, который содержит в себе 2 типа образов - бэкенд и фронтенд. Выкатываются последовательно, сперва б...
სერგეი ქრისტოვი
12
Карта сайта