.net-core - 无法以其他用户身份恢复 nuget 包
问题描述
当我dotnet restore
以默认用户身份运行时,一切正常:
> dotnet restore
Determining projects to restore...
Restored /home/gitlab-runner/builds/LaP8vSUZ/0/my-group/my-api/src/my-api.Api/my-api.Api.csproj (in 441 ms).
但是当我尝试以其他用户身份运行它时,它失败了:
> runuser gitlab-runner -c 'dotnet restore'
/home/gitlab-runner/builds/LaP8vSUZ/0/my-group/my-api/src/my-api.Api/my-api.Api.csproj : error NU1102: Unable to find package MyCompany.Platform.Aspnet with version (>= 1.4.4)
... Found 26 version(s) in MyCompanyFeed [ Nearest version: 1.4.4-beta ]
好像dotnet restore
under下gitlab-runner
没有看到最新的包版本。尝试使用以下方法清理缓存:
runuser gitlab-runner -c 'dotnet nuget locals all -l'
没有帮助。
结果,我的 CI/CD 失败,因为它无法构建项目。为什么会发生,我该如何解决这个问题?
解决方案
清除全局包和临时帮助:
> runuser gitlab-runner -c 'dotnet nuget locals global-packages -c'
...
> runuser gitlab-runner -c 'dotnet nuget locals temp -c'
...
> runuser gitlab-runner -c 'dotnet restore'
Determining projects to restore...
Restored /home/gitlab-runner/builds/LaP8vSUZ/0/my-group/my-api/src/my-api.Api/my-api.Api.csproj (in 441 ms).
想知道为什么all
参数没有清除全局:(
推荐阅读
- java - JComponent 进入非空 JPanel
- java - 是否存在超过 double 数字精度的 Java 数据类型?
- scala - Scala - Spark:获取包含空值的列的列名
- reactjs - 如何创建可扩展的 graphql 查询/突变/片段结构?
- android - 带有 fontFamily 标签的 Android 自定义字体,而不是书法库
- arduino - 从 ESP8266 从机接收数据并通过 FTP 协议发送
- java - 我如何修复Java中的数组列表转换
- nginx - 如何为 nginx 上的不同端口使用一个 ssl 证书
- json - “未找到:URI gs://”文件实际存在于存储桶 URI 中时出错
- ios - 在不将其发布到 iCloud Drive 的情况下使用 iCloud 容器是否正常?