Skip to content

Migrate the Windows MSI build from WiX v3 to WiX v7 #34272

Open

Description

Related command

N/A (Windows MSI packaging in build_scripts/windows)

Is your feature request related to a problem? Please describe.

The Windows MSIs are built with WiX 3.10: build.cmd downloads wix310-binaries-mirror.zip, and the 2.91.0 MSI reports Windows Installer XML Toolset (3.10.4.4718).

  • WiX v3 has been out of community support since February 6, 2025: no more releases, including security fixes.
  • It needs .NET Framework 3.5, a blob-hosted mirror of the binaries and a hard-coded MSBuild path, and its tools are x86-only .NET Framework executables.
  • It's a poor fit for Windows arm64 (Arm64 Windows support #29317). arm64 MSIs need WiX 3.14+, which is still v3, and heat.exe fails with a BadImageFormatException when run in-process under arm64 MSBuild, so arm64 build hosts need workarounds.

Describe the solution you'd like

Migrate to WiX v7, the current major version:

  • Make azure-cli.wixproj an SDK-style project (WixToolset.Sdk), restored from NuGet and built with dotnet build. That removes the WiX download, the .NET Framework 3.5 dependency and the MSBuild path.
  • Convert Product.wxs to the v4+ schema, keeping UpgradeCodes, component GUIDs, the install layout and the upgrade logic unchanged so existing installs upgrade as before.
  • Replace heat.exe with WiX's built-in <Files> harvesting.

I have this working for x86 and x64, including an upgrade from an existing 2.90.0 install, a fresh install with az self-test, and uninstall. I'm happy to open a PR.

One decision for the team: WiX v7 requires accepting the Open Source Maintenance Fee (OSMF) EULA, and organizations with more than $10k annual revenue are expected to sponsor the project. The build fails with WIX7015 until the EULA is accepted, e.g. via AcceptEula=wix7.

Describe alternatives you've considered

  • WiX 3.14.1: enables arm64 MSIs, but stays on unsupported v3 with the same tooling limitations.
  • WiX v5: no OSMF, but also out of community support.
  • WiX v6: same OSMF terms as v7 and one major version behind. The authoring is identical, so this would mostly change the SDK version.

Additional context

Activity

  1. yonzhan commented on Oct 25, 2026

    @yonzhan
    Collaborator

    Thank you for opening this issue, we will look into it.

  2. dennisameling commented on Oct 25, 2026

    @dennisameling
    Author

    Here's a PR to migrate to WiX v7: #34273

  3. added this to the Backlog milestone on Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Azure CLI TeamThe command of the issue is owned by Azure CLI teamcustomer-reportedIssues that are reported by GitHub users external to the Azure organization.feature-request

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions