Ситуация:
TFS 2018
Процесс сборки состоит из двух этапов - выполняется на агентах Windows и Linux соответственно
Get sources
(TFV C) имеет флаг Clean
, установленный на false
Проблема:
- Linux агент (в отличие от своего аналога) игнорирует флаг
Clean
- он всегда выполняется tf workspace -delete
, ... -new
, et c.
Я добавил " «Переменные печати» и можно было четко видеть, что Build.Repository.Clean
равен false
на каждом этапе.
Есть ли способ исправить это?
Дополнительная информация:
Установка system.debug
в true
создает интересный журнал:
Querying workspace information.
##[debug]tf workspaces -format:xml "-collection:<tfs-server-url>" -jwt:******** -noprompt
##[debug]No workspace matching *;Project Collection Build Service (<collection-name>) on computer <computer-name> found in Team Foundation Server <tfs-server-url>.
##[debug]<?xml version="1.0" encoding="utf-8"?><workspaces/>
##[debug]Sources directory does not exist or is empty.
##[debug]tf workspaces ws_1_14 -computer:* -format:xml "-collection:<tfs-server-url>" -jwt:******** -noprompt
##[debug]No workspace matching ws_1_14;Project Collection Build Service (<collection-name>) on computer * found in Team Foundation Server <tfs-server-url>.
##[debug]Deleting: '/home/<user>/agent/_work/1/s'.
##[command]tf workspace -new -location:local -permission:Public ws_1_14 "-collection:<tfs-server-url>" -jwt:******** -noprompt
Workspace 'ws_1_14' created.
Но когда я захожу на эту машину и запускаю эти команды самостоятельно (без -jwt:... -noprompt
) - я получаю правильную информацию около ws_1_14
рабочего пространства. Агент выполняется как демон / служба, созданная с помощью sudo ./svc.sh install; sudo ./svc.sh start
. Это означает, что проблема находится где-то в среде этого демона.