Как присвоить значение переменной teamcity из команды msbuild

#visual-studio-2013 #msbuild #teamcity

#visual-studio-2013 #msbuild #teamcity

Вопрос:

У меня есть шаг msbuild, на котором я проанализирую XML-файл и получу некоторые отфильтрованные данные. Мне нужно передать отфильтрованные данные в Teamcity. Можно ли это сделать с помощью переменной teamcity или любым другим способом?

 <Target Name="ParseXmlAndReturn" >
<XmlPeek XmlInputPath ="$(ResultDir)xmlfile.xml"
         Query="<filter to get specific data from xml>">
  <Output TaskParameter="Result" PropertyName="parsedxml"/>
</XmlPeek>
<Message Text="parsed xml is $(parsedxml)"/>
  

Из приведенной выше задачи msbuild мне нужно передать значение parsedxml в teamcity или присвоить переменной systemvariable для teamcity значение parsedvalue.

Ответ №1:

Из документации Teamcity «Взаимодействие со сценарием сборки«:

Используя специальное служебное сообщение в вашем сценарии сборки, вы можете динамически обновлять некоторые параметры сборки прямо на этапе сборки, чтобы следующие шаги сборки выполнялись с измененным набором параметров сборки. ##teamcity[setParameter name='ddd' value='fff']

Поэтому измените сообщение на что-то вроде

 <Message Text="##teamcity[setParameter name='ParsedXML' value='$(parsedxml)']"/>