【问题标题】:Downloading maven artifcats from azure devops从 azure devops 下载 maven 工件
【发布时间】:2019-08-19 21:15:35
【问题描述】:

我们已将所有 gradle/maven 工件发布到 azure devops 工件存储库。现在,我们想在一些脚本或 python 代码中使用这些工件。当我查看“连接到 feed”的选项时,它只显示特定于 maven 或 gradle 的选项。

我们可以休息调用或 API 以从 azure devops 下载特定工件吗?

【问题讨论】:

    标签: azure azure-devops


    【解决方案1】:

    为之前的回答道歉。

    对于rest API,当然可以。先参考这个文档:Maven - Download Package

    GET https://pkgs.dev.azure.com/{org name}/{project name}/_apis/packaging/feeds/{feed name}/maven/{groupId}/{artifactId}/{version}/{fileName}/content?api-version=5.1-preview.1
    

    要在脚本中下载这个,你可以使用powershell任务来实现它:

    $strURL = "https://pkgs.dev.azure.com/{org name}/{project name}/_apis/packaging/feeds/{feed name}/maven/{groupId}/{artifactId}/{version}/{fileName}/content?api-version=5.1-preview.1"
    $filePath="D:\"
    $fileName=$filePath+"\build.{type}"
    $pipeline = Invoke-RestMethod -Uri $strURL -Headers @{   
     Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
    } -Method GET  -OutFile $fileName
    

    替换相关文件类型以在$fileName=$filePath+"\build.{type}" 中指定。此脚本成功完成后,您可以在相应的文件路径中查看您的本地文件。

    【讨论】:

    • 我想使用 rest 调用来下载工件。不是通过使用 maven pm.xml 等
    • 还有一些问题。如何获取最新版本的快照 maven 包。在 REST 调用中,我需要指定确切的文件名 .. 这在快照版本的情况下是不可能的
    • 你可以在推送这个包的时候把其中的一些存到变量中,然后在这个下载任务中使用。
    猜你喜欢
    • 1970-01-01
    • 2021-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 2021-03-27
    • 2021-09-22
    相关资源
    最近更新 更多