From 171ba185d32a9e740ad7cb8dc02fa42c42977b06 Mon Sep 17 00:00:00 2001 From: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com> Date: Fri, 19 Jan 2024 10:17:21 +0100 Subject: [PATCH] Alerting: Allow selecting only ... in groupBy (#80857) Allow selecting only ... in groupBy --- .../simplifiedRouting/route-settings/RouteSettings.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/public/app/features/alerting/unified/components/rule-editor/alert-rule-form/simplifiedRouting/route-settings/RouteSettings.tsx b/public/app/features/alerting/unified/components/rule-editor/alert-rule-form/simplifiedRouting/route-settings/RouteSettings.tsx index 0c88f60698a..653ffa63d13 100644 --- a/public/app/features/alerting/unified/components/rule-editor/alert-rule-form/simplifiedRouting/route-settings/RouteSettings.tsx +++ b/public/app/features/alerting/unified/components/rule-editor/alert-rule-form/simplifiedRouting/route-settings/RouteSettings.tsx @@ -45,6 +45,7 @@ export const RoutingSettings = ({ alertManager }: RoutingSettingsProps) => { const overrideGrouping = watch(`contactPoints.${alertManager}.overrideGrouping`); const overrideTimings = watch(`contactPoints.${alertManager}.overrideTimings`); const requiredFieldsInGroupBy = ['grafana_folder', 'alertname']; + const disableGrouping = '...'; const styles = useStyles2(getStyles); return ( @@ -72,6 +73,10 @@ export const RoutingSettings = ({ alertManager }: RoutingSettingsProps) => { if (!value || value.length === 0) { return 'At least one group by option is required.'; } + // if value includes only the allowedSingleFieldInGroupBy, it is valid + if (value.length === 1 && value[0] === disableGrouping) { + return true; + } // we need to make sure that the required fields are included const requiredFieldsIncluded = requiredFieldsInGroupBy.every((field) => value.includes(field)); if (!requiredFieldsIncluded) {