Skip to content

vmprobe: support service, pod and node#1720

Open
AndrewChubatiuk wants to merge 1 commit intomasterfrom
k8s-probes
Open

vmprobe: support service, pod and node#1720
AndrewChubatiuk wants to merge 1 commit intomasterfrom
k8s-probes

Conversation

@AndrewChubatiuk
Copy link
Contributor

@AndrewChubatiuk AndrewChubatiuk commented Jan 8, 2026

added spec.targets.kubernetes and deprecated spec.targets.ingress. spec.targets.kubernetes supports besides ingress also pod, service and node roles. later gateway api roles support can be easily added
added spec.targets.static and deprecated spec.targets.staticConfig for consistency
fixes #1078, #1716

This comment was marked as outdated.

This comment was marked as outdated.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 13 out of 13 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@AndrewChubatiuk AndrewChubatiuk changed the title vmprobe: support service and pod vmprobe: support service, pod and node Jan 14, 2026
@AndrewChubatiuk AndrewChubatiuk force-pushed the k8s-probes branch 2 times, most recently from eda0714 to 1f52833 Compare January 29, 2026 11:34
@AndrewChubatiuk
Copy link
Contributor Author

@cubic-dev-ai review this PR

@cubic-dev-ai
Copy link
Contributor

cubic-dev-ai bot commented Jan 29, 2026

@cubic-dev-ai review this PR

@AndrewChubatiuk I have started the AI code review. It will take a few minutes to complete.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5 issues found across 17 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="config/crd/overlay/crd.yaml">

<violation number="1" location="config/crd/overlay/crd.yaml:26666">
P2: spec.targets.kubernetes.role is required by controller validation but optional in the CRD schema. This mismatch allows invalid resources to be accepted by the API server and then fail in the operator. Mark role as required in the kubernetes item schema.</violation>
</file>

<file name="internal/controller/operator/factory/vmagent/probe.go">

<violation number="1" location="internal/controller/operator/factory/vmagent/probe.go:132">
P2: Use pos.IgnoreNamespaceSelectors when resolving probe namespaces so single-namespace mode is enforced consistently with other scrape configs.</violation>
</file>

<file name="docs/resources/vmprobe.md">

<violation number="1" location="docs/resources/vmprobe.md:85">
P2: The K8s example YAML is invalid because the `- role: ingress` list item isn’t indented under `kubernetes:`. This makes the example not runnable as-is.</violation>
</file>

<file name="docs/api.md">

<violation number="1" location="docs/api.md:4734">
P3: VMProbeTargets `kubernetes` and `static` are optional in the API, but the docs mark them as required. Please change these entries to Optional (or explicitly document any intended requirement such as “at least one of …”).</violation>
</file>

<file name="docs/CHANGELOG.md">

<violation number="1" location="docs/CHANGELOG.md:22">
P1: Rule violated: **Changelog Review Agent**

Changelog entry is missing the required user-centric before/after explanation and explicit improvement; it only states the new property. The rule’s “User-centric explanation” clause requires describing how it worked before, what changed now, and the user-visible improvement.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

* FEATURE: [vmoperator](https://docs.victoriametrics.com/operator/): introduce `VMDistributed` CR, which helps to propagate changes to each zone without affecting global availability. Before distributed setup deployment was multistep manual action. See [#1515](https://github.com/VictoriaMetrics/operator/issues/1515).
* FEATURE: [vlagent](https://docs.victoriametrics.com/operator/resources/vlagent/): support ability to override default stream fields for vlagent in logs collection mode.
* FEATURE: [vmoperator](https://docs.victoriametrics.com/operator/): added `VM_*_EPHEMERAL_STORAGE_REQUEST` and `VM_*_EPHEMERAL_STORAGE_LIMIT` global variables that allow to configure ephemeralStorage requests and limits. See [#1711](https://github.com/VictoriaMetrics/operator/issues/1711).
* FEATURE: [vmprobe](https://docs.victoriametrics.com/operator/resources/vmprobe/): added `spec.targets.kubernetes` property, that allows to configure probe for `ingress`, `pod` and `service` roles. See [#1078](https://github.com/VictoriaMetrics/operator/issues/1078) and [#1716](https://github.com/VictoriaMetrics/operator/issues/1716).
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 29, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: Rule violated: Changelog Review Agent

Changelog entry is missing the required user-centric before/after explanation and explicit improvement; it only states the new property. The rule’s “User-centric explanation” clause requires describing how it worked before, what changed now, and the user-visible improvement.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At docs/CHANGELOG.md, line 22:

<comment>Changelog entry is missing the required user-centric before/after explanation and explicit improvement; it only states the new property. The rule’s “User-centric explanation” clause requires describing how it worked before, what changed now, and the user-visible improvement.</comment>

<file context>
@@ -19,6 +19,7 @@ aliases:
 * FEATURE: [vmoperator](https://docs.victoriametrics.com/operator/): introduce `VMDistributed` CR, which helps to propagate changes to each zone without affecting global availability. Before distributed setup deployment was multistep manual action. See [#1515](https://github.com/VictoriaMetrics/operator/issues/1515).
 * FEATURE: [vlagent](https://docs.victoriametrics.com/operator/resources/vlagent/): support ability to override default stream fields for vlagent in logs collection mode.
 * FEATURE: [vmoperator](https://docs.victoriametrics.com/operator/): added `VM_*_EPHEMERAL_STORAGE_REQUEST` and `VM_*_EPHEMERAL_STORAGE_LIMIT` global variables that allow to configure ephemeralStorage requests and limits. See [#1711](https://github.com/VictoriaMetrics/operator/issues/1711).
+* FEATURE: [vmprobe](https://docs.victoriametrics.com/operator/resources/vmprobe/): added `spec.targets.kubernetes` property, that allows to configure probe for `ingress`, `pod` and `service` roles. See [#1078](https://github.com/VictoriaMetrics/operator/issues/1078) and [#1716](https://github.com/VictoriaMetrics/operator/issues/1716).
 
 * BUGFIX: [vmagent](https://docs.victoriametrics.com/operator/resources/vmagent/): previously the operator requested `nodes/proxy` RBAC permissions even though vmagent did not use them; now this permission is no longer required, reducing the default privilege footprint for users running vmagent. See [#1753](https://github.com/VictoriaMetrics/operator/issues/1753).
</file context>
Fix with Cubic

@AndrewChubatiuk AndrewChubatiuk force-pushed the k8s-probes branch 2 times, most recently from 92fe1cd to 589b48e Compare February 5, 2026 12:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

VMProbe supporting pods, not just ingresses

2 participants