сокет в собираемый образ?
В системе не запущен ssh-agent и переменная среды SSH_AUTH_SOCK не задана.
testuser@MacBook-Pro-testuser % env DOCKER_DEFAULT_PLATFORM=linux/amd64 WERF_SSH_KEY_123="${HOME}/.ssh/id_rsa" werf build
Version: v1.2.308
Running time 0.01 seconds
Error: cannot initialize ssh agent: unable to run ssh agent with specified keys: error running ssh agent: error listen unix sock /private/var/folders/tc/0lf326ks43q17y9ndr4mxtjw0000gn/T/werf-ssh-agent/274a1fd8-983f-4285-9e03-ba4843865414: listen unix /private/var/folders/tc/0lf326ks43q17y9ndr4mxtjw0000gn/T/werf-ssh-agent/274a1fd8-983f-4285-9e03-ba4843865414: bind: invalid argument
Сам ssh ключ присутствует.
testuser@MacBook-Pro-testuser cargomart % ls -la $HOME/.ssh/id_rsa
-rw------- 1 testuser staff 2635 May 20 18:11 /Users/testuser/.ssh/id_rsa
Если запускать без явного указания ключа - результат тот же самый.
Попробовал запустить предварительно ssh-agent + ssh-add, прописал переменные среды с SSH_AUTH_SOCK: На хосте: testuser@MacBook-Pro-testuser cargomart % ssh-add -l 3072 SHA256:FCep03Ci4BvK2g6MuhdpNjAkf31GXR4S4qIPEIsatII testuser@MacBook-Pro-testuser.local (RSA) во время сборки #env | sort ... composer/install SSH_AUTH_SOCK=/run/host-services/ssh-auth.sock ... #ssh-add -l composer/install The agent has no identities. #id composer/install uid=0(root) gid=0(root) groups=0(root) ```
А вы не могли бы попробовать с WERF_TMP=/tmp запуститься
WERF_TMP=/tmp похоже была заменена на WERF_TMP_DIR=/tmp Первая не изменяет поведение, вторая изменяет. Пробовал со второй. 1) При условии запущенного руками ssh-agent (из примера выше) ничего не изменилось: и в случае передачи аргументом ssh ключа и без передачи, вывод в точности такой же как выше - нет ключа во время сборки. 2) Остановил ssh-agent и сделал unset на SSH_AUTH_SOCK. Поведение изменилось - стало запускаться всегда и с передачей и без передачи аргументом ssh ключа, но все так же внутри сборки не видно ключей, аналогично выше.
Спасибо, будем посмотреть.
Насколько я помню, build собирает контекст в tar архив, и живой сокет туда пробросить просто невозможно. Только COPY/ADD файла.
Сокет не добавляется в сборочный контекст, а монтируется в сборочный контейнер.
Обсуждают сегодня