TFV C: не удается удалить рабочее пространство во время сборки vnext - PullRequest
0 голосов
/ 03 августа 2020

мы запускаем TVF C с «Azure DevOps Server» 2019 Update1.

В конце нашей сборки vnext мы хотим удалить рабочую область. Делаем это с помощью tf.exe. Но мы должны указать владельца рабочей области, потому что учетная запись, запускающая сборку (то есть учетная запись, настроенная для службы сборки в агенте сборки), отличается от учетной записи, используемой для создания рабочей области.

владельцем рабочей области является «Служба сборки коллекции проектов (DefaultCollection)». В качестве команды для удаления рабочего пространства мы используем, например:

tf.exe workspace /delete /noprompt /collection:http://tfs.siplaceworld.net:8080/tfs/DefaultCollection/ ws_1749_167;Project Collection Build Service (DefaultCollection)

Это работает большую часть времени. Время от времени мы получаем сообщение об ошибке:

TF14061: The workspace ws_1749_167;Project Collection Build Service (DefaultCollection) does not exist.

Но рабочая область действительно существует, если смотреть на компьютер сборки. Поэтому для отладки я добавил вызов «tf.exe workspaces», чтобы получить список всех рабочих пространств, прежде чем мы попытаемся удалить.

В случае ошибки вы видите, что владелец рабочего пространства не находится в engli sh, но на немецком:

tf.exe workspaces /collection:http://tfs.siplaceworld.net:8080/tfs/DefaultCollection/
Collection: http://tfs.siplaceworld.net:8080/tfs/DefaultCollection
Workspace   Owner                                               Computer  Comment
----------- --------------------------------------------------- --------- -------
MCHC16074   ASM AS SW-Dev Build                                 MCHC16074 
ws_1678_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1693_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1695_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1700_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1719_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1744_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1747_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_1749_167 Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_461_169  Builddienst für Projektsammlung (DefaultCollection) MCHC16074 
ws_470_169  Builddienst für Projektsammlung (DefaultCollection) MCHC16074

Это споради c, и мы не знаем, от чего это зависит. Как это возможно, что владелец рабочего места иногда указывается на немецком языке, а иногда на английском sh?

Любая помощь приветствуется!

Ответы [ 2 ]

1 голос
/ 04 августа 2020

Чтобы удалить существующее рабочее пространство, вы должны быть владельцем или иметь глобальное разрешение «Администрирование рабочих пространств», установленное на Разрешить.

Вы также можете попробовать использовать onwer uniq ID вместо имени. Получить uniq ID владельца:

tf vc workspaces ws_1749_167 /computer:* /format:xml /collection:https://dev.azure.com/xxx/

После этого будет возвращена информация об uniq ID владельца. Затем удалите рабочую область с идентификатором uniq владельца:

tf workspace /delete ws_1749_167;{owner uniq ID}

Подробности см. В этом тикете .

1 голос
/ 04 августа 2020

«Служба сборки коллекции проектов (DefaultCollection)» - это только отображаемое имя учетной записи, которая создает рабочую область. Понятия не имею, почему иногда это английский sh, а иногда немецкий, но вы можете использовать «настоящее» имя пользователя вместо отображаемого имени.

Я нашел имя пользователя этой учетной записи в окне безопасности в «Source» Проводник управления ". Я выбрал «Добавить Windows пользователя или группу» и поискал «Сборка», и вот он:

Отображаемое имя: Project Collection Build Service (DefaultCollection)

Имя пользователя: Build \ beb2741f-e779-4a6f-a20e-033796fec5b7

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

tf.exe workspace /delete /noprompt /collection:http://tfs.siplaceworld.net:8080/tfs/DefaultCollection/ ws_1749_167;Build\beb2741f-e779-4a6f-a20e-033796fec5b7

Отлично работает :)

см. Visual Studio Source Control Explorer

...