Update dependency @typescript-eslint/parser to v7.9.0 (#653) #558
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: CI | |
on: | |
push: | |
branches: | |
- main | |
- master | |
pull_request: {} | |
concurrency: | |
group: ci-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: "Tests" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Lint | |
run: yarn lint | |
- name: Run Tests | |
run: yarn test:ember | |
floating: | |
name: "Floating Dependencies" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --no-lockfile | |
- name: Run Tests | |
run: yarn test:ember | |
node-tests: | |
name: "Node Tests" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Run Node Tests | |
run: yarn run nodetest | |
docs: | |
name: "Docs" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Generate docs | |
run: yarn run docs | |
try-scenarios: | |
name: ${{ matrix.try-scenario }}, ${{ matrix.browser}} | |
runs-on: ubuntu-latest | |
needs: "test" | |
timeout-minutes: 10 | |
strategy: | |
fail-fast: false | |
matrix: | |
try-scenario: | |
- ember-lts-4.4 | |
- ember-lts-4.8 | |
- ember-lts-4.12 | |
- ember-lts-5.4 | |
- ember-release | |
- ember-beta | |
- ember-canary | |
- ember-lts-4.4-with-plain-html | |
- ember-lts-4.8-with-plain-html | |
- ember-lts-4.12-with-plain-html | |
- ember-beta-with-plain-html | |
- ember-lts-4.4-with-ember-bootstrap-v4 | |
- ember-lts-4.8-with-ember-bootstrap-v4 | |
- ember-lts-4.12-with-ember-bootstrap-v4 | |
- ember-beta-with-ember-bootstrap-v4 | |
- ember-lts-4.4-with-ember-bootstrap-v5 | |
- ember-lts-4.8-with-ember-bootstrap-v5 | |
- ember-lts-4.12-with-ember-bootstrap-v5 | |
- ember-beta-with-ember-bootstrap-v5 | |
- embroider-safe | |
- embroider-optimized | |
browser: | |
- Chrome | |
include: | |
- try-scenario: ember-release | |
browser: Firefox | |
- try-scenario: ember-default-with-ember-bootstrap-v4 | |
browser: Firefox | |
- try-scenario: ember-default-with-ember-bootstrap-v5 | |
browser: Firefox | |
- try-scenario: ember-default-with-plain-html | |
browser: Firefox | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Run Tests | |
run: ./node_modules/.bin/ember try:one ${{ matrix.try-scenario }} --skip-cleanup=true --- ember test --launch ${{ matrix.browser }} | |
coverage-generate: | |
name: Coverage Report (${{ matrix.try-scenario }}) | |
needs: "test" | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
strategy: | |
fail-fast: false | |
matrix: | |
try-scenario: | |
- default | |
- plain-html | |
- bs4 | |
- bs5 | |
browser: | |
- Chrome | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Generate Coverage Report | |
run: yarn run test:cov:${{ matrix.try-scenario }} | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: lcov-${{ matrix.try-scenario }}.info | |
path: coverage/lcov.info | |
coverage-send: | |
name: Send Coverage Report | |
runs-on: ubuntu-latest | |
needs: ["try-scenarios", "coverage-generate"] | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Download coverage report parts | |
uses: actions/download-artifact@v3 | |
with: | |
path: coverage | |
- name: Combine coverage report parts | |
run: ./node_modules/.bin/lcov-result-merger "coverage/**/*" "./lcov.info" | |
- name: Publish coverage report | |
uses: coverallsapp/github-action@master | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
path-to-lcov: "./lcov.info" | |
validate-success: | |
needs: | |
["coverage-send"] | |
runs-on: ubuntu-latest | |
outputs: | |
success: ${{ steps.set-output.outputs.success }} | |
steps: | |
- id: set-output | |
run: echo "success=true" >> $GITHUB_OUTPUT | |
notify-success: | |
name: CI pipeline succeeded | |
needs: ["validate-success"] | |
if: always() # Always run, so we never skip this required check | |
runs-on: ubuntu-latest | |
steps: | |
- name: Note Pipeline Passed | |
run: | | |
msgPrefix="Pipeline #${{ github.run_id }} finished" | |
passed="${{ needs.validate-success.outputs.success }}" | |
if [[ "$passed" == "true" ]]; then | |
echo "${msgPrefix}, PR passed all tests." | |
exit 0 | |
else | |
echo "${msgPrefix}, but with failures. Check left sidebar summary to see which jobs failed." | |
exit 1 | |
fi |