0

我设置了 OpenShift 来构建 ASP.NET Core 应用程序。我已成功配置 OpenShift,因此它可以引入最新的源代码。我在日志中看到它开始构建,但它在恢复步骤时立即停止。

OpenShift 无权访问我们的私有 NuGet 源。

我知道我可以将凭据添加到 NuGet.config 文件,但这意味着将敏感信息提交到存储库,这是我们不想要的。

如docs中所述,我已尝试添加 Input Secrets 。为此,我创建了一个包含 NuGet.config 内容的密钥并将该密钥添加到我的 BuildConfig 中。我仍然收到相同的错误(HTTP 401)。

我能以某种方式告诉 OpenShift 如何连接到私有 NuGet 源吗?也许使用秘密功能?

4

1 回答 1

1

在 nuget 配置的情况下,您需要指定NuGet.Config构建输入密钥的安装位置。这可以通过将destinationDir参数设置为有效的配置位置来完成。

至于能够在存储库本身中添加配置文件,您可以通过使用配置中的环境变量引用来做到这一点,例如<add key="ClearTextPassword" value="%NUGET_REPO_PASSWORD%" />. 然后NUGET_REPO_PASSWORD可以在您的构建配置和从 OpenShift 密钥引用的值中配置环境变量。

希望这能让你继续前进。如果一切都失败了,您绝对可以通过在.s2i/bin/assemble项目存储库中添加一个可执行脚本来用您自己的来覆盖 s2i 汇编脚本。

于 2018-04-26T12:18:01.600 回答