chore(deps-dev): bump eslint-plugin-n from 17.13.2 to 17.14.0 (#4324) #720
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: TAV | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
paths-ignore: | |
- '**/*.md' | |
- '**/*.asciidoc' | |
- 'docs/**' | |
- 'examples/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
# limit the access of the generated GITHUB_TOKEN | |
permissions: | |
contents: read | |
jobs: | |
prepare-matrix: | |
runs-on: ubuntu-latest | |
timeout-minutes: 5 | |
outputs: | |
permutations: ${{ steps.transform.outputs.permutations }} | |
steps: | |
- uses: actions/checkout@v4 | |
- id: transform | |
name: Load matrix from tav.json | |
uses: actions/github-script@v7 | |
with: | |
script: | | |
const fs = require('fs') | |
let matrix | |
try { | |
matrix = JSON.parse(fs.readFileSync('./.ci/tav.json')) | |
} catch (err) { | |
core.setFailed(`Error loading './.ci/tav.json': ${err}`) | |
return | |
} | |
const permutations = [] | |
for (const mod of matrix.modules) { | |
for (const nv of matrix.versions) { | |
const nvMajor = Number(nv.split('.')[0]) | |
if (mod.minMajorVersion && nvMajor >= mod.minMajorVersion) { | |
permutations.push(`${mod.name} ${nv}`) | |
} | |
} | |
} | |
if (permutations.length > 256) { | |
core.setFailed(`Matrix size (${permutations.length}) is bigger than the limit (256)`) | |
return | |
} | |
core.setOutput('permutations', permutations) | |
test-tav: | |
needs: prepare-matrix | |
runs-on: ubuntu-latest | |
timeout-minutes: 40 | |
strategy: | |
max-parallel: 15 | |
fail-fast: false | |
matrix: | |
# A job matrix limit is 256. We do some grouping of TAV modules to | |
# stay under that limit. | |
# https://docs.github.com/en/actions/learn-github-actions/usage-limits-billing-and-administration | |
module_and_node: ${{ fromJSON(needs.prepare-matrix.outputs.permutations) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: .ci/scripts/test.sh -b "release" -t ${{ matrix.module_and_node }} | |
env: | |
ELASTIC_APM_CONTEXT_MANAGER: '' |