INNER CODE UNIT · Go

parseTeamsConfigFile

prometheus-msteams/prometheus-msteams · cmd/server/main.go:60

func parseTeamsConfigFile(f string) (PromTeamsConfig, error) {
	b, err := os.ReadFile(f) //nolint:gosec
	if err != nil {
		return PromTeamsConfig{}, err
	}
	var tc PromTeamsConfig
	if err = yaml.Unmarshal(b, &tc); err != nil {
		return PromTeamsConfig{}, err
	}
	return tc, nil
}

// New Webhook URL format : https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/
var validWebhookPatternO365 = regexp.MustCompile(`^[a-z0-9]+\.webhook\.office\.com/webhookb2/[a-z0-9\-]+@[a-z0-9\-]+/IncomingWebhook/[a-z0-9]+/[a-z0-9\-]+(/[a-zA-Z0-9\-]+)?$`)
var validWebhookPatternWorkflow = regexp.MustCompile((`^[a-z0-9\-\.]+\.environment\.api\.powerplatform\.com/powerautomate/automations/direct/workflows/[\w]+/triggers/manual/paths/invoke\?api-version=\d+&sp=%2Ftriggers%2Fmanual%2Frun&sv=1\.0&sig=[a-zA-Z0-9\-_]+`))
var legacyWebhookPrefix = "outlook.office.com/webhook/" // old format is only valid until 11. april '21

func validateWebhook(workflowType service.WebhookType, u string) error {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…