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

时间:2018-04-23 11:34:36

标签: nuget openshift s2i

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

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

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

我已尝试添加输入密钥,如the docs中所述。我通过创建一个包含NuGet.config内容并将秘密添加到BuildConfig的秘密来完成此操作。我仍然得到相同的错误(HTTP 401)。

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

1 个答案:

答案 0 :(得分:0)

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

至于能够在存储库中添加配置文件,可以通过在配置中使用环境变量引用来完成此操作,例如<add key="ClearTextPassword" value="%NUGET_REPO_PASSWORD%" />。然后可以在构建配置中配置NUGET_REPO_PASSWORD环境变量,并从OpenShift机密引用值。

希望这能让你前进。如果所有其他方法都失败了,您肯定可以通过在项目存储库的.s2i/bin/assemble添加可执行脚本来覆盖自己的s2i汇编脚本。