По умолчанию gitlab runner, работает под учеткой gitlab-runner, но что если нам нужно делать pull под другой учеткой?
На помощь приходит смена учетки, на сервере под которой будет работать runner. Все действия происходят под Ubuntu 18 Server. Есть 2 способа.
Первый (правильный)
1. Создаем директорию
/etc/systemd/system/gitlab-runner.service.d
2. Создаем файл
/etc/systemd/system/gitlab-runner.service.d/exec_start.conf
3. Пишем в файл
[Service]
ExecStart=
ExecStart=/usr/lib/gitlab-runner/gitlab-runner "run" "--working-directory" "/путь_до_директории" "--config" "/etc/gitlab-runner/config.toml" "--service" "gitlab-runner" "--syslog" "--user" "пользователь"
Где в путь_до_директории
и пользователь
вставляем свои значения.
4. Сохраняем файл и перезапускаем сервис systemctl daemon-reload
Для проверки:
- Удаляем и ставим gitlab runner gitlab-runner uninstall
и gitlab-runner install
- Проверяем ps aux | grep gitlab
Второй (не правильный, так как после upgrade все настройки придется прописывать заново)
1. Открываем файл /etc/systemd/system/gitlab-runner.service
2. Видим:
[Service]
StartLimitInterval=5
StartLimitBurst=10
ExecStart=/usr/lib/gitlab-runner/gitlab-runner "run" "--working-directory" "/home/gitlab-runner" "--config" "/etc/gitlab-runner/config.toml" "--service" "gitlab-runner" "--syslog" "--user" "gitlab-runner"
3. Нам нужно изменить пользователя после --user, закрываем, пишем:
gitlab-runner uninstall
gitlab-runner install --working-directory /home/имя_пользователя --user имя_пользователя
4. Перезагружаемся. Радуемся.