1

我们有一个 teamcity 构建服务器并使用 octopus 自动部署部署到 Windows 服务器。

该程序的本地版本很好,但部署的 exe 并未反映更改。我什至可以在 BitBucket 上看到提交的代码。

我使用 DotPeek 检查 exe 以获取更新的代码。我不想手动部署它。

我们过去曾经遇到过这个问题。它曾经通过重新运行部署来修复。我今天已经进行了 10 次这些部署,但仍然无法更改我的代码。

期望的行为是成功部署提交的代码。有没有人遇到过类似的事情?

4

2 回答 2

0

当您从构建过程中自动创建章鱼版本时,它将自动从 nuget 提要中选择“最新”代码包。这里的最新是指版本号而不是日期。

例如,在某些时候,您可能已经将版本为 1.1.222 的包推送到 octopus,然后您更改了版本控制,现在有版本为 1.0.1.223、1.0.1.224 的包。在这种情况下,八达通将继续选择 1.1.222 作为最新版本,因为它的版本号更大。

所以。1. 确保您的构建过程实际上增加了包版本。1.1 检查您的软件包提要(它是内置的章鱼提要,请转到 Octopus 的库页面)并确保最新的软件包具有更新的版本。2. 检查章鱼选择了哪个版本的包,通过项目>发布>(发布号) 3. 将构建过程中的步骤添加到版本 .exe/.DLL 文件中,这样您就可以在不反汇编的情况下检查版本(仅打开文件属性)

希望这可以帮助。

于 2017-04-26T19:45:44.983 回答
0

您可以强制构建 Octopus 以使用特定版本进行发布和部署

octo create-release  --releaseNumber=VALUE --deployto=VALUE

这将使用特定的 releaseNumber 部署到您的目标环境,即使版本可能会更低

于 2017-04-29T10:44:02.670 回答