• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

FROSADO / onecloudriver / 34025598702
81%

Build:
DEFAULT BRANCH: main
Ran 06 Sep 2026 09:51AM UTC
Jobs 1
Files 60
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Sep 2026 09:46AM UTC coverage: 81.199% (-0.1%) from 81.328%
34025598702

push

github

web-flow
feat(sync): detect an active mount/service for the cache before syncing (#149)

* feat(sync): detect an active mount/service for the cache before syncing (Closes #146)

Running `onecloudriver sync -a <account>` while a mount or service serves the
same cache only failed after the 5s BoltDB lock timeout, with an error naming
the DB file and not the mountpoint. Now the command probes up front and exits
immediately with a clear, localized message naming the active mountpoint.

Detection order (best-effort; InitBoltDB with its full timeout stays the
authoritative guard):
  1. Control socket of <cache-dir>/control.sock (#147): precise same-cache
     signal that also yields the holder's real mountpoint.
  2. BoltDB lock probe (fs.CacheDirInUse, ~200ms): catches any holder even
     when the mount disabled its control channel (--control-socket off).
  3. systemd service (service.RunningMountpoint): enriches the message with
     the mountpoint when the lock is held but the socket is unreachable.

internal/fs: add CacheDirInUse + boltOpenTimeoutProbe with tests (no DB,
free, locked-by-holder).
internal/service: add RunningMountpoint wrapping QueryUnitStatus with tests.
cmd/onecloudriver: detectActiveMount(With) + RunE wiring before MkdirAll;
two new i18n keys (cmd.sync.mounted_active / cmd.sync.cache_in_use, en+es);
unit tests for the preflight (socket holder, other account, lock+service,
lock-only, probe errors, empty-cache adapter) preserving the e2e sync test.

ci: run ./internal/control/... in the Tests (unit + race) job so the control
channel package gets unit coverage on a blocking check (not only the
Coverage Report job).

* Commit de los planes

45 of 64 new or added lines in 3 files covered. (70.31%)

3 existing lines in 2 files now uncovered.

6448 of 7941 relevant lines covered (81.2%)

3161.85 hits per line

Uncovered Changes

Lines Coverage ∆ File
14
66.25
-2.04% cmd/onecloudriver/sync.go
3
91.7
-0.92% internal/service/status.go
2
88.63
-0.14% internal/fs/cache.go

Coverage Regressions

Lines Coverage ∆ File
2
84.47
-0.65% internal/fs/delta.go
1
88.63
-0.14% internal/fs/cache.go
Jobs
ID Job ID Ran Files Coverage
1 34025598702.1 06 Sep 2026 09:51AM UTC 60
81.2
GitHub Action Run
Source Files on build 34025598702
  • Tree
  • List 60
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 9b833ea5 on github
  • Prev Build on main (#33999521885)
  • Next Build on main (#34026101407)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc