diff --git a/board/common/rootfs/usr/sbin/container b/board/common/rootfs/usr/sbin/container index d5485600..cb531933 100755 --- a/board/common/rootfs/usr/sbin/container +++ b/board/common/rootfs/usr/sbin/container @@ -567,8 +567,14 @@ case $cmd in echo "No such container ($1), or invalid ImageName. Cannot upgrade." exit 1; fi - podman stop "$1" - podman pull "$img" || (echo "Failed fetching $img, check your network (settings)."; exit 1) + if echo "$img" | grep -Eq '^localhost/'; then + # Likely an OCI archive, or local directory, assume user has updated image. + file=$(awk '{s=$NF} END{print s}' "/var/lib/containers/active/${1}.sh") + echo "Upgrading container ${1} with local archive: $file ..." + else + podman stop "$1" + podman pull "$img" || (echo "Failed fetching $img, check your network (settings)."; exit 1) + fi "/var/lib/containers/active/${1}.sh" || (echo "Failed recreating container $1"; exit 1) ;; volume)