You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(quadlet): correct healthcheck, dependency, network_mode, install and privileged mappings (#496)
Corrects five Quadlet-export fidelity issues, each verified against `man
podman-systemd.unit` on Podman 5.4.2.
- **healthcheck `start_interval`** — was mapped to
`HealthStartupInterval=`, which drives Podman's *separate*
startup-healthcheck feature and is a no-op without a `HealthStartupCmd=`
(Podman 5.x has no `--health-start-interval`). The key is dropped; a
warnings sink is threaded into `render_healthcheck` so the field is
reported as unmapped instead of silently doing nothing.
- **`depends_on` ordering** — `After=/Requires=/Wants=` used the raw dep
name, but the dependency's unit is named
`{safe_unit_stem(dep)}.container`. Sanitized names are now applied so
the ordering targets the real generated unit.
- **`network_mode: service:X` / `container:X`** — per the spec, a
`Network=` value ending in `.container` reuses that container's netns.
These forms now emit `Network={safe_unit_stem(X)}.container` instead of
being stripped + warned; the warning remains for other modes (`bridge:`,
custom, …).
- **`[Install]` on `.volume` / `.network`** — the spec defines no
`[Install]` for these units (they start automatically as dependencies).
Removed the stray `WantedBy=default.target`; only `.container` units
carry `[Install]`.
- **`privileged: true`** — only warned before; now emits
`PodmanArgs=--privileged` (no dedicated `[Container]` key exists),
matching the other escape-hatch fields, and the warning is dropped.
In-tree unit tests added/adjusted for each fix with exact
generated-output assertions.
Closes#482
---------
Signed-off-by: Jaro-c <75870284+Jaro-c@users.noreply.github.com>
0 commit comments