[SRU] azure-proxy-agent: fix service file ordering to avoid cycle with cloud-init
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| azure-proxy-agent (Ubuntu) |
Fix Released
|
Undecided
|
Miriam España Acebal | ||
| Jammy |
Fix Committed
|
Undecided
|
Miriam España Acebal | ||
| Noble |
Fix Committed
|
Undecided
|
Miriam España Acebal | ||
| Plucky |
Fix Committed
|
Undecided
|
Miriam España Acebal | ||
| Questing |
Fix Released
|
Undecided
|
Miriam España Acebal | ||
Bug Description
[ SRU ]
[ Impact ]
The current azure-proxy-
This fix adjusts the service definition to:
- Start the agent only after local filesystems are ready, ensuring logs/config paths are accessible.
- Run before networking is configured (Before=
- Avoid pulling in network targets by itself (removing Wants=network-
- Add clean shutdown handling (Before=
Together, these changes eliminate the ordering cycle and ensure both the Azure agent and cloud-init run reliably.
[ Test Plan ]
* As described in this SRU exception: https:/
* The Microsoft team responsible for this agent will also use their own tests to verify the new version.
* In addition, we conduct the following specific checks for this fix:
Build and install the updated azure-proxy-agent package.
Launch an Azure VM using a custom image with the updated package.
Verify:
- The VM boots cleanly.
- The VM is fully reachable via SSH.
- The azure-proxy-
- cloud-init.service completes as expected.
Successful boot and SSH accessibility demonstrate that the cycle is resolved and normal provisioning is restored.
[ Where problems could occur ]
There is a low risk of regressions as changes only affect the unit file ordering and shutdown behavior:
If misordered, the agent may start too early/late, which would show up immediately in boot logs.
[ Original Description ]
# Impact
The current azure-proxy-
This fix adjusts the service definition to:
- Start the agent only after local filesystems are ready, ensuring logs/config paths are accessible.
- Run before networking is configured (Before=
- Avoid pulling in network targets by itself (removing Wants=network-
- Add clean shutdown handling (Before=
Together, these changes eliminate the ordering cycle and ensure both the Azure agent and cloud-init run reliably.
# Test Case
Build and install the updated azure-proxy-agent package.
Launch an Azure VM using a custom image with the updated package.
Verify:
- The VM boots cleanly.
- The VM is fully reachable via SSH.
- The azure-proxy-
- cloud-init.service completes as expected.
Successful boot and SSH accessibility demonstrate that the cycle is resolved and normal provisioning is restored.
# Regression Potential
Low. The changes only affect the unit file ordering and shutdown behavior:
If misordered, the agent may start too early/late, which would show up immediately in boot logs.
The updated ordering has been validated in Azure VMs and matches the intended design of network-pre.target and cloud-init:
❯ az vm create --resource-group miriam-azure-proxy --name t-m-questing-
The default value of '--size' will be changed to 'Standard_D2s_v5' from 'Standard_DS1_v2' in a future release.
Selecting "uksouth" may reduce your costs. The region you've selected may cost more for the same services. You can disable this message in the future with the command "az config set core.display_
ResourceGroup PowerState PublicIpAddress Fqdns PrivateIpAddress MacAddress Location
miriam-azure-proxy VM running 74.234.208.235 10.0.0.4 7C-ED-8D-8F-46-02 westeurope
❯ ssh ubuntu@
The authenticity of host '74.234.208.235 (74.234.208.235)' can't be established.
ED25519 key fingerprint is SHA256:
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/
Warning: Permanently added '74.234.208.235' (ED25519) to the list of known hosts.
Welcome to Ubuntu Questing Quokka (development branch) (GNU/Linux 6.17.0-1003-azure x86_64)
Documentation: Ubuntu documentation
Management: https:/
Support: Ubuntu Pro | Ubuntu
System information as of Mon Sep 29 12:45:27 UTC 2025
System load: 0.95 Processes: 127
Usage of /: 6.2% of 27.95GB Users logged in: 0
Memory usage: 4% IPv4 address for eth0: 10.0.0.4
Swap usage: 0%
0 updates can be applied immediately.
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
ubuntu@
Desired=
| Status=
|/ Err?=(none)
||/ Name Version Architecture Description
+++-===
ii azure-proxy-agent 1.0.30-0ubuntu6 amd64 Azure Guest Proxy Agent
ubuntu@
ubuntu@
active
ubuntu@
● azure-proxy-
Loaded: loaded (/usr/lib/
Active: active (running) since Mon 2025-09-29 12:44:12 UTC; 2min 3s ago
Invocation: 2da12dcbef524fa
Docs: man:azure-
Main PID: 452 (azure-proxy-age)
Tasks: 5 (limit: 9505)
Memory: 32.7M (peak: 49.7M)
CPU: 196ms
CGroup: /system.
└─452 /usr/sbin/
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:12 ubuntu azure-proxy-
Sep 29 12:44:22 ubuntu azure-proxy-
Sep 29 12:44:22 ubuntu azure-proxy-
ubuntu@
Sep 29 12:44:04 ubuntu systemd[1]: Starting cloud-init-
Sep 29 12:44:18 ubuntu systemd[1]: Started cloud-init-
Sep 29 12:44:18 ubuntu systemd[1]: Starting cloud-init-
Sep 29 12:44:19 ubuntu cloud-init[677]: Cloud-init v. 25.3~2g890873f5
Sep 29 12:44:22 ubuntu azure-proxy-
Sep 29 12:44:24 t-m-questing-
Sep 29 12:44:24 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:25 t-m-questing-
Sep 29 12:44:33 t-m-questing-
Sep 29 12:44:35 t-m-questing-
Sep 29 12:44:35 t-m-questing-
Sep 29 12:44:35 t-m-questing-
Sep 29 12:44:39 t-m-questing-
Sep 29 12:44:39 t-m-questing-
Sep 29 12:44:42 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
Sep 29 12:44:43 t-m-questing-
#Other Info
Last bug related: https:/
Discussion on the upstream issue can be found here: Add `DefaultDepende
Related branches
- Nick Rosbrook (community): Approve
- Andreas Hasenack: Pending requested
- Ubuntu Sponsors: Pending requested
-
Diff: 43 lines (+16/-3)2 files modifieddebian/changelog (+8/-0)
debian/patches/fix-systemd-deps-cycle.patch (+8/-3)
- Nick Rosbrook (community): Approve
- Andreas Hasenack: Pending requested
- Ubuntu Sponsors: Pending requested
-
Diff: 43 lines (+16/-3)2 files modifieddebian/changelog (+8/-0)
debian/patches/fix-systemd-deps-cycle.patch (+8/-3)
- Nick Rosbrook (community): Approve
- Andreas Hasenack: Pending requested
- Ubuntu Sponsors: Pending requested
-
Diff: 43 lines (+16/-3)2 files modifieddebian/changelog (+8/-0)
debian/patches/fix-systemd-deps-cycle.patch (+8/-3)
- Nick Rosbrook (community): Approve
-
Diff: 43 lines (+16/-3)2 files modifieddebian/changelog (+8/-0)
debian/patches/fix-systemd-deps-cycle.patch (+8/-3)
| summary: |
- [FFe] azure-proxy-agent: fix service file ordering to avoid cycle with - cloud-init + azure-proxy-agent: fix service file ordering to avoid cycle with cloud- + init |
| Changed in azure-proxy-agent (Ubuntu Questing): | |
| assignee: | nobody → Miriam España Acebal (mirespace) |
| Changed in azure-proxy-agent (Ubuntu Plucky): | |
| assignee: | nobody → Miriam España Acebal (mirespace) |
| description: | updated |
| Changed in azure-proxy-agent (Ubuntu Plucky): | |
| status: | New → In Progress |
| Changed in azure-proxy-agent (Ubuntu Noble): | |
| assignee: | nobody → Miriam España Acebal (mirespace) |
| Changed in azure-proxy-agent (Ubuntu Jammy): | |
| assignee: | nobody → Miriam España Acebal (mirespace) |
| Changed in azure-proxy-agent (Ubuntu Noble): | |
| status: | New → In Progress |
| Changed in azure-proxy-agent (Ubuntu Jammy): | |
| status: | New → In Progress |

I would add ffe tag and subscribe release-team once I have the package reviewed and sponsored.
I have the package at https:/ /launchpad. net/~mirespace/ +archive/ ubuntu/ azure-proxy- agent/+ sourcepub/ 17607758/ +listing- archive- extra, but I need to add the LP bug to the changelog (I filled this later).