refactor: Break core package into multiple packages under config/endpoint (#759)
* refactor: Partially break core package into dns, result and ssh packages * refactor: Move core package to config/endpoint * refactor: Fix warning about overlapping imported package name with endpoint variable * refactor: Rename EndpointStatus to Status * refactor: Merge result pkg back into endpoint pkg, because it makes more sense * refactor: Rename parameter r to result in Condition.evaluate * refactor: Rename parameter r to result * refactor: Revert accidental change to endpoint.TypeDNS * refactor: Rename parameter r to result * refactor: Merge util package into endpoint package * refactor: Rename parameter r to result
This commit is contained in:
		| @ -9,7 +9,7 @@ import ( | ||||
|  | ||||
| 	"github.com/TwiN/gatus/v5/alerting/alert" | ||||
| 	"github.com/TwiN/gatus/v5/client" | ||||
| 	"github.com/TwiN/gatus/v5/core" | ||||
| 	"github.com/TwiN/gatus/v5/config/endpoint" | ||||
| ) | ||||
|  | ||||
| // AlertProvider is the configuration necessary for sending an alert using Slack | ||||
| @ -42,9 +42,9 @@ func (provider *AlertProvider) IsValid() bool { | ||||
| } | ||||
|  | ||||
| // Send an alert using the provider | ||||
| func (provider *AlertProvider) Send(endpoint *core.Endpoint, alert *alert.Alert, result *core.Result, resolved bool) error { | ||||
| 	buffer := bytes.NewBuffer(provider.buildRequestBody(endpoint, alert, result, resolved)) | ||||
| 	request, err := http.NewRequest(http.MethodPost, provider.getWebhookURLForGroup(endpoint.Group), buffer) | ||||
| func (provider *AlertProvider) Send(ep *endpoint.Endpoint, alert *alert.Alert, result *endpoint.Result, resolved bool) error { | ||||
| 	buffer := bytes.NewBuffer(provider.buildRequestBody(ep, alert, result, resolved)) | ||||
| 	request, err := http.NewRequest(http.MethodPost, provider.getWebhookURLForGroup(ep.Group), buffer) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| @ -81,13 +81,13 @@ type Field struct { | ||||
| } | ||||
|  | ||||
| // buildRequestBody builds the request body for the provider | ||||
| func (provider *AlertProvider) buildRequestBody(endpoint *core.Endpoint, alert *alert.Alert, result *core.Result, resolved bool) []byte { | ||||
| func (provider *AlertProvider) buildRequestBody(ep *endpoint.Endpoint, alert *alert.Alert, result *endpoint.Result, resolved bool) []byte { | ||||
| 	var message, color string | ||||
| 	if resolved { | ||||
| 		message = fmt.Sprintf("An alert for *%s* has been resolved after passing successfully %d time(s) in a row", endpoint.DisplayName(), alert.SuccessThreshold) | ||||
| 		message = fmt.Sprintf("An alert for *%s* has been resolved after passing successfully %d time(s) in a row", ep.DisplayName(), alert.SuccessThreshold) | ||||
| 		color = "#36A64F" | ||||
| 	} else { | ||||
| 		message = fmt.Sprintf("An alert for *%s* has been triggered due to having failed %d time(s) in a row", endpoint.DisplayName(), alert.FailureThreshold) | ||||
| 		message = fmt.Sprintf("An alert for *%s* has been triggered due to having failed %d time(s) in a row", ep.DisplayName(), alert.FailureThreshold) | ||||
| 		color = "#DD0000" | ||||
| 	} | ||||
| 	var formattedConditionResults string | ||||
|  | ||||
		Reference in New Issue
	
	Block a user