Teamcity 9: How to add git short hash into assembl

2020-05-18 23:39发布

I'm trying to use assembly info patcher to create a version number something like:

1.2.3.1a3c19e

where the last bit is the git short hash.

I've tried using a powershell script build step to create the short hash (as I cant find a variable that has it) and adding this to a system variable but this build step appears to run after assembly info patcher, so isn't much use.

2条回答
干净又极端
2楼-- · 2020-05-19 00:03

If you want to write this to the Assembly Info field it can be done, but it requires a separate build configuration to generate the build number. The sole purpose of this step is to create the build number that has the hash appended to it.

1. Create a build configuration to generate the short hash

Build Config

2. Add a step to generate the hash

Build Config

3. Add a parameter to store the hash

Param

4. Add a second build configuration and add a dependency to the first one

Dependency

5. You can now consume the parameter in the dependent step

Consume

6. At this point you can use it in the assembly info patcher

Patcher

The alternative to this is to write your build number back to Git using the VCS labeling build feature.

Labeling

Hope this helps.

查看更多
做自己的国王
3楼-- · 2020-05-19 00:10

If you mean .NET assembly you will not be able to use git's short hash as the revision number just because it accepts numbers only. You can check it yourself and put the version above to AssemblyVersion. I bet your app will not be compiled. Instead you can use %build.counter% variable from teamcity as the revision number.

查看更多
登录 后发表回答