nextcloud/all-in-one

Automatic updates fail silently when image pulls fail — no notification, daily log still says successful

开放

#8,452 创建于 2026年7月14日

 (1 条评论) (0 个反应) (0 位负责人)PHP (1,028 个派生)batch import
2. developingenhancementhelp wanted

仓库指标

星标
 (9,719 个星标)
PR 合并指标
 (平均合并 4天 1小时) (30 天内合并 81 个 PR)

描述

Steps to reproduce

  1. Enable daily backup + automatic updates (data/daily_backup_time with empty second line), success notifications disabled (failure notifications implicitly on — the state after unchecking "send success notifications").
  2. Break docker pull on the host in a way that fails layer extraction (in my case: an Incus 7.0.0 seccomp regression, https://github.com/lxc/incus/issues/3637, made every pull of a layer containing a whiteout fail with failed to register layer: failed to mknod(...): operation not permitted; a registry outage or full disk should behave similarly).
  3. Wait for the nightly run.

Current behavior

The nightly flow runs "successfully" every night while updating nothing:

  • Cron/PullContainerImages.php exits 0 and prints nothing when pulls fail (verified by running it manually inside the mastercontainer while pulls were broken; aio_log_level=warn).
  • daily-backup.sh logs Updating container images...Creating daily backup...Daily backup successful! with no hint of the failed pulls.
  • No failure notification is sent (backup succeeded, and pull failures don't trigger one).

Result: the instance silently ran images from 2026-05-22 (Nextcloud 33.0.3) for ~6 weeks while upstream moved to 33.0.6. The only user-visible signal was Nextcloud's generic "update available" banner in the admin overview — nothing indicated that automatic updates were failing, and nothing pointed at the host-level pull problem.

Expected behavior

When automatic updates are enabled and PullContainerImages (or the watchtower mastercontainer update) fails, AIO should treat it like a backup failure: send a failure notification (and/or log a clear warning in the daily-backup log / AIO interface), e.g. "Automatic update failed: could not pull image X: ". The underlying docker error message would have made the root cause immediately findable.

Host OS

NixOS 26.05pre (host) / Alpine 3.21 (Docker host, unprivileged Incus container), aarch64

Nextcloud AIO version

Mastercontainer image from 2026-05-22 (nextcloud/all-in-one:latest, digest 5d2d488a…) — the version that itself couldn't update due to the same pull failure.

Other valuable info

The pull failures were caused by an Incus host regression (lxc/incus#3637), not by AIO — this report is only about the failures being swallowed silently. Happy to provide the full diagnosis timeline if useful.

贡献者指南