add support for Azure container linux#3577
Conversation
66767af to
633b88d
Compare
c160224 to
205264c
Compare
|
Attaching the waagent logs |
Signed-off-by: Mayank Singh <mayankfz@gmail.com>
d2451b5 to
3d7596f
Compare
There was a problem hiding this comment.
Pull request overview
Adds packaging/runtime support for Microsoft Azure Container Linux (ACL) (derived from Azure Linux) by installing ACL-specific systemd units and agent configuration when building/installing on that distro.
Changes:
- Update
setup.pyto select ACL-specific config and systemd units whenDISTRO_FULL_NAMEindicates Azure Container Linux. - Add a new ACL
waagent.servicesystemd unit. - Add an ACL systemd drop-in for
multi-user.targetand an ACL-specificwaagent.conf.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| setup.py | Adds ACL-specific selection logic and installs extra systemd drop-in for ACL. |
| init/acl/waagent.service | Introduces a new systemd unit for running waagent on ACL. |
| init/acl/10-waagent-sysext.conf | Adds a multi-user.target drop-in intended to keep waagent upheld under sysext usage. |
| config/acl/waagent.conf | Adds ACL-specific agent defaults (provisioning/resource disk/firewall, etc.). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
9038e1e to
16ad648
Compare
Signed-off-by: Mayank Singh <mayankfz@gmail.com>
We need to address these errors in the log |
7873258 to
ead57b2
Compare
Fixed. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: Mayank Singh <mayankfz@gmail.com>
b91c062 to
fc501b4
Compare
3120791 to
54fec45
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
7608c5a to
c1ce628
Compare
Signed-off-by: Mayank Singh <mayankfz@gmail.com>
c1ce628 to
08be6ef
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| # For Azure Container Linux, distro_name is "azurelinux" and distro_full_name is "Microsoft Azure Container Linux". | ||
| if distro_name == "azurelinux" and distro_full_name == "Microsoft Azure Container Linux": |
There was a problem hiding this comment.
ACL selection relies on an exact match of distro_full_name ("Microsoft Azure Container Linux"). If the full name differs (extra version/build text, casing, etc.), the agent will fall back to MarinerOSUtil, which uses a different systemd unit install path (/usr/lib/systemd/system) and may be incompatible with ACL’s stated read-only /usr requirement. Consider switching this check to a more tolerant match (e.g., substring/case-insensitive) or a stable identifier rather than the full, human-readable name.
| # For Azure Container Linux, distro_name is "azurelinux" and distro_full_name is "Microsoft Azure Container Linux". | |
| if distro_name == "azurelinux" and distro_full_name == "Microsoft Azure Container Linux": | |
| # For Azure Container Linux, distro_name is "azurelinux" and distro_full_name contains | |
| # "Microsoft Azure Container Linux" (it may include additional version/build information). | |
| normalized_distro_full_name = (distro_full_name or "").lower() | |
| if distro_name == "azurelinux" and "azure container linux" in normalized_distro_full_name: |
| # Azure Container Linux (ACL) is an immutable, sysext-based distro derived | ||
| # from Flatcar. This osutil is a standalone copy of MarinerOSUtil with | ||
| # ACL-specific overrides so that future Azure-Linux changes do not | ||
| # inadvertently affect the immutable ACL image. |
There was a problem hiding this comment.
The module header says ACL is "derived from Flatcar", but the PR description states ACL is derived from Azure Linux. This inconsistency makes it unclear what behavior/assumptions this OSUtil should follow (e.g., Flatcar/CoreOS vs Azure Linux/Mariner). Please align the comment (or the PR description) to the correct lineage to avoid future maintenance mistakes.
Signed-off-by: Mayank Singh <mayankfz@gmail.com>
9fa7056 to
88fa537
Compare
|
@narrieta Now the waagent --version on ACL will look like - >
|

Description
This adds support Azure Container Linux, which is derived from Azure Linux, and is compatible with it.
Issue
PR information
developbranch.Quality of Code and Contribution Guidelines
Distro maintenance information, if applicable