kairos-agent/internal/agent/hooks/hook.go
Ettore Di Giacinto 746135eede sparkles: Add reset hook (#723)
Signed-off-by: mudler <mudler@c3os.io>

Signed-off-by: mudler <mudler@c3os.io>
2023-01-25 13:38:56 +01:00

36 lines
655 B
Go

package hook
import (
config "github.com/kairos-io/kairos/pkg/config"
)
type Interface interface {
Run(c config.Config) error
}
var AfterInstall = []Interface{
&RunStage{}, // Shells out to stages defined from the container image
&GrubOptions{}, // Set custom GRUB options
&BundleOption{},
&Kcrypt{},
&Lifecycle{}, // Handles poweroff/reboot by config options
}
var AfterReset = []Interface{
&Kcrypt{},
}
var FirstBoot = []Interface{
&BundlePostInstall{},
&GrubPostInstallOptions{},
}
func Run(c config.Config, hooks ...Interface) error {
for _, h := range hooks {
if err := h.Run(c); err != nil {
return err
}
}
return nil
}