File Content Replacer having no effect on artifacts

本秂侑毒 提交于 2019-12-10 23:33:00

问题


I'm using a relatively new feature of TeamCity: File Content Replacer. In my current setup I have a version.js file in my VCS:

window["MyPlugin"].version = "1.0.##VCS_REVISION##.##CI_BUILD_NUMBER##";

I use the File Content Replacer build feature to replace that last part with:

%build.vcs.number%.%system.build.number%

So far so good!

I have one relevant build step. It's an MSBuild step, but it does nothing except call a ps1, which does two relevant things:

  1. Moves all js files to an "output" folder;
  2. Zips all js files into a "zips" folder;

Those are also my two artifacts (an output folder, and a zip file).

However, the File Content Replacer reverts its changes, but this revert is also reflected in artifact nr 1, which are files that are not under version control (even though they are located as a subfolder of my project folder). The version.js file in the zip file is not reverted.

If I change artifact 1 to be my/output/folder => all.%build.vcs.number%.zip then the zip file will also contain a reverted state instead of the output I want.

How do I set TeamCity up so that the artifact files are not affected by this revert? Or do I need something other than this Build Feature?

I'm using TeamCity 9.1.3 build 37176 running on Windows 2012 Server (VM) and the default database for evaluation purposes. I'm using TFS 2013 as my VCS.

PS. I've also asked about this on the JetBrains forums.


回答1:


File content replace reverts changes before "Publishing artifacts" stage. This is "by design". You can check it in the build log. However you can find modified files in hidden artifacts .teamcity/JetBrains.FileContentReplacer/.
If you want to publish changed file as regular artifact you should create a copy of the file (or pack/archive it as as you've already done). Also instead of using File Content Replacer build feature you can create a script that would make needed changes which aren't reverted.



来源:https://stackoverflow.com/questions/33666634/file-content-replacer-having-no-effect-on-artifacts

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!