Как узнать количество папок в _work папке в агенте? - PullRequest
0 голосов
/ 10 февраля 2020

Я хочу получить номер в папке _work локального агента TFS.

Например:

С C:/agent/_work/1 получить 1.

Есть ли переменная для получения 1 части?

Ответы [ 3 ]

1 голос
/ 10 февраля 2020

Вы можете использовать небольшой скрипт PowerShell для извлечения числа и установки новой переменной для шагов последовательности:

$folderPath = "$env:Agent_BuildDirectory"
$folderNumber = $folderPath.Split('\')[$folderPath.Split('\').Count - 1]
Write-Host "##vso[task.setvariable variable=folderNumber]$folderNumber"

Теперь вы можете использовать переменную $(folderNumber) в задачах последовательностей.

0 голосов
/ 10 февраля 2020

У вас нет причин разбирать эту информацию. Текущая рабочая папка для данной сборки или выпуска доступна в переменной $(Agent.BuildDirectory).

Если вы пытаетесь сослаться на рабочую папку другой сборки , значит, вы делаете что-то не так с процессом сборки, и существует множество различных, правильных решений этой проблемы. .

0 голосов
/ 10 февраля 2020

Проверьте различные значения переменных и способы их настройки при необходимости. Обратите внимание, что Agent.DeploymentGroupId - это не то, что вы бы изменили.


Выпуск переменных и отладка

Agent.DeploymentGroupId

Идентификатор группы развертывания, в которой зарегистрирован агент. Это доступно только в заданиях группы развертывания.

Пример: 1

Agent.WorkFolder

Рабочий каталог для этого агента, в котором создаются подпапки для каждой сборки или выпуска. То же, что Agent.RootDirectory и System.WorkFolder.

Пример: C: \ agent_work

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...