blob: 980e1471b413013b8230545fd5b5375349927437 [file] [log] [blame]
package metrics
import (
"fmt"
"strings"
)
type Initiator uint32
const (
InitiatorAutomatic Initiator = iota
InitiatorManual
)
func (i *Initiator) Parse(s string) error {
switch strings.ToLower(s) {
case "automatic":
*i = InitiatorAutomatic
case "manual":
*i = InitiatorManual
default:
return fmt.Errorf("invalid initiator: %q", s)
}
return nil
}
func (i Initiator) String() string {
switch i {
case InitiatorAutomatic:
return "automatic"
case InitiatorManual:
return "manual"
}
return "unknown"
}
type Phase uint32
const (
PhaseEndToEnd Phase = iota
PhaseTufUpdate
PhasePackageDownload
PhaseImageWrite
PhaseSuccessPendingReboot
PhaseSuccess
)