Start working on #12: Fix inconsistencies in alerting providers

This commit is contained in:
TwinProduction
2020-09-19 16:22:12 -04:00
parent abd49bca8e
commit ae2c4b1ea9
16 changed files with 337 additions and 240 deletions

View File

@ -2,6 +2,7 @@ package config
import (
"errors"
"github.com/TwinProduction/gatus/alerting"
"github.com/TwinProduction/gatus/core"
"gopkg.in/yaml.v2"
"io/ioutil"
@ -21,10 +22,10 @@ var (
)
type Config struct {
Metrics bool `yaml:"metrics"`
Debug bool `yaml:"debug"`
Alerting *core.AlertingConfig `yaml:"alerting"`
Services []*core.Service `yaml:"services"`
Metrics bool `yaml:"metrics"`
Debug bool `yaml:"debug"`
Alerting *alerting.Config `yaml:"alerting"`
Services []*core.Service `yaml:"services"`
}
func Get() *Config {

View File

@ -121,7 +121,8 @@ badconfig:
func TestParseAndValidateConfigBytesWithAlerting(t *testing.T) {
config, err := parseAndValidateConfigBytes([]byte(`
alerting:
slack: "http://example.com"
slack:
webhook-url: "http://example.com"
services:
- name: twinnation
url: https://twinnation.org/actuator/health
@ -145,7 +146,7 @@ services:
if config.Alerting == nil {
t.Fatal("config.AlertingConfig shouldn't have been nil")
}
if config.Alerting.Slack != "http://example.com" {
if config.Alerting.Slack.WebhookUrl != "http://example.com" {
t.Errorf("Slack webhook should've been %s, but was %s", "http://example.com", config.Alerting.Slack)
}
if len(config.Services) != 1 {