如何获取上次成功构建的版本号?

马丁·恩德森

背景

我有一个第三方Web服务,其中包含用于安装和卸载工件的方法。在安装和卸载时,都指定了一个名为package-%maven.project.version%.zip的工件。在安装新软件包之前,我需要卸载以前安装的软件包。

解决方案

我找到了这个解决方案,但是由于这是实现连续部署的最后一步,因此我需要自动化的东西而不是提示。

可以通过构建步骤自动化的另一个解决方案是利用TeamCity REST API:

  1. 呼叫http:// localhost / httpAuth / app / rest / builds /?locator = buildType:Development,count:1,status:SUCCESS
  2. 在第1步的响应中使用构建ID来调用http:// localhost / httpAuth / app / rest / builds / id:[build-id] / resulting-properties
  3. 在步骤2的响应中从下一个节点检索值,<property name="maven.project.version" value="1.2.3"/>

问题

有没有比使用TeamCity REST API更简单的方法?

马丁·恩德森

因此,我决定在PowerShell的构建步骤中使用TeamCity REST API从%maven.project.version%上次成功的构建中检索

$client = New-Object System.Net.WebClient
$client.Credentials = New-Object System.Net.NetworkCredential $username, $password

$latestBuildUrl = "http://localhost/httpAuth/app/rest/builds/?locator=buildType:Development,count:1,status:SUCCESS"
[xml]$latestBuild = $client.DownloadString($latestBuildUrl)
$latestBuildId = $latestBuild.builds.build.id

$propertiesUrl = "http://localhost/httpAuth/app/rest/builds/id:$latestBuildId/resulting-properties"
[xml]$properties = $client.DownloadString($propertiesUrl)
$mavenProjectVersion = $properties.SelectSingleNode("//property[@name='maven.project.version']").value

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何根据上次批准的iOS版本增加版本号

来自分类Dev

如何获取快照包的版本号?

来自分类Dev

如何从输出中获取版本号

来自分类Dev

如何获取快照包的版本号?

来自分类Dev

如何使用sed获取版本号

来自分类Dev

获取应用版本号

来自分类Dev

如何在POM中获取Maven版本号

来自分类Dev

如何在Java中获取Tomcat版本号

来自分类Dev

angularjs如何从该指令获取版本号

来自分类Dev

如何使用SVN和Maven获取内部版本号?

来自分类Dev

如何在OS X中获取Bash版本号

来自分类Dev

如何以编程方式获取露天版本号

来自分类Dev

如何使用Maven获取Jenkins内部版本号

来自分类Dev

如何在墙纸上获取Ubuntu版本号?

来自分类Dev

如何使用shell命令仅获取PHP的版本号?

来自分类Dev

如何在 Android 中获取 Jenkins 内部版本号?

来自分类Dev

如何仅获取 bash ssh 版本号?

来自分类Dev

获取JAR文件的版本号

来自分类Dev

仅从dll文件获取版本号

来自分类Dev

获取JAR文件的版本号

来自分类Dev

获取我的网站的版本号

来自分类Dev

获取可比较的 PostgreSQL 版本号

来自分类Dev

从文件中获取版本号

来自分类Dev

在预构建步骤中获取InstallShield Limited Edition中的版本号

来自分类Dev

先前版本号的版本号

来自分类Dev

flyway如何对版本号进行排序?

来自分类Dev

Windows版本号如何工作?

来自分类Dev

如何grep XRDP版本号?

来自分类Dev

如何隐藏Dnsmasq版本号?