【问题标题】:How to manually publish a file to Azure Artifacts?如何手动将文件发布到 Azure Artifacts?
【发布时间】:2020-06-24 20:10:07
【问题描述】:

我有一个在本地计算机上手动创建的文件。我在几个 Azure DevOps 管道中都需要它。

我想把它用作“神器”。

我知道如何从 Azure DevOps Pipeline 发布工件,但我只想从我的计算机上传这个特定文件。我该怎么做?

【问题讨论】:

标签: azure-devops azure-pipelines azure-artifacts


【解决方案1】:

如何手动将文件发布到 Azure Artifacts?

众所周知,Artifact 的本质是共享文件的存储。我们大致可以从Publish build artifacts任务中得到这些信息:

但 Artifact 发布位置的默认值为 Azure Pipelines

这是在 Azure 上设置的共享位置。

更新:

谢谢你的分享:

我们可以使用 AZ 命令行从本地上传到共享位置,例如:

az artifacts universal publish --organization https://dev.azure.com/example/ --feed my_feed --name my-artifact-name --version 0.0.1 --description "Test Description" --path

现在让我们回到我们从“Artifact 的本质是共享文件的存储”开始的第一句话,因此我们可以创建一个共享位置/文件夹来保存文件。它现在被视为“神器”。然后我们只需要确保其他管道可以访问这个共享位置/文件夹。

例如,我们可以在我们的私人代理所在的服务器上创建一个文件夹,然后我们只需将您的文件复制到该文件夹​​。现在,我们可以在使用私有代理构建管道时使用它。显然这不限于本地文件夹,我们也可以创建网络文件夹,只需要保证其他管道可以访问即可。

希望这会有所帮助。

【讨论】:

  • 谢谢;那太棒了。我已经跟进了我的同事,然后他说,我可以使用 az artifacts universal publish --organization https://dev.azure.com/example/ --feed my_feed --name my-artifact-name --version 0.0.1 --description "Test Description" --path . 从本地上传到共享位置。这行得通。我们要更新答案吗?
  • @嘿,当然。我已经用您的解决方案更新了我的答案,您可以检查是否有任何更新和修改?如果是,请直接免费修改我的答案。感谢您帮助我们构建更好的 Azure DevOps。
  • 注意 --path 必须引用一个目录 - 一个文件将无法工作,并且会在不告诉您原因的情况下失败。
【解决方案2】:

你必须通过你的包管理器来推送它,比如 NuGet、npm 或其他任何东西。但我想更好的选择是提交并将这个单个文件推送到特定的 repo(如果这个文件特定于单个项目)或像“Utilities”这样的公共 repo(如果你要在许多项目中重用它)然后下载这个 repo(或者只是文件)在您的管道中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-29
    • 2019-11-08
    • 2020-01-30
    • 1970-01-01
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 2022-10-05
    相关资源
    最近更新 更多