Summary
Azure Monitor Agent (AMA) 1.42.0 rejects Ubuntu 26.04 during extension installation with exit code 51:
Unsupported operating system: ubuntu 26.04
The extension successfully identifies the distribution and version, but Ubuntu 26.04 is absent from the explicit supported-distribution maps used by the installer.
This issue complements #2173, which tracks the observed installation failure, by defining the public source and regression coverage needed for a durable fix.
Public references
- #2173 reports the Ubuntu 26.04 installation failure.
- #2199, by @kamilon, identifies the two required allowlist additions and provides public x86_64 and aarch64 end-to-end validation. The proposed implementation credits and builds on that work.
Affected code
AzureMonitorAgent/ama_tst/modules/install/supported_distros.py currently lists Ubuntu versions only through 24.04 in both:
supported_dists_x86_64
supported_dists_aarch64
The production installer consumes those maps in agent.py::is_vm_supported_for_extension. The troubleshooting installer uses the same maps through ama_tst/modules/install/check_os.py::check_vm_supported.
Test coverage gap
The existing test corpus spot-checks selected distro/version combinations rather than every supported variant. For Ubuntu it currently verifies 20.04 and 22.04 on x86_64 and 22.04 on aarch64. It does not explicitly protect:
- Ubuntu 26.04 membership in either architecture map.
- Ubuntu 26.04 admission through the production installer gate.
- Ubuntu 26.04 admission through the troubleshooting gate.
- Ubuntu 26.04
/etc/os-release parsing and preservation of the major.minor version.
- Import/runtime compatibility with Python 3.14, the system Python provided by Ubuntu 26.04.
The workflow currently runs Python 3.9 through 3.12, omitting Python 3.13 and 3.14.
Proposed change
- Add
26.04 to the Ubuntu x86_64 and aarch64 support maps.
- Add explicit production-gate tests for x86_64 and aarch64.
- Add explicit troubleshooting-gate and support-map tests for both architectures.
- Add Ubuntu 26.04 distro-detection tests.
- Extend the AMA GitHub Actions matrix through Python 3.14.
- Ensure unsupported-version formatting does not mutate the shared support map.
Acceptance criteria
- Ubuntu 26.04 is accepted by the production gate on x86_64 and aarch64.
- Ubuntu 26.04 is accepted by the troubleshooting gate on x86_64 and aarch64.
- Ubuntu 26.04 remains present after unsupported-version reporting.
- The complete AMA unit suite passes on Python 3.9 through 3.14 where configured.
- Public CI passes on all configured Python versions.
Non-goals
This issue does not define a release schedule or claim that merging source changes alone publishes a new extension version. It is limited to the public source change and repository-level regression coverage.
Summary
Azure Monitor Agent (AMA) 1.42.0 rejects Ubuntu 26.04 during extension installation with exit code 51:
The extension successfully identifies the distribution and version, but Ubuntu 26.04 is absent from the explicit supported-distribution maps used by the installer.
This issue complements #2173, which tracks the observed installation failure, by defining the public source and regression coverage needed for a durable fix.
Public references
Affected code
AzureMonitorAgent/ama_tst/modules/install/supported_distros.pycurrently lists Ubuntu versions only through 24.04 in both:supported_dists_x86_64supported_dists_aarch64The production installer consumes those maps in
agent.py::is_vm_supported_for_extension. The troubleshooting installer uses the same maps throughama_tst/modules/install/check_os.py::check_vm_supported.Test coverage gap
The existing test corpus spot-checks selected distro/version combinations rather than every supported variant. For Ubuntu it currently verifies 20.04 and 22.04 on x86_64 and 22.04 on aarch64. It does not explicitly protect:
/etc/os-releaseparsing and preservation of themajor.minorversion.The workflow currently runs Python 3.9 through 3.12, omitting Python 3.13 and 3.14.
Proposed change
26.04to the Ubuntu x86_64 and aarch64 support maps.Acceptance criteria
Non-goals
This issue does not define a release schedule or claim that merging source changes alone publishes a new extension version. It is limited to the public source change and repository-level regression coverage.