github.com/stakater/IngressMonitorController@v1.0.103/pkg/monitors/uptime/uptime-mappers.go (about) 1 package uptime 2 3 import ( 4 "strconv" 5 "strings" 6 7 "github.com/stakater/IngressMonitorController/pkg/models" 8 ) 9 10 func UptimeMonitorMonitorToBaseMonitorMapper(uptimeMonitor UptimeMonitorMonitor) *models.Monitor { 11 var m models.Monitor 12 13 m.Name = uptimeMonitor.Name 14 m.URL = uptimeMonitor.MspAddress 15 m.ID = strconv.Itoa(uptimeMonitor.PK) 16 17 var annotations = map[string]string{ 18 "uptime.monitor.stakater.com/interval": strconv.Itoa(uptimeMonitor.MspInterval), 19 "uptime.monitor.stakater.com/check_type": uptimeMonitor.CheckType, 20 "uptime.monitor.stakater.com/contacts": strings.Join(uptimeMonitor.ContactGroups, ","), 21 "uptime.monitor.stakater.com/locations": strings.Join(uptimeMonitor.Locations, ","), 22 } 23 24 m.Annotations = annotations 25 return &m 26 } 27 28 func UptimeMonitorMonitorsToBaseMonitorsMapper(uptimeMonitors []UptimeMonitorMonitor) []models.Monitor { 29 var monitors []models.Monitor 30 31 for index := 0; index < len(uptimeMonitors); index++ { 32 monitors = append(monitors, *UptimeMonitorMonitorToBaseMonitorMapper(uptimeMonitors[index])) 33 } 34 35 return monitors 36 }