1
0
mirror of https://github.com/kairos-io/kcrypt.git synced 2025-05-08 00:08:30 +00:00

Merge pull request from kairos-io/fix-settle

Try a simpler version of "udevadm trigger"
This commit is contained in:
Dimitris Karakasilis 2024-05-27 10:01:06 +03:00 committed by GitHub
commit ea5fc7351a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 3 deletions

View File

@ -58,8 +58,10 @@ func Luksify(label, version string, tpm bool) (string, error) {
return "", fmt.Errorf("version must be luks1 or luks2")
}
// Make sure ghw will see all partitions correctly
out, err := SH("udevadm trigger --settle -v --type=all")
// Make sure ghw will see all partitions correctly.
// Some versions of udevadm don't support --settle (e.g. alpine)
// and older versions don't have --type=all. Try the simpler version then.
out, err := SH("udevadm trigger --settle -v --type=all || udevadm trigger -v")
if err != nil {
return "", fmt.Errorf("udevadm trigger failed: %w, out: %s", err, out)
}

View File

@ -38,8 +38,10 @@ func UnlockAllWithLogger(tpm bool, logger zerolog.Logger) error {
return nil
}
// Some versions of udevadm don't support --settle (e.g. alpine)
// and older versions don't have --type=all. Try the simpler version then.
logger.Info().Msgf("triggering udev to populate disk info")
_, err = utils.SH("udevadm trigger -v --type=all")
_, err = utils.SH("udevadm trigger --settle -v --type=all || udevadm trigger -v")
if err != nil {
return err
}