gitlab runner Запрашиваемая ошибка URL: 403

В настоящее время я использую gitlab.com (а не локальную установку) с их многоканальным интерфейсом для интеграции CI. Это отлично работает в одном из моих проектов, но не подходит для другого.

Я использую 2012R2 для своего хоста с MSBuild версии 14.0.23107.0. Я знаю, что приведенная ниже ошибка показывает 403, которая является сообщением об отказе в доступе. Моя проблема заключается в нахождении переменных разрешения : Решение: ADInactiveObjectCleanup.sln before_script: # - «echo off» # - «call»% VS120COMNTOOLS% vsvars32.bat «'## переменные среды вывода (полезно для отладки, возможно не то, что вы хотите делать, если ваш ci-сервер является общедоступным) # - echo. # - set # - echo. Этапы: - build # - test # - deploy build: stage: build script: - echo building ... - '"% ProgramFiles (x86)% MSBuild 14.0 Bin msbuild.exe" "% Solution%" / p : Configuration = Release ', за исключением: # - тегов для изменения.

Сообщение об ошибке:

Работа с gitlab-ci-multi-runner 1.5.3 (fb49c47) Использование исполнителя оболочки ... Работает на WIN-E0ORPCQUFHS ...

Извлечение изменений ...

HEAD теперь находится в 6a70d96 файлах с файловым файлом обновления: доступ запрещен фатальным: невозможно получить доступ к « https: // gitlab-ci-token: xxxxxxxxxxxxxxxxxxxx@gitlab.com/##REDACTED##/ADInactiveObjectCleanup.git/ »: запрошенный URL-адрес возвращен Ошибка: 403 Проверка 60ea1410 как Производство ...

fatal: ссылка не дерево: 60ea1410dd7586f6ed9535d058f07c5bea2ba9c7 ОШИБКА: сбой сборки: статус выхода 128

Файл gitlab-ci.yml:

cd

git,msbuild,gitlab,gitlab-ci,gitlab-ci-runner,

5

Ответов: 2


12 принят

Чтобы решить эту проблему, мне пришлось добавить себя в качестве члена проекта. Это частное репо. Я не уверен, что это привело к тому, что бегун потерпел неудачу с другой настройкой разрешения или нет, но это очень возможно.

Эта статья справки в gitlab описывает эту проблему.

При наличии новой модели разрешения могут возникнуть ситуации, когда ваша сборка завершится неудачей. Это, скорее всего, потому, что ваш проект пытается получить доступ к источникам других проектов, и у вас нет соответствующих разрешений. В журнале построения найдите информацию о 403 или запрещенных сообщениях доступа.

В качестве администратора вы можете убедиться, что пользователь является членом группы или проекта, к которому они стремятся, и вы можете выдавать себя за повторную попытку неудачной сборки, чтобы убедиться, что все правильно.

На странице проекта щелкните шестеренку настроек, а затем щелкните элементы. Добавьте себя (или пользовательские сборки) в качестве участника проекта. Я использовал роль «Мастер», но, основываясь на этом документе, вы, вероятно, можете использовать роль «Репортер» как минимум. Роль репортера - это наименьшая привилегия, которая все еще имеет доступ к «Pull project code». Это удалило мою ошибку 403 и позволило мне продолжить.


0

Похоже, вам нужно добавить gitlabuserкоманду добавить текущую директорию в файл before_script. Затем перейдите к разрешениям для доступа к родительскому элементу этой папки. Если вы установили своего бегуна gitlab в c: glrunner, возможно, c: glrunner builds разрешено вам исправлять.

Вторая проблема заключается в том, что вам может понадобиться принудительно создать новый git-клон, удалив папку builds.

Возможно, вы захотите изменить учетные данные входа для службы бегунов gitlab, setкоторая должна быть учетной записью без администратора, которая может иметь меньше преимуществ, чем учетная запись LOCAL SYSTEM, которую использует ваш бегун gitlab по умолчанию.

Если вы хотите узнать, кто вошел в систему, добавьте setтакже свой файл before_script, и вы получите дамп переменной среды. Из этого вы можете видеть, какая учетная запись зарегистрирована и где находится ее USERPROFILE и другие вещи.

Иди, MSBuild, gitlab, gitlab-CI-CI-бегун gitlab,
Похожие вопросы