mirror of
https://github.com/henrygd/beszel.git
synced 2026-09-21 00:47:47 +02:00
37 lines
944 B
Go
37 lines
944 B
Go
package migrations
|
|
|
|
import (
|
|
"slices"
|
|
|
|
"github.com/pocketbase/pocketbase/core"
|
|
m "github.com/pocketbase/pocketbase/migrations"
|
|
)
|
|
|
|
var cpuStateAlertNames = []string{"CPUIOWait", "CPUSteal"}
|
|
|
|
func init() {
|
|
m.Register(func(app core.App) error {
|
|
collection, err := app.FindCollectionByNameOrId("alerts")
|
|
if err != nil {
|
|
return err
|
|
}
|
|
field := collection.Fields.GetByName("name").(*core.SelectField)
|
|
for _, name := range cpuStateAlertNames {
|
|
if !slices.Contains(field.Values, name) {
|
|
field.Values = append(field.Values, name)
|
|
}
|
|
}
|
|
return app.Save(collection)
|
|
}, func(app core.App) error {
|
|
collection, err := app.FindCollectionByNameOrId("alerts")
|
|
if err != nil {
|
|
return err
|
|
}
|
|
field := collection.Fields.GetByName("name").(*core.SelectField)
|
|
field.Values = slices.DeleteFunc(field.Values, func(name string) bool {
|
|
return slices.Contains(cpuStateAlertNames, name)
|
|
})
|
|
return app.Save(collection)
|
|
})
|
|
}
|