in alertmanager/config/receiver.go [168:206]
func (r *ReceiverJSONWrapper) ToReceiverFmt() (Receiver, error) {
receiver := Receiver{
Name: r.Name,
SlackConfigs: r.SlackConfigs,
WebhookConfigs: r.WebhookConfigs,
EmailConfigs: r.EmailConfigs,
PagerDutyConfigs: r.PagerDutyConfigs,
}
for _, p := range r.PushoverConfigs {
pushoverConf := PushoverConfig{
NotifierConfig: p.NotifierConfig,
HTTPConfig: p.HTTPConfig,
UserKey: p.UserKey,
Token: p.Token,
Title: p.Title,
Message: p.Message,
URL: p.URL,
Priority: p.Priority,
}
if p.Retry != "" {
modelRetry, err := model.ParseDuration(p.Retry)
if err != nil {
return receiver, err
}
pushoverConf.Retry = modelRetry
}
if p.Expire != "" {
modelExpire, err := model.ParseDuration(p.Expire)
if err != nil {
return receiver, err
}
pushoverConf.Expire = modelExpire
}
receiver.PushoverConfigs = append(receiver.PushoverConfigs, &pushoverConf)
}
return receiver, nil
}