gitlab должен скачать ваш проект, потом выкинуть по ssh на ваш сервер, ниже скину мой конфиг, который даёт доступ гитлабу к репозиториям организации. Помимо всего, вам нужно добавить ssh ключ, зайти сюда
https://gitlab.com/orgname/reponame/settings/ci_cd, сделать
xclip -sel clip < ~/.ssh/id_rsa.pub
и подсунуть его гитлабу на той самой странице в переменные скопированный ключ.
указать переменную SSH_PRIVATE_KEY
Всё.
before_script:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config