Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/renovate-tracked-deps.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,9 @@
},
".github/workflows/micrometer-compatibility.yml": {
"regex": [
"mise"
"micrometer-metrics/micrometer",
"mise",
"zeitlinger/micrometer"
]
},
".github/workflows/native-tests.yml": {
Expand Down
16 changes: 16 additions & 0 deletions .github/renovate.json5
Original file line number Diff line number Diff line change
Expand Up @@ -77,5 +77,21 @@
"<!-- renovate: datasource=(?<datasource>[a-z-]+?) packageName=(?<packageName>.+?) -->\\s*<api\\.diff\\.baseline\\.version>(?<currentValue>[^<]+)</api\\.diff\\.baseline\\.version>"
]
},
{
customType: "regex",
description: "track the latest Micrometer release for upstream compatibility",
managerFilePatterns: ["/^\\.github\\/workflows\\/micrometer-compatibility\\.yml$/"],
matchStrings: [
"# renovate: datasource=(?<datasource>\\S+) depName=(?<depName>\\S+) packageName=(?<packageName>\\S+)\\n\\s*ref:\\s*(?<currentValue>v[0-9][^\\s]*)",
],
},
{
customType: "regex",
description: "pin the Micrometer typed-descriptor compatibility ref",
managerFilePatterns: ["/^\\.github\\/workflows\\/micrometer-compatibility\\.yml$/"],
matchStrings: [
"# renovate: datasource=(?<datasource>\\S+) depName=(?<depName>\\S+) packageName=(?<packageName>\\S+) currentValue=(?<currentValue>\\S+)\\n\\s*ref:\\s*(?<currentDigest>[a-f0-9]{40})",
],
},
],
}
45 changes: 33 additions & 12 deletions .github/workflows/micrometer-compatibility.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,30 @@ name: Micrometer Compatibility
on:
pull_request:
workflow_dispatch:
inputs:
micrometer-repository:
description: Micrometer repository to test, in owner/name form
required: false
default: micrometer-metrics/micrometer
micrometer-ref:
description: Micrometer branch, tag, or commit to test
required: true

permissions: {}

jobs:
micrometer-compatibility:
compat-test:
name: ${{ matrix.name }}
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
include:
- name: upstream
repository: micrometer-metrics/micrometer
# renovate: datasource=github-releases depName=micrometer-metrics/micrometer packageName=micrometer-metrics/micrometer
ref: v1.16.5
- name: typed-descriptor
# TODO: remove this temporary opt-in leg once Micrometer switches the
# Prometheus client integration to typed descriptors by default.
# Follow-up: https://github.com/prometheus/client_java/issues/2182
repository: zeitlinger/micrometer
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.

should we add a TODO to remove this at some point?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Added a TODO plus follow-up issue #2182 so we can remove the temporary opt-in leg once Micrometer switches the typed-descriptor path to the default upstream behavior.

# renovate: datasource=git-refs depName=zeitlinger/micrometer packageName=https://github.com/zeitlinger/micrometer currentValue=feat/prometheus-client-opt-in
ref: 1af1b3185058941eea57dc467bfe0df5a4786fe4
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: jdx/mise-action@1648a7812b9aeae629881980618f079932869151 # v4.0.1
Expand All @@ -35,6 +43,19 @@ jobs:
- name: Run Micrometer compatibility tests
working-directory: .mise/envs/micrometer
env:
MICROMETER_REPOSITORY: ${{ inputs.micrometer-repository || 'micrometer-metrics/micrometer' }}
MICROMETER_REF: ${{ inputs.micrometer-ref }}
MICROMETER_REPOSITORY: ${{ matrix.repository }}
MICROMETER_REF: ${{ matrix.ref }}
run: mise compat-test

micrometer-compatibility:
name: micrometer-compatibility
runs-on: ubuntu-24.04
needs: compat-test
if: always()
steps:
- name: Aggregate matrix results
run: |
if [[ "${{ needs.compat-test.result }}" != "success" ]]; then
echo "compat-test matrix failed: ${{ needs.compat-test.result }}"
exit 1
fi
Loading