Files
beszel-ipv6/internal/migrations/1787356800_cpu_state_alerts.go
2026-09-01 19:10:31 -04:00

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)
})
}