mirror of https://github.com/grafana/grafana
Alerting: Support field selectors in time interval API (#90022)
* fix kind of TimeInterval * register custom fields for selectors * support field selectors in legacy storage * support selectors in storage ===== Misc * refactor conversions to build in one place * hide implementation of provenance status behind accessors to use the key in selectors * fix provenance errorpull/90210/head
parent
63e715f6a9
commit
5ae5fa3a7a
@ -0,0 +1,46 @@ |
||||
package v0alpha1 |
||||
|
||||
const ProvenanceStatusAnnotationKey = "grafana.com/provenance" |
||||
const ProvenanceStatusNone = "none" |
||||
|
||||
func (o *TimeInterval) GetProvenanceStatus() string { |
||||
if o == nil || o.Annotations == nil { |
||||
return "" |
||||
} |
||||
s, ok := o.Annotations[ProvenanceStatusAnnotationKey] |
||||
if !ok || s == "" { |
||||
return ProvenanceStatusNone |
||||
} |
||||
return s |
||||
} |
||||
|
||||
func (o *TimeInterval) SetProvenanceStatus(status string) { |
||||
if o.Annotations == nil { |
||||
o.Annotations = make(map[string]string, 1) |
||||
} |
||||
if status == "" { |
||||
status = ProvenanceStatusNone |
||||
} |
||||
o.Annotations[ProvenanceStatusAnnotationKey] = status |
||||
} |
||||
|
||||
func (o *Receiver) GetProvenanceStatus() string { |
||||
if o == nil || o.Annotations == nil { |
||||
return "" |
||||
} |
||||
s, ok := o.Annotations[ProvenanceStatusAnnotationKey] |
||||
if !ok || s == "" { |
||||
return ProvenanceStatusNone |
||||
} |
||||
return s |
||||
} |
||||
|
||||
func (o *Receiver) SetProvenanceStatus(status string) { |
||||
if o.Annotations == nil { |
||||
o.Annotations = make(map[string]string, 1) |
||||
} |
||||
if status == "" { |
||||
status = ProvenanceStatusNone |
||||
} |
||||
o.Annotations[ProvenanceStatusAnnotationKey] = status |
||||
} |
Loading…
Reference in new issue