24 lines
950 B
Go
24 lines
950 B
Go
package catalogue
|
|
|
|
// The severities a module may declare for its unhealthy condition.
|
|
const (
|
|
// UnhealthyUrgent raises the module's unhealthy condition urgent, on every machine it runs on.
|
|
UnhealthyUrgent = "urgent"
|
|
// UnhealthyWarning is what a module's unhealthy condition is without the field, said out loud.
|
|
UnhealthyWarning = "warning"
|
|
)
|
|
|
|
// UnhealthyPolicy is what a module says about how loud its unhealthy condition is: `unhealthy` in its manifest
|
|
// (novox/hq ADR 0355).
|
|
type UnhealthyPolicy struct {
|
|
Severity string `json:"severity"`
|
|
// Why names what people lose while the module is broken. It is required: a module that says nothing of
|
|
// why it is loud is refused.
|
|
Why string `json:"why,omitempty"`
|
|
}
|
|
|
|
// UnhealthyIsUrgent is whether the module declares its unhealthy condition urgent (novox/hq ADR 0355 §1).
|
|
func (m Manifest) UnhealthyIsUrgent() bool {
|
|
return m.Unhealthy != nil && m.Unhealthy.Severity == UnhealthyUrgent
|
|
}
|