Really resolve the link, not just get a relative link (#558)

Signed-off-by: Itxaka <itxaka@kairos.io>
This commit is contained in:
Itxaka
2024-09-24 19:09:06 +02:00
committed by GitHub
parent ded356cf98
commit 9d63bae2ae

View File

@@ -55,7 +55,8 @@ func resolveTarget(fs v1.FS, target string) (string, error) {
if strings.Contains(target, "partlabel") || strings.Contains(target, "partuuid") { if strings.Contains(target, "partlabel") || strings.Contains(target, "partuuid") {
return "", fmt.Errorf("target contains 'parlabel' or 'partuuid', looks like its a partition instead of a disk: %s", target) return "", fmt.Errorf("target contains 'parlabel' or 'partuuid', looks like its a partition instead of a disk: %s", target)
} }
device, err := fs.Readlink(target) // Use EvanSymlinks to properly resolve the target
device, err := filepath.EvalSymlinks(target)
if err != nil { if err != nil {
return "", fmt.Errorf("failed to read device link for %s: %w", target, err) return "", fmt.Errorf("failed to read device link for %s: %w", target, err)
} }