Show a movie path as example in Mount Health Check

Closes #10649
pull/10622/head
Bogdan 2 months ago
parent 1414a09111
commit b4eff4d4f9

@ -1,3 +1,4 @@
using System;
using System.Linq;
using NzbDrone.Common.Disk;
using NzbDrone.Core.Localization;
@ -21,14 +22,17 @@ namespace NzbDrone.Core.HealthCheck.Checks
{
// Not best for optimization but due to possible symlinks and junctions, we get mounts based on series path so internals can handle mount resolution.
var mounts = _movieService.AllMoviePaths()
.Select(p => _diskProvider.GetMount(p.Value))
.Where(m => m is { MountOptions.IsReadOnly: true })
.DistinctBy(m => m.RootDirectory)
.Select(p => new Tuple<IMount, string>(_diskProvider.GetMount(p.Value), p.Value))
.Where(m => m.Item1 is { MountOptions.IsReadOnly: true })
.DistinctBy(m => m.Item1.RootDirectory)
.ToList();
if (mounts.Any())
{
return new HealthCheck(GetType(), HealthCheckResult.Error, _localizationService.GetLocalizedString("MountCheckMessage") + string.Join(", ", mounts.Select(m => m.Name)), "#movie-mount-ro");
return new HealthCheck(GetType(),
HealthCheckResult.Error,
$"{_localizationService.GetLocalizedString("MountCheckMessage")}{string.Join(", ", mounts.Select(m => $"{m.Item1.Name} ({m.Item2})"))}",
"#movie-mount-ro");
}
return new HealthCheck(GetType());

Loading…
Cancel
Save