在我的TeamCity实例中,我有一个构建,可以从源代码构建,打包和发布NuGet包。
此特定包在构建参数中具有硬编码版本,并且在每次构建时都不会递增。
在构建的最后一步,实际发布,如果我试图发布一个已经发布的版本的包,我会收到一个错误(NuGet Publish type step返回1)。
此返回代码将整个构建标记为失败,因为有一般条件使构建失败,其中任何步骤返回0以外的任何其他内容。
我想有第三个构建状态 - 部分成功,表明即使一切顺利,发布也没有发生。这有可能通过配置中的一些技巧吗?任何类型的结果都是足够的,只要它没有标记为红色为失败并且不是完全绿色,不会让我看到它没有发布。
答案 0 :(得分:1)
TeamCity中的构建配置没有“警告”结果。
我的建议是将Package / Publish步骤移动到由Build配置上的完成构建触发器(仅成功)触发的单独构建配置中。这样构建配置可以成功,并且Package配置可能会独立失败 - 您将看到两者的结果,它们可以为您提供所需的内容。
或者,如果包含您要生成的版本的包已经存在,并且在这种情况下不执行任何操作(或以不同方式处理),则可以查询Nuget服务器。这应该是一个小小的Powershell。