Petar Petrov fbab5e10a5 Report mount storage usage from the probe, not cached state (#7188)
* Report mount storage usage from the probe, not cached state

The per-mount usage endpoint refused any mount whose cached state was not
active. Since mounts became autofs-triggered, that state is only as fresh
as the last reconcile probe, fifteen minutes apart, so a share that came
back stayed unreportable for up to that long even though a probe would
have found it healthy and mounted it.

Drop the gate and let the probe decide. Its statvfs walks with
LOOKUP_AUTOMOUNT, so it activates a dormant trigger and then reports what
it found, which also means a usage request is no longer strictly read-only
with respect to system state - it can cause the mount it measures.

A path that still does not cross a filesystem boundary after that statvfs
is one whose trigger is gone and which reverted to a plain directory; the
existing boundary check catches it and its comment now says so. With the
gate removed that is the only remaining not-mounted condition, so the
mount_usage_not_active_error key, which named the cached state the
endpoint no longer consults, gives way to mount_usage_not_mounted_error,
which names what the probe observed.

* Tighten comments for probe-authoritative mount usage.

Cached state can be stale; the live probe is the authority, including dormant automount activation.
2026-09-01 16:29:49 -04:00
2021-03-16 15:47:40 +01:00
2025-10-08 10:44:49 +02:00
2020-07-29 14:45:37 +02:00
2024-09-30 18:42:08 +02:00

Home Assistant Supervisor

First private cloud solution for home automation

Home Assistant (former Hass.io) is a container-based system for managing your Home Assistant Core installation and related applications. The system is controlled via Home Assistant which communicates with the Supervisor. The Supervisor provides an API to manage the installation. This includes changing network settings or installing and updating software.

Installation

Installation instructions can be found at https://home-assistant.io/getting-started.

Development

For small changes and bugfixes you can just follow this, but for significant changes open a RFC first. Development instructions can be found here.

Release

Releases are done in 3 stages (channels) with this structure:

  1. Pull requests are merged to the main branch.
  2. A new build is pushed to the dev stage.
  3. Releases are published.
  4. A new build is pushed to the beta stage.
  5. The stable.json file is updated.
  6. The build that was pushed to beta will now be pushed to stable.

Home Assistant - A project from the Open Home Foundation

Languages
Python 96.3%
JavaScript 3.6%