Я пытался настроить конвейер ci в gitlab, который будет выполнять файл auto_update_test.sh всякий раз, когда функциональная ветка объединяется с основной веткой. Я установил gitlab-runner на свой Linux-сервер и зарегистрировал его с помощью Project Runner.
репозиторий gitlab на моем сервере находится в /opt/splunktest /opt/splunktest
содержимое моего auto_update_test.sh следующее: `[splunk@xyz splunktest]$ cat auto_update_test.sh #!/bin/bash
Путь к каталогу вашего приложения Splunk
#APP_DIR="/opt/splunktest"
Git pull в ветке разработки
#cd "$APP_DIR" || Выход компакт-диск /opt/splunktest git pull origin main `
ниже приведено содержимое .gitlab-ci.yml
`[splunk@maue10dlms001 splunktest]$ cat .gitlab-ci.yml
.gitlab-ci.yml
этапы:
[*]развернуть
развернуть: этап: развертывание сценарий: - ./auto_update_test.sh только: - основной`
Позвольте мне объяснить, чего я ожидаю
Я хочу, чтобы auto_update_test.sh выполнялся на моем сервере, когда я объединяю ветку функции, скажем, ветку "dev", с основной веткой в gitlab.
Ошибка
Когда я вношу изменение текста в splunktext.txt из ветки dev и объединяю dev с основной, появляется сообщение об ошибке «Нет такого файла или каталога».
Ниже приведены ошибки:
Ошибка сборки gitlab
Я попробовал проверить все разрешения. Репозиторий настроен как пользователь splunk, а также добавлен пользователь gitlab-runner в группу splunk.
splunk@xyz splunktest]$ getent group splunk splunk
Я добавил все разрешения, auto_update_test.sh имеет разрешение на выполнение.
Перезапустил splunk и пользователя gitlab-runner
Мобильная версия