From 8ec00b54be7952303ecdf446ab28792b832cee22 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 12 May 2025 16:34:53 +0000 Subject: [PATCH] build(deps): jsonnet-bundler Lock file maintenance --- monitoring/jsonnetfile.lock.json | 10 +- .../jsonnet-libs/mixin-utils/test/Makefile | 3 +- .../test/test_remove_rules.libsonnet | 284 ++++++++++++++++++ .../jsonnet-libs/mixin-utils/utils.libsonnet | 27 +- parca-devel/jsonnetfile.lock.json | 4 +- 5 files changed, 306 insertions(+), 22 deletions(-) create mode 100644 monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/test_remove_rules.libsonnet diff --git a/monitoring/jsonnetfile.lock.json b/monitoring/jsonnetfile.lock.json index be752236c..8148fec4c 100644 --- a/monitoring/jsonnetfile.lock.json +++ b/monitoring/jsonnetfile.lock.json @@ -48,7 +48,7 @@ "subdir": "gen/grafonnet-latest" } }, - "version": "d20e609202733790caf5b554c9945d049f243ae3", + "version": "5a8f3d6aa89b7e7513528371d2d1265aedc844bc", "sum": "V9vAj21qJOc2DlMPDgB1eEjSQU4A+sAA4AXuJ6bd4xc=" }, { @@ -58,7 +58,7 @@ "subdir": "gen/grafonnet-v11.4.0" } }, - "version": "d20e609202733790caf5b554c9945d049f243ae3", + "version": "5a8f3d6aa89b7e7513528371d2d1265aedc844bc", "sum": "aVAX09paQYNOoCSKVpuk1exVIyBoMt/C50QJI+Q/3nA=" }, { @@ -68,7 +68,7 @@ "subdir": "grafana-builder" } }, - "version": "42da78cf7f2735c0cf57dee8f80cc52e9e7e57d8", + "version": "254dfb6a7e4468dd16a5c40fcc5370c20a5a011e", "sum": "G7B6E5sqWirDbMWRhifbLRfGgRFbIh9WCYa6X3kMh6g=" }, { @@ -78,8 +78,8 @@ "subdir": "mixin-utils" } }, - "version": "42da78cf7f2735c0cf57dee8f80cc52e9e7e57d8", - "sum": "SRElwa/XrKAN8aZA9zvdRUx8iebl2It7KNQ7VFvMcBA=" + "version": "254dfb6a7e4468dd16a5c40fcc5370c20a5a011e", + "sum": "iu4NT+YOgpxQnxElKML76cSxgTA0cwTmFfI0hOfHHmw=" }, { "source": { diff --git a/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/Makefile b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/Makefile index ea444b444..153fdabb5 100644 --- a/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/Makefile +++ b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/Makefile @@ -4,4 +4,5 @@ vendor jsonnetfile.lock.json: jsonnetfile.json jb install tests: jsonnetfile.lock.json vendor - jsonnet -J vendor/ test_*.libsonnet + jsonnet -J vendor/ ./test_native-classic-histogram.libsonnet + jsonnet -J vendor/ ./test_remove_rules.libsonnet diff --git a/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/test_remove_rules.libsonnet b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/test_remove_rules.libsonnet new file mode 100644 index 000000000..2acb9a6a7 --- /dev/null +++ b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/test/test_remove_rules.libsonnet @@ -0,0 +1,284 @@ +local utils = import '../utils.libsonnet'; +local test = import 'github.com/jsonnet-libs/testonnet/main.libsonnet'; + +local config = { + prometheusAlerts: { + groups: [ + { + name: 'group1', + rules: [ + { + alert: 'alert1', + }, + { + alert: 'alert2', + }, + ], + }, + { + name: 'group2', + rules: [ + { + alert: 'alert3', + }, + { + alert: 'alert4', + }, + ], + }, + ], + }, + prometheusRules: { + groups: [ + { + name: 'group3', + rules: [ + { + record: 'record1', + }, + { + record: 'record2', + }, + ], + }, + { + name: 'group4', + rules: [ + { + record: 'record3', + }, + { + record: 'record4', + }, + ], + }, + ], + }, +}; + +test.new(std.thisFile) + ++ test.case.new( + 'removeAlertRuleGroup', + test.expect.eq( + actual=config + utils.removeAlertRuleGroup('group1'), + expected={ + prometheusAlerts: { + groups: [ + { + name: 'group2', + rules: [ + { + alert: 'alert3', + }, + { + alert: 'alert4', + }, + ], + }, + ], + }, + prometheusRules: { + groups: [ + { + name: 'group3', + rules: [ + { + record: 'record1', + }, + { + record: 'record2', + }, + ], + }, + { + name: 'group4', + rules: [ + { + record: 'record3', + }, + { + record: 'record4', + }, + ], + }, + ], + }, + } + ) +) + ++ test.case.new( + 'removeRecordingRuleGroup', + test.expect.eq( + actual=config + utils.removeRecordingRuleGroup('group4'), + expected={ + prometheusAlerts: { + groups: [ + { + name: 'group1', + rules: [ + { + alert: 'alert1', + }, + { + alert: 'alert2', + }, + ], + }, + { + name: 'group2', + rules: [ + { + alert: 'alert3', + }, + { + alert: 'alert4', + }, + ], + }, + ], + }, + prometheusRules: { + groups: [ + { + name: 'group3', + rules: [ + { + record: 'record1', + }, + { + record: 'record2', + }, + ], + }, + ], + }, + } + ) +) + ++ test.case.new( + 'removeAlertRuleGroup with groupname from recording rules (noop)', + test.expect.eq( + actual=config + utils.removeAlertRuleGroup('group4'), + expected=config + ) +) ++ test.case.new( + 'removeRecordingRuleGroup with groupname from alert rules (noop)', + test.expect.eq( + actual=config + utils.removeRecordingRuleGroup('group2'), + expected=config + ) +) + ++ test.case.new( + 'removeAlerts', + test.expect.eq( + actual=config + utils.removeAlerts(['alert1', 'alert4']), + expected={ + prometheusAlerts: { + groups: [ + { + name: 'group1', + rules: [ + { + alert: 'alert2', + }, + ], + }, + { + name: 'group2', + rules: [ + { + alert: 'alert3', + }, + ], + }, + ], + }, + prometheusRules: { + groups: [ + { + name: 'group3', + rules: [ + { + record: 'record1', + }, + { + record: 'record2', + }, + ], + }, + { + name: 'group4', + rules: [ + { + record: 'record3', + }, + { + record: 'record4', + }, + ], + }, + ], + }, + } + ) +) + ++ test.case.new( + 'removeAlerts - object (backwards compatible)', + test.expect.eq( + actual=config + utils.removeAlerts({ alert1: {}, alert4: {} }), + expected={ + prometheusAlerts: { + groups: [ + { + name: 'group1', + rules: [ + { + alert: 'alert2', + }, + ], + }, + { + name: 'group2', + rules: [ + { + alert: 'alert3', + }, + ], + }, + ], + }, + prometheusRules: { + groups: [ + { + name: 'group3', + rules: [ + { + record: 'record1', + }, + { + record: 'record2', + }, + ], + }, + { + name: 'group4', + rules: [ + { + record: 'record3', + }, + { + record: 'record4', + }, + ], + }, + ], + }, + } + ) +) diff --git a/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/utils.libsonnet b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/utils.libsonnet index 7eabb5f0f..f94d34614 100644 --- a/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/utils.libsonnet +++ b/monitoring/vendor/github.com/grafana/jsonnet-libs/mixin-utils/utils.libsonnet @@ -392,18 +392,16 @@ local g = import 'grafana-builder/grafana.libsonnet'; for group in groups ], - removeRuleGroup(ruleName):: { - local removeRuleGroup(rule) = if rule.name == ruleName then null else rule, - local currentRuleGroups = super.groups, - groups: std.prune(std.map(removeRuleGroup, currentRuleGroups)), + removeRuleGroup(groupName):: { + groups: std.filter(function(group) group.name != groupName, super.groups), }, removeAlertRuleGroup(ruleName):: { - prometheusAlerts+:: $.removeRuleGroup(ruleName), + prometheusAlerts+: $.removeRuleGroup(ruleName), }, removeRecordingRuleGroup(ruleName):: { - prometheusRules+:: $.removeRuleGroup(ruleName), + prometheusRules+: $.removeRuleGroup(ruleName), }, overrideAlerts(overrides):: { @@ -412,19 +410,20 @@ local g = import 'grafana-builder/grafana.libsonnet'; then rule + overrides[rule.alert] else rule, local overrideInGroup(group) = group { rules: std.map(overrideRule, super.rules) }, - prometheusAlerts+:: { + prometheusAlerts+: { groups: std.map(overrideInGroup, super.groups), }, }, removeAlerts(alerts):: { - local removeRule(rule) = - if 'alert' in rule && std.objectHas(alerts, rule.alert) - then {} - else rule, - local removeInGroup(group) = group { rules: std.map(removeRule, super.rules) }, - prometheusAlerts+:: { - groups: std.prune(std.map(removeInGroup, super.groups)), + local alertNames = + if std.isObject(alerts) + then std.objectFields(alerts) + else alerts, + local removeRule(rule) = !std.member(alertNames, std.get(rule, 'alert', '')), + local removeInGroup(group) = group { rules: std.filter(removeRule, super.rules) }, + prometheusAlerts+: { + groups: std.map(removeInGroup, super.groups), }, }, } diff --git a/parca-devel/jsonnetfile.lock.json b/parca-devel/jsonnetfile.lock.json index 9135d65cc..79ed6e61c 100644 --- a/parca-devel/jsonnetfile.lock.json +++ b/parca-devel/jsonnetfile.lock.json @@ -18,7 +18,7 @@ "subdir": "deploy/lib/parca-agent" } }, - "version": "b6b4edf0f19b31967db5c59cf542c5fa1a801a23", + "version": "62896fa1fffab0292dcf2c77de52345be5af5e13", "sum": "2lFeo1cibXb6qfaDC+ELdb9v4U2R9//1rbSuRn564MQ=" }, { @@ -28,7 +28,7 @@ "subdir": "deploy/lib/parca" } }, - "version": "154cca899780ff5d75068d0a3f64a1b462b1a5d7", + "version": "56bc28ad4c9e60a31602dd5d248d2b42a959ae54", "sum": "3jHwGjkrJ39XMNlGNMS+/O3CbW+Dl6CuwH1Xp0sL4M0=" } ],