Skip to content

Merge pull request #127 from ember-tooling/fix-something #341

Merge pull request #127 from ember-tooling/fix-something

Merge pull request #127 from ember-tooling/fix-something #341

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request: {}
concurrency:
group: ci-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
# Fills the dep cache so parallel jobs can start faster.
# No sense in running tests if we can't install correctly.
setup:
name: "Setup"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
# test:
# name: "Tests"
# runs-on: ubuntu-latest
# needs: [setup]
# steps:
# - uses: actions/checkout@v4
# - uses: wyvox/action-setup-pnpm@v3
# - run: pnpm test
tests:
name: "Tests"
runs-on: ubuntu-latest
needs: [setup]
steps:
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
- run: pnpm test
- run: pnpm --filter '*' test
ts_support:
name: "TS: ${{ matrix.tsVersion }}, eslint-ts-deps: ${{ matrix.eslintTsVersion }}"
runs-on: ubuntu-latest
needs: [tests]
timeout-minutes: 2
strategy:
fail-fast: false
matrix:
eslintTsVersion:
- ^6
- ^7
- ^8
- canary
tsVersion:
- 5.3
- 5.4
- 5.5
- 5.6
- 5.7
- rc
- next
steps:
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
- name: 'TS: ${{ matrix.tsVersion }}, eslint-plugin-ts: ${{ matrix.eslintTsVersion }}'
run: |-
function sponge() {
local line;
tmp=$(mktemp)
while IFS= read -r line
do
echo $line >> $tmp;
done
mv "$tmp" $1
}
jq '.pnpm.overrides."@typescript-eslint/parser" = "${{ matrix.eslintTsVersion }}"' package.json | sponge package.json
jq '.pnpm.overrides."@typescript-eslint/scope-manager" = "${{ matrix.eslintTsVersion }}"' package.json | sponge package.json
jq '.pnpm.overrides."@typescript-eslint/visitor-keys" = "${{ matrix.eslintTsVersion }}"' package.json | sponge package.json
jq '.pnpm.overrides.typescript = "${{ matrix.tsVersion }}"' package.json | sponge package.json
- run: pnpm install --no-frozen-lockfile
- run: pnpm test
- run: pnpm --filter '*' test:check
- run: pnpm --filter '*' test:fix
test_eslint-plugin-ember:
name: "eslint-plugin-ember"
runs-on: ubuntu-latest
needs: [setup]
steps:
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
- run: node ./scripts/eslint-plugin-ember-test.mjs
lint:
name: "Lint"
runs-on: ubuntu-latest
needs: [setup]
steps:
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
- name: Lint
run: pnpm lint