【问题标题】:Nuget.exe push **\*.nupkg & Azure DevOps ArtifactsNuget.exe push **\*.nupkg & Azure DevOps Artifacts
【发布时间】:2020-11-29 06:18:03
【问题描述】:

我目前正在将我的组织从 on prem nuget (v2) 迁移到 Azure DevOps Artifacts。 (Cloud)我们有几十个不同版本的包,我想将它们推入 AzDo Artifacts。看起来我可以使用 powershell 执行此操作并使用 \MyFileSharePath***.nupkg 作为路径,它应该将它们全部抓取并推送每个包的每个单独版本。

这是一种可行的方法吗? 有没有更好的方法我应该研究一下?

这个问题看起来很相似,但涉及所有本地资源。不确定这是否重要。:

Can I upload existing NuGet packages to an Azure DevOps artifacts feed?

【问题讨论】:

    标签: powershell azure-devops nuget


    【解决方案1】:

    这是有效的方法,推荐在the documentation

    对于每个共享,将共享中的所有包推送到新提要:nuget push {your package path}*.nupkg -Source {your NuGet package source URL} -ApiKey Azure DevOps Services

    您还有关于将当前提要设为只读的好技巧

    对于较大的团队,您应该考虑在执行 nuget 推送操作之前将每个共享标记为只读,以确保在迁移期间没有人添加或更新包。

    因此我认为没有更好的方法。

    【讨论】:

      【解决方案2】:

      我最后使用的命令是:

      .\nuget.exe push [LocalPackageStorage]\**\*.nupkg -source [Our Azure DevOps Artifacts Feed] -apikey [Any Non null string] -timeout 1200
      

      请注意,这会递归地遍历您的整个结构并在那里获取每个包的每个版本。它运行顺利,但我第一次运行它时过早地失败了,因为推送的默认超时时间是 300 秒。当这种情况发生时,我结束了对提要的处理,因为我在一个绿色领域的场景中工作,最快的方法是清除它并重新开始,而不是弄清楚哪些已经上传,哪些没有上传。如果您不是在类似的未开发场景中工作,请非常小心,因为这可能会导致很多非常烦人的工作,以找出哪些已经完成,哪些没有完成。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多