У меня есть файл решения (VS 2017 Enterprise), который содержит 12 проектов - в основном csproj и пару vdproj. У меня установлено расширение Visual Studio Installer Projects.
Когда я строю из Visual Studio, все строится нормально.
Когда я собираю из командной строки с помощью «devenv solution.sln / Rebuild Release», все строится нормально.
Когда я выполняю сборку из Azure DevOps с помощью задачи командной строки, один из проектов csproj не создается. Это не подводит. Это не пропускается. Это просто полностью игнорируется, как будто devenv этого не видит. Но та же самая команда при выполнении вручную из командной строки работает нормально.
Я не могу использовать msbuild из-за проектов vdproj.
Я перепробовал все, что мог придумать, и был в тупике. Какие-нибудь советы?
Редактировать: ProjectTypeGuids содержит fae04ec0-301f-11d3-bf4b-00c04f79efbc (C#) и 349c5851-65df-11da-9384-00065b846f21 (веб-приложение / веб-сервис). В файле Sln перечислены только fae04ec0-301f-11d3-bf4b-00c04f79efbc.
РЕДАКТИРОВАТЬ 2: Если я изменю Build Agent для работы с моей учетной записью пользователя, а не с учетной записью локальной сетевой службы, он будет работать нормально. Итак, я предполагаю, что есть что-то в установке Visual Studio, к которой учетная запись сетевой службы не имеет доступа?
Используете ли вы размещенного агента или частного агента?
@ShaykiAbramczyk частный агент.
@raterus Я каждый раз делаю чистые сборки. Я клонировал репозиторий свежим локально, а также попытался создать рабочий каталог агента сборки (чтобы убедиться, что я строю именно то, что есть у агента сборки). Я построил из VS. Я построил из командной строки. Я использовал / Build и / Rebuild. Я скопировал / вставил точную команду из журнала сборки. Я остановил сборку непосредственно перед ошибочным шагом и запустил этот шаг вручную из командной строки в рабочей папке агента сборки. Всегда, когда я запускаю его вручную, он работает, но когда Build Agent запускает его, он игнорирует один csproj.
When I build from Azure DevOps
это здание из репо? Если это так, сравните ваш .sln с репо .sln и убедитесь, что csproj и связанные файлы добавлены в репо должным образом.
Да - и все они есть. Когда я захожу в папку _work агента сборки и запускаю ту же команду, с которой произошел сбой агента сборки, она работает. И новая информация, которую я только что попробовал, добавлена как редактирование 2 в основном сообщении
Не могли бы вы подробнее рассказать о том, что уже пробовали? Я предполагаю, что у вас уже есть артефакт сборки локально, который на самом деле не привязан к системе управления версиями. Вам следует попробовать клонировать свежий репозиторий локально и посмотреть, сможете ли вы продолжить сборку.