Teamcity REST API:获取工件路径

Teamcity REST API: get an artifact path

我有一些问题: 构建包含 n 个步骤。最后一步是自定义 c# 通知程序,它发送有关构建状态的电子邮件。现在我需要接收工件并将它们附加到我的电子邮件中。问题是在最后一步我们还没有压缩工件,这就是为什么我们需要自己找到它们并压缩。在某些配置中,我没有任何 属性 "checkout directory"。那么,如何获取根结帐文件夹和工件路径?

为了将文件附加到您的电子邮件,我认为您不需要使用 REST API,而是使用内置参数来找出各种路径和位置。在不完全了解您的构建管道的情况下,我只能猜测这就是您需要知道的内容。

内置参数

TeamCity 提供了许多参数,可帮助您选择各种路径

  • %teamcity.agent.work.dir% - 这是代理的工作目录
  • %teamcity.build.checkoutDir% - 这是代理的结帐目录
  • %system.teamcity.build.tempDir% - 这是临时构建目录

将这些作为简单构建的一部分输出,我的是:

查看构建日志将帮助您了解各个位的去向。同样,在没有完全理解您的构建设置的情况下,我只能概括一下,但在这里我们可以看到在结帐目录中生成了 .nupkg

TeamCity 直到最后一个构建步骤在构建配置中执行后才会发布工件,除非您想使用 ##teamcity[publishArtifacts '<path>'] 强制执行此操作,但我认为这对您没有帮助,除非您是然后尝试调用 REST API 来获取工件。

希望对您有所帮助。