У меня есть рабочий файл MSBuild с определенными целями, которые я хочу запустить в сборке TFS. Цели полагаются на определенные переменные среды и свойства MSBuild, которые уже определены. У меня есть вкладка «Переменные» в моем редакторе определения сборки TFS, где я могу якобы устанавливать значения переменных, чтобы они действительно определялись при запуске целевых объектов, но кажется, что допустимы только буквенные значения - если я хочу определить переменную в терминах другой переменной (например, %OTHER_VARIABLE%\subfolder
), нет никакого расширения переменной. Я пробовал различные способы указания другой переменной (например, $(OTHER_VARIABLE)
), но значение всегда воспринимается буквально MSBuild.В определении построения TFS можно определить переменную в терминах другой переменной?
Есть ли способ определить переменную в терминах другой переменной?
Какую версию TFS вы используете? Вы используете сборку XAML или vNext? Не могли бы вы указать, какую функцию вы хотите достичь, используя переменную? –
Мы оцениваем TFS 2015. Мы довольно новы для TFS, поэтому я не уверен, что вы подразумеваете под сборкой XAML или vNext. Сейчас мы сравниваем TFS с существующими конфигурациями сборки TeamCity, где мы определяем «шаблоны сборки», которые содержат все требования к сборке, включая переменные среды, и мы очень сильно полагаемся на возможность определять переменные в терминах другие переменные - те другие переменные, которые в основном определяются самим TeamCity (например, рабочий каталог агента). – lesscode
Я думаю, что мы сможем добиться того, что нам нужно, добавив новые цели в наш MSBuild-файл, который сначала настроил среду (только для сборки TFS необходимо было использовать их), но мне было любопытно, будет ли это возможно в самом определении сборки. Вкратце экспериментируя с более ранней версией TFS в прежней жизни (2010?), Мне кажется, что конфигурации конфигурации TFS 2015 на самом деле взяли некоторые концепции из TeamCity (например, различные виды «шагов сборки», которые могут быть добавлено в определение сборки), но TC все еще кажется намного более сложным. – lesscode