StackOverflow或其他博客上的许多问题都表明如何使用Jenkins内部版本号和更改程序集版本插件在AssemblyInfo.cs文件中设置AssemblyVersion。
但是我试图做相反的事情 - 将jenkins构建版本设置为AssemblyInfo.cs中的版本?显然,我会在源代码被删除后执行此操作。
为什么我要这样做? 原因:我想同步以下四个组件'
我的AssemblyInfo.cs,例如[assembly:AssemblyVersion(" 2.10。*")] 是我的真相来源" for major.minor versioning
在构建时,我会将版本更新为,例如73年2月10日 其中73来自$ {BUILDS_ALL_TIME}
我们将代码发布到内部nuget服务器, 所以我喜欢nuget包的版本,例如73年2月10日
我计划使用Jenkins Build的名称标记/标记我们的源代码控制
所以我喜欢我的jenkins构建名称,例如 MyProject.2.10.73
我可以这样做吗? 也就是说,我喜欢在我的AssemblyInfo.cs中设置的major.minor版本,它是源代码控制。
谢谢!
答案 0 :(得分:1)
感谢Suresh指出我正确的方向。
我结束了 1)使用EnvInject插件(作为构建操作)
https://wiki.jenkins.io/display/JENKINS/EnvInject+Plugin
2)写了我自己的PowerShell脚本来读取我的AssemblyInfo.cs文件并输出我的环境属性 看这篇文章
3)使用Build Name Setter插件然后在构建之后更改名称
https://wiki.jenkins.io/display/JENKINS/Build+Name+Setter+Plugin