Devuan VM: cloud-init OpenRC stage-name drift — cloud-config needs non existent service cloud-init (VM-R6) #2

Open
opened 2026-06-17 20:30:11 +00:00 by hclaude · 0 comments
Owner

Summary

First-stage Devuan VM image (cloud-init 25.1.4) boots into:
Service 'cloud-config' needs non existent service 'cloud-init'.

Cause

Upstream split/renamed the cloud-init systemd stages — the network stage
cloud-init.service became cloud-init-network.service and a new
cloud-init-main.service orchestrator was added — but the OpenRC stage
shims (sysvinit/openrc/) kept the legacy name cloud-init. On an image whose
units/shims reference the renamed service, OpenRC can't resolve the dependency
and aborts the stage at boot.

Fix (done — research/cloud-init-devuan patch 0004)

  • Network-stage OpenRC shim now provide cloud-init cloud-init-network.
  • cloud-config orders after both names.
  • Soft after/before only — no hard need, so a missing optional stage
    never aborts boot.

Build-integration rule (action for the VM build)

A Devuan VM image MUST install the patched OpenRC shim set
(cloud-init-local cloud-init cloud-config cloud-final) and rc-update it —
do NOT rely on the distro cloud-init package's stale (systemd-era) OpenRC
wiring, which is what produced the boot error.

Status

Fixed in branch feat/vm-track-and-cloudinit-plans (patch 0004, docs updated).
Still needs end-to-end re-test on a rebuilt Devuan VM image (stage 2). Related:
qemu-vm-plan.md "Stage-1 build outcomes".

## Summary First-stage Devuan VM image (cloud-init 25.1.4) boots into: `Service 'cloud-config' needs non existent service 'cloud-init'`. ## Cause Upstream split/renamed the cloud-init **systemd** stages — the network stage `cloud-init.service` became `cloud-init-network.service` and a new `cloud-init-main.service` orchestrator was added — but the **OpenRC** stage shims (`sysvinit/openrc/`) kept the legacy name `cloud-init`. On an image whose units/shims reference the renamed service, OpenRC can't resolve the dependency and aborts the stage at boot. ## Fix (done — research/cloud-init-devuan patch 0004) - Network-stage OpenRC shim now `provide cloud-init cloud-init-network`. - `cloud-config` orders `after` both names. - Soft `after`/`before` only — no hard `need`, so a missing optional stage never aborts boot. ## Build-integration rule (action for the VM build) A Devuan VM image MUST install the patched OpenRC shim set (`cloud-init-local cloud-init cloud-config cloud-final`) and `rc-update` it — do NOT rely on the distro cloud-init package's stale (systemd-era) OpenRC wiring, which is what produced the boot error. ## Status Fixed in branch `feat/vm-track-and-cloudinit-plans` (patch 0004, docs updated). Still needs end-to-end re-test on a rebuilt Devuan VM image (stage 2). Related: qemu-vm-plan.md "Stage-1 build outcomes".
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ECS-Public-Infra/Create-Templates#2
No description provided.