Как установить пакет Windows Store Desktop App Coverter (DAC) в Azure Devops - PullRequest
0 голосов
/ 08 мая 2019

Я новичок в Azure Devops.Я хочу установить Desktop App Converter (DAC) в Azure Devops, чтобы сделать возможным автоматическое преобразование MSI-файла в окно магазина appx.Обратите внимание, что ЦАП также является приложением хранилища окон.Сначала я создал скрипт powershell (см. Ниже), который должен выполнить два шага:

1) Устанавливает конвертер DAC с помощью команды add-appxpackage

2) Создать пакет appx на основе файла msi с помощью DesktopAppConverter.exe call

У меня все работало нормально: DesktopAppConverter был установлен и пакет сгенерирован.

В Aure Devops я создал сборочный пипилин с задачей powershell.Эта задача выполняет те же действия, что и на моей локальной машине.Для выполнения работы я использовал Microsoft-агент.

Мой YAML:

    # .NET Desktop

    trigger:
    - master

    pool:
      vmImage: 'windows-latest'

    variables:
      solution: '**/*.sln'
      buildPlatform: 'Any CPU'
      buildConfiguration: 'Release'


    steps:

    - task: PowerShell@2
      inputs:
        filePath: 'convert.ps1'

Сценарий Powershell convert.ps1

    add-appxpackage -path         Microsoft.DesktopAppConverter_2.1.4.0_x64__8wekyb3d8bbwe.Appx
    DesktopAppConverter.exe -Installer MyApplication.msi -Destination Appx05 -PackageName "MyCompany.MyApplication"  -Publisher "CN=12345678-1234-1234-1234-123456789012" -PackagePublisherDisplayName "MyCompany" -PackageDisplayName  "MyApplication" -Version 1.0.14.0 -MakeAppx -Verbose

Выполнение пакета add-appxpackage не содержит ошибок.При выполнении DesktopAppConverter.exe с такой ошибкой:

    DesktopAppConverter.exe : The term 'DesktopAppConverter.exe' is not 
    recognized as the name of a cmdlet, function, script file, or operable 
    program. Check the spelling of the name, or if a path was included, 
    verify that the path is 
    correct and try again.

Основываясь на этом сообщении, можно сказать, что ЦАП фактически не был установлен.Кроме того, в выводе команды PowerShell Get-Appxpackage нет пакета Desktop App Converter.

Я также создал конвейер sampe и выполнил его, используя агент, размещенный на моем компьютере.ЦАП был установлен и выполнен.

Итак, на текущем шаге у меня есть главный вопрос: возможно ли установить ЦАП с помощью агента, размещенного в Microsoft?Я не вижу причин, почему это невозможно.Azure Pipeline предоставляет мне виртуальную машину во время выполнения задания (а затем экземпляр vm отбрасывается).Так что теоретически я мог бы сделать все с этим и установить appx.Я успешно установил программу на виртуальной машине агента Microsoft.Почему я не смог сделать это с appx из магазина?

Также у меня есть еще несколько вопросов.Я уверен, что ЦАП не был установлен.Это означает, что это было проблемой во время установки.Когда я установил на свой компьютер и у меня возникли проблемы, я увидел сообщение об ошибке в окне консоли.Я не видел ошибок eny при неудачной установке DAC в Azure (но это была одна ошибка в системе, которая не смогла найти исполняемый файл DAC).Я не обнаружил никаких ошибок при неудачной установке в файлах журналов событий и журналов.Итак, почему я не вижу никакой ошибки, хотя ЦАП не был установлен?Другое дело: шаги, которые я проделал для девопов Microsoft Azure, которые Microsoft предлагает для бесплатной пробной версии.Когда я пытаюсь выполнить те же шаги в нашей производственной среде Azure, там нет ошибок ни при установке шага DAC, ни при выполнении шага DAC (appx не был создан).

1 Ответ

0 голосов
/ 09 мая 2019

Как установить пакет хранилища Windows Desktop App Coverter (DAC) в Azure Devops

Согласно документу Упаковка настольного приложения с помощью Конвертера настольных приложений :

Мы должны:

  1. Загрузите и установите Конвертер настольных приложений.
  2. Запустите Desktop App Converter от имени администратора.

И нужно настроить несколько вещей (только приложения с установщиками).

Поскольку вы используете агент vmImage: 'windows-latest', если этот агент является размещенным агентом, он не устанавливает это приложение, то вы получите сообщение об ошибке:

Термин «DesktopAppConverter.exe» не распознается как имя Командлет, функция, файл сценария или работающая программа

Если агент vmImage: 'windows-latest' является частным агентом, убедитесь, что вы установили Конвертер настольных приложений и настроили его запуск с администратором.

Примечание. Если вы установите Конвертер настольных приложений, вы найдете DesktopAppConverter.exe по адресу: C:\Users\<UserName>\AppData\Local\Microsoft\WindowsApps\Microsoft.DesktopAppConverter_8wekyb3d8bbwe

Надеюсь, это поможет.

...