chore: update [obo-]prometheus-operator to v0.91.0#1096
Conversation
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
📝 WalkthroughWalkthroughThis PR upgrades the observability operator to Prometheus Operator 0.91.0-rhobs1 (from 0.90.1-rhobs1). The changes include version bumps across CRD manifests, deployment definitions, and Go dependencies, plus schema extensions: AWS SigV4 externalId field with validation, email threading support, Mattermost webhook configuration, Prometheus sharding strategy with distributed target assignment, TLS cipher/curve options, and ScrapeConfig constraint improvements including mutual exclusivity validation and string length constraints. Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 golangci-lint (2.12.2)Error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@bundle/manifests/monitoring.rhobs_prometheusagents.yaml`:
- Around line 7781-7794: The current validation only ensures topology exists
when mode == 'Topology' but doesn't require topology.values to be present and
non-empty; update the x-kubernetes-validations for the shardingStrategy (the
rule that references self.mode and self.topology) to also require that
self.topology.values exists and has at least one element when self.mode ==
'Topology' (e.g. extend the rule to '!has(self.topology) || (has(self.mode) &&
self.mode == ''Topology'' && has(self.topology.values) &&
size(self.topology.values) > 0)') so mode=Topology is invalid unless
topology.values is set and non-empty.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: dab62113-1aeb-4057-b53e-0465179c060d
⛔ Files ignored due to path filters (1)
go.sumis excluded by!**/*.sum
📒 Files selected for processing (16)
bundle/manifests/monitoring.rhobs_alertmanagerconfigs.yamlbundle/manifests/monitoring.rhobs_alertmanagers.yamlbundle/manifests/monitoring.rhobs_podmonitors.yamlbundle/manifests/monitoring.rhobs_probes.yamlbundle/manifests/monitoring.rhobs_prometheusagents.yamlbundle/manifests/monitoring.rhobs_prometheuses.yamlbundle/manifests/monitoring.rhobs_prometheusrules.yamlbundle/manifests/monitoring.rhobs_scrapeconfigs.yamlbundle/manifests/monitoring.rhobs_servicemonitors.yamlbundle/manifests/monitoring.rhobs_thanosrulers.yamlbundle/manifests/obo-prometheus-operator-admission-webhook_policy_v1_poddisruptionbudget.yamlbundle/manifests/obo-prometheus-operator-admission-webhook_v1_service.yamlbundle/manifests/obo-prometheus-operator_v1_service.yamlbundle/manifests/observability-operator.clusterserviceversion.yamldeploy/dependencies/kustomization.yamlgo.mod
| values: | ||
| description: |- | ||
| values defines the list of topology values (e.g. zone names) to be used | ||
| for sharding. The configured number of shards must be greater than or | ||
| equal to the number of values. | ||
| items: | ||
| type: string | ||
| type: array | ||
| x-kubernetes-list-type: atomic | ||
| type: object | ||
| type: object | ||
| x-kubernetes-validations: | ||
| - message: topology can only be defined when mode is set to 'Topology' | ||
| rule: '!has(self.topology) || (has(self.mode) && self.mode == ''Topology'')' |
There was a problem hiding this comment.
Require topology.values when mode is Topology.
As written, shardingStrategy.mode: Topology is still valid if topology is missing or topology.values is empty. That admits a config with no zones to assign, and the Line 11372 shard-count rule never fires in that case.
Suggested validation tightening
x-kubernetes-validations:
- message: topology can only be defined when mode is set to 'Topology'
rule: '!has(self.topology) || (has(self.mode) && self.mode == ''Topology'')'
+ - message: topology.values must be non-empty when mode is set to 'Topology'
+ rule: '!has(self.mode) || self.mode != ''Topology'' || (has(self.topology) && has(self.topology.values) && self.topology.values.size() > 0)'🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@bundle/manifests/monitoring.rhobs_prometheusagents.yaml` around lines 7781 -
7794, The current validation only ensures topology exists when mode ==
'Topology' but doesn't require topology.values to be present and non-empty;
update the x-kubernetes-validations for the shardingStrategy (the rule that
references self.mode and self.topology) to also require that
self.topology.values exists and has at least one element when self.mode ==
'Topology' (e.g. extend the rule to '!has(self.topology) || (has(self.mode) &&
self.mode == ''Topology'' && has(self.topology.values) &&
size(self.topology.values) > 0)') so mode=Topology is invalid unless
topology.values is set and non-empty.
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jan--f, simonpasquier The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
No description provided.