Skip to content

[es] Add ES/OS backward compatibility tests #18

[es] Add ES/OS backward compatibility tests

[es] Add ES/OS backward compatibility tests #18

# Copyright (c) 2026 The Jaeger Authors.
# SPDX-License-Identifier: Apache-2.0
# This workflow opts a pull request into the storage backward-compatibility
# test suite on demand, via a PR label. Because those tests are expensive
# (they build the @main Jaeger binary to write data, then verify the PR's
# binary can read it), they don't run on every PR — only when a maintainer
# adds a `check-backward-compatibility:<storage>` label (e.g.
# `check-backward-compatibility:elasticsearch`).
#
# The check-label job scans the PR's labels for that prefix and extracts the
# `<storage>` suffix. If a matching label is present, the backward-compatibility
# job runs the reusable ci-backward-compatibility-all.yml workflow for that
# storage; otherwise (no matching label) the run is a no-op.
name: Check backward compatibility
on:
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
jobs:
check-label:
runs-on: ubuntu-latest
outputs:
storage: ${{ steps.parse.outputs.storage }}
steps:
- id: parse
run: |
for label in ${{ join(github.event.pull_request.labels.*.name, ' ') }}; do
case "$label" in
check-backward-compatibility:*)
echo "storage=${label#check-backward-compatibility:}" >> "$GITHUB_OUTPUT"
exit 0
;;
esac
done
backward-compatibility-tests:
needs: check-label
if: ${{ needs.check-label.outputs.storage != '' }}
uses: ./.github/workflows/ci-backward-compatibility-all.yml

Check failure on line 39 in .github/workflows/check-backward-compatibility.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/check-backward-compatibility.yml

Invalid workflow file

error parsing called workflow ".github/workflows/check-backward-compatibility.yml" -> "./.github/workflows/ci-backward-compatibility-all.yml" --> "./.github/workflows/ci-e2e-opensearch.yml" : (Line: 23, Col: 9): Unrecognized named-value: 'matrix'. Located at position 39 within expression: !inputs.backward_compatibility_env || matrix.version.storage_test == 'e2e'
with:
storage: ${{ needs.check-label.outputs.storage }}