Как использовать предварительные требования ClickOnce-загрузчика на сервере сборки Azure DevOps? - PullRequest
0 голосов
/ 23 февраля 2019

У нас есть приложение ClickOnce, которое мы пытаемся запустить с CI / CD в DevOps Azure.

В настоящее время предварительные условия ClickOnce установлены на «Загрузка предварительных требований из того же расположения, что и мое приложение», котороеповедение, которое мы хотим в идеале (это приложение установлено на сервере Заказчика, и клиентские ПК загружают с этого сервера платформу .NET и различные пользовательские загрузчики):

ClickOnce prerequisites screen showing install location preference set

Когда VS собирается на моем локальном ПК для разработки, он берет эти файлы загрузчика (которые включают в себя несколько пользовательских загрузчиков, которые мы написали) с локального компьютера и выводит их в папку публикации ClickOnce:

Output from ClickOnce publish in Windows Explorer

Однако, это не работает в DevOps Azure. Я получаю эту ошибку из-за невозможности найти загрузчик .NET вместо этого:

[ошибка]C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ Microsoft.Common.CurrentVersion.targets (5390,5): Ошибка MSB3152: To чтобы включить «Загрузка необходимых компонентов из того же расположения, что и мое приложение» в диалоговом окне «Необходимые условия», необходимо загрузить файл «DotNetFX462 \ NDP462-KB3151800-x86-x64-AllOS-ENU.exe» для элемента «Microsoft .NET Framework 4.6.2».(x86 и x64) 'на ваш локальный компьютер.Для получения дополнительной информации см. http://go.microsoft.com/fwlink/?LinkId=616018.

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

Итак, загрузчик .NET определенно не находится в образе сервера сборки Azure, который запускается, или это может быть просто другой путь?

Или, если это не удалось, есть ли способСкажите DevOps игнорировать эту проблему и просто продолжить сборку реальных файлов приложения ClickOnce и завершить сборку?Загрузчики уже установлены на сервере нашего клиента, поэтому мне не нужно, чтобы Azure связывал их в выводе.

...