Skip to content

test: validate JMX Exporter compatibility#2167

Open
zeitlinger wants to merge 2 commits into
prometheus:mainfrom
zeitlinger:validation/jmx-exporter-compatibility
Open

test: validate JMX Exporter compatibility#2167
zeitlinger wants to merge 2 commits into
prometheus:mainfrom
zeitlinger:validation/jmx-exporter-compatibility

Conversation

@zeitlinger
Copy link
Copy Markdown
Member

@zeitlinger zeitlinger commented Jun 1, 2026

Draft validation PR for the unmodified JMX Exporter compatibility story.

This intentionally does not depend on #2114. Vanilla JMX Exporter does not
use the typed descriptor API, so this PR validates the patch-compatible path
independently of typed descriptors.

This validates upstream prometheus/jmx_exporter@main against current
client_java by installing local io.prometheus artifacts and running the JMX
Exporter collector/common/javaagent/standalone Maven tests against them.

Local validation:

  • mise run jmx-exporter:test
  • mise run lint:fix
  • mise run lint
  • actionlint .github/workflows/jmx-exporter-compatibility.yml

@zeitlinger zeitlinger force-pushed the validation/jmx-exporter-compatibility branch 2 times, most recently from 359cb66 to dc50259 Compare June 1, 2026 14:36
@zeitlinger zeitlinger force-pushed the validation/jmx-exporter-compatibility branch from dc50259 to 7a0431f Compare June 1, 2026 14:41
@zeitlinger zeitlinger marked this pull request as ready for review June 1, 2026 14:46
@dhoard
Copy link
Copy Markdown
Collaborator

dhoard commented Jun 1, 2026

@zeitlinger are you wanting to run JMX Exporter smoke test configuration or a quick test configuration?

Smoke test configuration (all integration tests, 6 Java distributions, 2 Prometheus distributions)

Quick test configuration (all integration tests, but 1 Java distribution and 1 Prometheus distribution)

Copy link
Copy Markdown
Collaborator

@dhoard dhoard left a comment

Choose a reason for hiding this comment

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

All in all looks good based on my understand of mise. We need to determine which level we want to run tests. smoke test configuration or quick test configuration

- name: Run JMX Exporter compatibility tests
env:
JMX_EXPORTER_REPOSITORY: ${{ inputs.repository || 'prometheus/jmx_exporter' }}
JMX_EXPORTER_REF: ${{ inputs.ref || 'main' }}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

for both micrometer and JMX, could we use renovate and a tag /sha instead of main? just thinking of a case where either of these projects were to be compromised, we wouldn't want to pull from main and run them

Copy link
Copy Markdown
Collaborator

@jaydeluca jaydeluca left a comment

Choose a reason for hiding this comment

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

one comment but it is non-blocking, we can do a followup

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.

3 participants