У меня есть локальный узел gitlab и локальный узел drone.io. Узел Drone.io работает на Ubuntu. Узел gitlab использует самоподписанный сертификат. Я добавил сертификат в узел drone.io каноническим способом Ubuntu (cp cert.pem /usr/share/ca-certificates/; update-ca-certificates). Дрон запускается с -v /etc/ssl:/etc/ssl:ro . Я знаю, что контейнер дрона знает этот сертификат, так как он решил проблему невозможности входа в систему из-за проблемы с сертификатом в oauth. Но сборка выдает ошибку в git fetch с «Проблема SSL-сертификата: самозаверяющий сертификат»
Я подозреваю, что дрон запускает какие-то другие контейнеры для сборки, а у другого контейнера нет сертификата. Но я потерял представление о том, что происходит, и понятия не имею, как внедрить туда свой сертификат.
Скрипт запуска дрона:
#!/bin/bash
set -x
docker kill drone
docker rm drone
docker run \
--volume /var/lib/drone:/var/lib/drone \
--volume /var/run/docker.sock:/var/run/docker.sock \
--volume /etc/ssl:/etc/ssl:ro \
--env-file /etc/drone/dronerc \
--restart=always \
--publish=80:8000 \
--detach=true \
--name=drone \
drone/drone:0.4 \
-debug
/etc/дрон/дронерк:
# in gitlab, as an administrator, go to /admin/applications
# add a new application, the redirect uri being https://drone.machine/authorize
REMOTE_DRIVER=gitlab
REMOTE_CONFIG=https://ci-poc.devel.balabit?client_id=b88f2a6faefd8d9a05eddd82c8327bda6a59858fc7772753f4e2c0e6a7cd96e4&client_secret=966f752d39f211ef6b79a8c079d2ff1226f6ccd772a239efab4f4e4fb5de67a9
DATABASE_DRIVER=sqlite3
DATABASE_CONFIG=/var/lib/drone/drone.sqlite
HTTP_PROXY=http://proxy.balabit:3128/
HTTPS_PROXY=http://proxy.balabit:3128/
журнал сборки:
[info] Pulling image plugins/drone-git:latest
Drone Git Plugin built from 8be7aa9
$ git init
Initialized empty Git repository in /drone/src/gitlab.private/mag/devsec/.git/
$ git remote add origin https://gitlab.private/mag/devsec.git
$ git fetch --no-tags --depth=50 origin +refs/heads/master:
fatal: unable to access 'https://gitlab.private/mag/devsec.git/': SSL certificate problem: self signed certificate
[info] build failed (exit code 1)