sparkles: state api sdk (#262)

*  Add state api

This is related to https://github.com/kairos-io/kairos/issues/34.

Starts to unify the API to retrieve the state in the sdk to have a common place to query system status information.

* 🤖 Add test

* Update go.mod

* ⚙️ Fine-tune detection of partitions

* 🤖 Add more fine-grained tests

* 🎨 Add /dev/ to partition name

* 🤖 Fixup tests

* ⚙️ Remount accessors

*  Add state partition to cloud-init paths

* 📝 Upper case Kairos in motd

* 🎨 Add mounts sdk

* 🎨 Set grub options via SDK

* 🎨 Make it more idiomatic
This commit is contained in:
Ettore Di Giacinto 2022-10-23 20:22:32 +02:00 committed by Itxaka
parent e0f54f296e
commit 07d524e484

View File

@ -8,8 +8,20 @@ import (
"github.com/kairos-io/kairos/pkg/utils"
)
func Umount(path string) {
utils.SH(fmt.Sprintf("umount %s", path)) //nolint:errcheck
func Umount(path string) error {
out, err := utils.SH(fmt.Sprintf("umount %s", path))
if err != nil {
return fmt.Errorf("failed umounting: %s: %w", out, err)
}
return nil
}
func Remount(opt, path string) error {
out, err := utils.SH(fmt.Sprintf("mount -o %s,remount %s", opt, path))
if err != nil {
return fmt.Errorf("failed umounting: %s: %w", out, err)
}
return nil
}
func Mount(label, mountpoint string) error {