Мои предположения:
У вас есть Gitlab Runner с запущенным докером-исполнителем (может быть локально).
У вас есть сервер для развертывания (тоже может быть локально, он должен быть доступен для Runner).
У вас есть учетная запись Gitlab, и вы уже создали репозиторий для своего проекта с файлом .gitlab-ci.yml.
Необходимые шаги
Подключитесь по ssh к раннеру:
|
|
Создайте пару ключей SSH:
|
|
Получите закрытый ключ раннера:
|
|
Добавьте этот закрытый ключ в качестве переменной в свой проект на Gitlab:
Перейдите: Settings > CI/CD > Variables
Выполните вход по SSH к серверу:
|
|
Скопируйте открытый ключ раннера cat id_rsa.pub
внутрь ~/.ssh/authorized_keys
сервера.
Измените свой .gitlab-ci.yml
. согласно следующему примеру. Предполагается образ на основе ubuntu.
Отредактируйте CI скрипт свои задачи:
|
|
Сделайте коммит .gitlab-ci.yml
, запустится пайплайн и отправит по ssh на ваш сервер необходимых файл!
Решение ошибки Error loading key “/dev/fd/63”: invalid format
Если при выполнении CI/CD возникает ошибка вида:
|
|
Выполните команду получения ключа следующим образом:
|
|