Commit Graph

12 Commits

Author SHA1 Message Date
Isaac Hermida 408a8bec60 cc-containerd: stop managed containers earlier on shutdown
Keep the shutdown helper active during normal system operation and run the
managed container stop path from ExecStop when shutdown begins.

This makes the container stop happen before the general system teardown,
so network and CCCS are still available and reboot is less likely to
block waiting for late shutdown ordering.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-23 10:22:05 +02:00
Isaac Hermida 6ad1a57317 cc-containerd: use "/root/container" as default containers path
Currently only the CCMP25 and CC95 will officially support containers.
For these platforms, "/root" is a common path with enough free space.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-23 10:22:05 +02:00
Isaac Hermida d743784281 cc-containerd: order service around CCCS
As cc-containerd uses DRM to publish metrics, start the service after
cccs (this is optional, as the container will retry it) and stop our
service before cccsd (to do our best to try to upload the STOP status
to DRM)

https://onedigi.atlassian.net/browse/DEL-10035

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-22 09:59:39 +02:00
Isaac Hermida 61dc4c88cf cc-container-mng: install config at /etc
There is no need to have a dedicated folder, as we only use a configuration
file. Other data is stored in a different path.

https://onedigi.atlassian.net/browse/DEL-10035

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-22 09:59:39 +02:00
Isaac Hermida 6a75e08023 containers: cc-container-mng: add shutdown service
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-20 09:21:57 +02:00
Isaac Hermida 2d261dd473 containers: enable netavark port publishing
Enable netavark bridge networking in the trimmed Podman recipe
so container images support publish-port arguments
such as -p 80:8080 and restore iptables dependency.
It's needed to install iptables-modules because it is not
populated due to NO_RECOMMENDATIONS.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-16 09:42:44 +02:00
Isaac Hermida 25dfe3d20a containers: make trimmed runtimes conflict with standard ones
Mark the trimmed runtime variants as conflicting with the standard
packages so images cannot include both Podman or LXC flavors at the
same time.

This avoids ambiguous runtime layouts and configuration ownership when a
minimal container-manager image uses the trimmed packages while other
images may select the standard runtimes.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-08 09:02:20 +02:00
Isaac Hermida 5b45c1e64c podman: configure network backend explicitly
Generate /etc/containers/containers.conf so Podman does not depend on
its internal default network backend at runtime.
If not, at runtime, the default podman network fails with:
"""
Error: could not find "netavark" in one of {[/usr/local/libexec/podman /usr/local/l
ib/podman /usr/libexec/podman /usr/lib/podman] {<nil>}}.  To resolve this error, se
t the helper_binaries_dir key in the `[engine]` section of containers.conf to the d
irectory containing your helper binaries.
"""

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-04-08 09:02:20 +02:00
Isaac Hermida c4c0383ed6 meta-digi-containers: use /mnt/data/cc-container as storage path
For podman, configure the storage path modifying its config file.
For LXC, the install path is automatically managed by the daemon.

https://onedigi.atlassian.net/browse/DEL-9996
https://onedigi.atlassian.net/browse/DEL-10005

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-03-20 13:42:03 +01:00
Isaac Hermida 0f54b5a346 meta-digi-containers: keep containers running when cc-containerd stops
Set KillMode=process in the systemd unit so 'systemctl stop
cc-containerd' only terminates the daemon itself.

Without this, systemd uses the default control-group kill mode and
can terminate container processes that share the service cgroup,
which changes container runtime state when the service is stopped.

https://onedigi.atlassian.net/browse/DEL-9963
https://onedigi.atlassian.net/browse/DEL-10005

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-03-20 13:42:03 +01:00
Isaac Hermida d721721567 meta-digi-containers: add cc-container-mng daemon recipe
Add the cc-container-mng recipe and systemd service.

https://onedigi.atlassian.net/browse/DEL-10005

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-03-20 13:32:18 +01:00
Isaac Hermida 17a6ba59cd meta-digi-containers: add trimmed container runtime recipes
Add dedicated trimmed runtime wrappers for LXC and Podman in
meta-digi-containers so dey-image-container-manager can install
reduced container runtimes without affecting other DEY images.

https://onedigi.atlassian.net/browse/DEL-9996

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2026-03-20 13:20:46 +01:00