Сегодня вечером я столкнулся с той же проблемой, и она сломала мои сборки в Jenkins из-за истекшего ssl-сертификата на моем сервере Gitlab. Ниже перечислены шаги, которые необходимо предпринять для исправления ошибки сборки Jenkins, когда Jenkins пытается извлечь из вашего репозитория Gitlab, когда истек срок действия сертификата Gitlabs ssl.
** Все приведенные ниже команды выполняются в Ubuntu 16.04
1) Создайте CSR или SAN CSR для вашего сервера Gitlab
Это даст файлы .csr и .key
Не делиться и не публиковать файл ".key" (ЕГО ЧАСТНЫЙ КЛЮЧ)
Используйте эти файлы для шага 2
2) Сгенерируйте сертификат SSL для сервера Gitlab (это даст файл .crt)
3) Поместите файл .crt и .key в / etc / gitlab / ssl / (Ubuntu 16.04)
- Я использовал свой каталог сервера, но ваш может отличаться в зависимости от платформы
sudo openssl x509 -req -days 365 -in "/etc/gitlab/ssl/gitlab.csr" -signkey "/etc/gitlab/ssl/gitlab.key" -out "/ etc / gitlab / ssl / gitlab .crt "
4) Отредактируйте файл /etc/gitlab/gitlab.rb, чтобы отразить ваше новое общее имя
- То есть если ты это изменил
external_url 'https://' #ip адрес или имя DNS
5) Переконфигурируйте Gitlab (пропустите этот шаг, если вы не изменили свое общее имя
sudo gitlab-re перенастроить
6) Перезапустите сервер gitlab, чтобы изменения вступили в силу
- Это приведет к выходу из строя, поэтому, если вы работаете, убедитесь, что у вас есть окно технического обслуживания
перезапуск sudo systemctl gitlab-runvdir.service
7) Убедитесь, что сервер снова подключен
sudo systemctl status gitlab-runvdir.service
8) Теперь на вашем сервере Jenkins вам необходимо обновить /etc/ssl/certs/ca-certificates.crt новым сертификатом сервера Gitlab
** Опять же, я запускаю это в Ubuntu 16.04 (это может отличаться в зависимости от платформы)
** Измените в приведенной ниже команде общее имя вашего сервера gitlab
sudo su -
echo -n | openssl s_client -showcerts -connect <common_name_goes_here>:443 2>/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' >> /etc/ssl/certs/ca-certificates.crt
9) Попробуйте запустить сборку в Jenkins