【问题标题】:Authentication installing Chocolatey packages hosted in VSTS安装在 VSTS 中托管的 Chocolatey 包的身份验证
【发布时间】:2017-08-20 17:39:42
【问题描述】:

在工作中,我们创建存储在 VSTS 中的 nuget 包。所有开发人员都已将我们的存储库添加到全局 nuget.config(在文件夹 %appdata%\Nuget 中),创建了个人访问令牌 (PAT),并安装了 CredentialProvider.VSS.exe。因此使用命令行恢复 nuget 包,例如nuget.exe restore,无需提供任何密码或用户名即可完成。

如果对 Chocolatey 包装使用相同的配方,事情就不那么好了。 blog at roadtoalm.com 描述了如何安装存储在 VSTS 中的 Chocolatey 包,但您必须提供 PAT、存储库地址和用户名(尽管后者可能是虚假值,但并未被使用)。有没有办法让 Chocolatey 像 nuget 那样使用凭证提供程序?

更新: 将我的 Choco 存储库添加到已知存储库列表后,我的 Chocolatey.config 文件看起来像

  <sources>
    <source id="chocolatey" value="https://chocolatey.org/api/v2/" disabled="true" bypassProxy="false" selfService="false" priority="0" />    
    <source id="CompanyChoco" value="https://Company.pkgs.visualstudio.com/_packaging/CompanyChoco/nuget/v2/" disabled="false" bypassProxy="false" selfService="false" priority="1" />
  </sources>

按照@starain-MSFT 的建议,我创建了一个 package.config 文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
  <packages>
    <package id="MyPackage" version="0.0.4"  source="https://Company.pkgs.visualstudio.com/_packaging/CompanyChoco/nuget/v2/" />
  </packages>

我还确保在 %appdata%\local\nuget\credentialproviders 中安装了最新版本的 CredentialProvider.VSS.exe。 执行“choco install package.config”时,仍然会提示我输入用户名和密码。

【问题讨论】:

    标签: azure-devops chocolatey credential-providers


    【解决方案1】:

    按照以下步骤尝试:

    1. Packages.config 中定义包
    2. 致电choco source add command添加另一个来源(使用choco来源列表检查来源)
    3. 致电choco install [packages.config] command 安装软件包。

    【讨论】:

    • 按照您在步骤 1 中提到的链接,我看到 packages.config 是您想要下载一堆 Choco 包时使用的东西,所以我看不出这有什么帮助。步骤 2-3 正是我已经做过的,但是当 Choco 包存储在 VSTS 中时,这还不够。请注意,问题是关于存储在 VSTS 中的 Choco 包,而不是关于一般的 Chocolatey 存储库。
    • @SimonAx 1.packages.config 定义了您要安装的包,您也可以指定包的来源。那么你能提供样品来解释你的要求吗? 2. 是的,包存储在VSTS中,choco source add命令用于添加你的VSTS Feed,你可以指定优先级(--priority,高于其他),然后它会从你的VSTS feed中查找包第一的。顺便说一句,CredentialProvider.VSS.exe 将有助于身份验证。
    • 问题已解决:在第 2 步中,确保添加用户名和密码。 PAT 的散列版本将存储在 choco 配置文件中。语法是 choco sources add -n "NameOfRepo" -s "https://Company.pkgs.visualstudio.com/_packaging/CompanyChoco/nuget/v2/"-u "DoesntMatter" -p "PAT" 使用 v3 连接到 repo 不起作用(也在原始问题中提供的链接中指出)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-23
    • 2018-08-28
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2019-05-02
    相关资源
    最近更新 更多