我目前正在使用 gitlab.com (不是本地安装)及其多运行程序进行 CI 集成。这在我的一个项目中效果很好,但在另一个项目中却失败了。
我的主机使用的是 2012R2,MSBuild 版本为 14.0.23107.0。我知道下面的错误显示 403,这是访问被拒绝的消息。我的问题是找到要更改的权限设置。
错误信息:
使用 Shell 运行 gitlab-ci-multi-runner 1.5.3 (fb49c47)
执行器...在 WIN-E0ORPCQUFHS 上运行...
正在获取更改...
HEAD 现在位于 6a70d96 更新运行程序文件远程:访问被拒绝致命:
无法访问
'https://gitlab-ci-token:xxxxxxxxx[电子邮件受保护]/##已编辑##/ADInactiveObjectCleanup.git/ https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.com/##REDACTED##/ADInactiveObjectCleanup.git/':
请求的 URL 返回错误:403 将 60ea1410 签出为
生产...
致命:引用不是树:
60ea1410dd7586f6ed9535d058f07c5bea2ba9c7 错误:构建失败:退出
状态 128
gitlab-ci.yml 文件:
variables:
Solution: ADInactiveObjectCleanup.sln
before_script:
#- "echo off"
#- 'call "%VS120COMNTOOLS%\vsvars32.bat"'
## output environment variables (usefull for debugging, propably not what you want to do if your ci server is public)
#- echo.
#- set
#- echo.
stages:
- build
#- test
#- deploy
build:
stage: build
script:
- echo building...
- '"%ProgramFiles(x86)%\MSBuild\14.0\Bin\msbuild.exe" "%Solution%" /p:Configuration=Release'
except:
#- tags
为了解决这个问题,我必须将自己添加为项目成员。这是一个私人仓库。我不确定这是否会导致跑步者因不同的权限设置而失败,但这很有可能。
这个帮助article https://gitlab.com/help/user/project/new_ci_build_permissions_model.mdgitlab 概述了这个问题。
随着新的权限模型的到位,有时您的
构建将会失败。这很可能是因为您的项目试图
访问其他项目的源代码,并且您没有合适的资源
权限。在构建日志中查找有关 403 或
禁止访问消息。
作为管理员,您可以验证
用户是会员他们试图访问的组或项目的名称
到,您可以模拟用户来重试失败的构建
以验证一切是否正确。
在项目页面中单击设置齿轮,然后单击成员。将您自己(或生成构建的用户)添加为项目的成员。我使用了“Master”角色,但基于这个文件 https://gitlab.com/help/user/permissions您至少可以使用“记者”角色。报告者角色是仍然有权访问“拉取项目代码”的最小权限。这消除了我的 403 错误并允许我继续。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)