Запустите Powershell или командную строку от имени администратора во время сборки Visual Studio Team Services.

Я работаю над проектом, где мы откладываем подписание собраний. Мне нужно использовать инструмент строгого имени пару раз во время сборки, чтобы отключить проверку строгого имени, а затем полностью подписать сборки перед их упаковкой. Я попытался использовать шаг powershell, чтобы отключить проверку, но он вернулся с этой ошибкой:

Автор сценария:

$testprojs = gci Project.*.dll -r
$testprojs | % {
            sn -Vr $_
            write-output $("Turned off sn verification for " + $_.Name)
}

Ошибка:

Failed to open registry key -- Administrator permissions are needed to use
the selected options. Use an administrator command prompt to complete these tasks.

Поэтому я создал скрипт, который будет запускать первый, но добавил параметр -elevated. Это не имеет значения.

Я также попытался использовать шаг командной строки вместо powershell. Это также вернуло ту же ошибку.

For /r %g in ("Project.*.dll") DO sn -Vr %g

Когда я попытался запустить этот же скрипт rdp'd на самой машине агента сборки, он работал как задумано. Только когда он выполняется как шаг в сборке, он не работает.

Есть идеи?

1 ответ

Решение

По вашему описанию:

Когда я попытался запустить этот же скрипт rdp'd на самой машине агента сборки, он работал как задумано.

Я предполагаю, что вы используете свой собственный агент для сборки. Тогда это может быть вызвано тем, что агент сборки не работает с учетной записью администратора. Обновите агент сборки, чтобы он работал с учетной записью администратора, а затем повторите попытку.

Запустить агент Запустить как службу

Если вы развернули агент для запуска в качестве службы Windows, то статусом агента можно управлять из оснастки "Службы". Запустите services.msc и найдите "Агент VSO ()". Если вам нужно изменить учетную запись, не делайте этого из оснастки служб. Вместо этого из командной строки с повышенными правами выполните: C:\Agent\Agent\VsoAgent.exe /ChangeWindowsServiceAccount Run в интерактивном режиме

В противном случае, если вы установили агент для интерактивного запуска, его можно запустить, запустив Agent\VsoAgent.exe.

Обратитесь к этой ссылке для деталей: Запустите агент

Другие вопросы по тегам