31 lines
628 B
Go
31 lines
628 B
Go
package probe
|
|
|
|
// Readiness reports compoent's readiness.
|
|
type Readiness int8
|
|
|
|
const (
|
|
// ReadinessUnknown means rediness was unset.
|
|
ReadinessUnknown Readiness = iota
|
|
// ReadinessNotReady reports provided component is not ready.
|
|
ReadinessNotReady
|
|
// ReadinessFailed reports there were a problem with component.
|
|
ReadinessFailed
|
|
// ReadinessOk reports the component is ready to work.
|
|
ReadinessOk
|
|
)
|
|
|
|
type ReadinessAggregate []Readiness
|
|
|
|
func (a ReadinessAggregate) Status() Readiness {
|
|
for _, item := range a {
|
|
switch item {
|
|
case ReadinessOk, ReadinessUnknown:
|
|
continue
|
|
}
|
|
|
|
return item
|
|
}
|
|
|
|
return ReadinessOk
|
|
}
|