如何让s2i连接到私有NuGet提要

如何让s2i连接到私有NuGet提要,nuget,openshift,s2i,Nuget,Openshift,S2i,我已设置OpenShift以构建ASP.NET核心应用程序。我已经成功地配置了OpenShift,因此它引入了最新的源代码。我在日志中看到,它开始构建,但在恢复步骤中立即停止 OpenShift无法访问我们的私有NuGet提要 我知道我可以向NuGet.config文件添加凭据,但这意味着将敏感信息提交到存储库,这是我们不希望看到的 我尝试添加输入机密,如中所述。为此,我创建了一个包含NuGet.config内容的秘密,并将该秘密添加到我的BuildConfig中。我仍然在HTTP 401中遇到

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

OpenShift无法访问我们的私有NuGet提要

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

我尝试添加输入机密,如中所述。为此,我创建了一个包含NuGet.config内容的秘密,并将该秘密添加到我的BuildConfig中。我仍然在HTTP 401中遇到相同的错误


我能告诉OpenShift如何连接到私有NuGet提要吗?也许可以使用机密功能?

在nuget配置的情况下,您需要指定nuget.Config构建输入机密装载到的位置。这可以通过将destinationDir参数设置为有效值来实现

至于能够在存储库本身中添加配置文件,您可以通过使用配置中的环境变量引用来实现这一点,例如。然后可以在构建配置中配置NUGET_REPO_PASSWORD环境变量,并从OpenShift密码引用值


希望这能让你走。如果所有其他操作都失败,您完全可以通过在项目存储库的.s2i/bin/assemble处添加一个可执行脚本来覆盖s2i汇编脚本。

您可以分享将机密附加到BC的方式吗?@ptrk我刚刚编辑了yaml并添加了机密>机密>名称:。。。正如文档中提到的,秘密通常可以作为文件夹与文件一起装入,因此如果NuGet希望它们位于特定位置,则需要将它们放置在该位置。正如下面提到的@abn,它的destinationDir参数见文档。