Skip to content

CI

CI #374

Workflow file for this run

name: CI
on:
push:
branches:
- master
- beta
- release
- next
- 'v*'
- 'release-*'
- 'lts-*'
pull_request:
workflow_dispatch:
merge_group:
schedule:
- cron: '0 3 * * *' # daily, at 3am
concurrency:
group: ci-${{ github.head_ref || github.ref }}
cancel-in-progress: true
env:
SKIP_YARN_COREPACK_CHECK: '0'
jobs:
linting:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
- run: pnpm lint
basic-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
- run: pnpm test
basic-tests-matrix:
needs:
- linting
- basic-tests
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
node-version:
- 18
- 20
- 22
os:
- macos-latest
- ubuntu-latest
- windows-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
with:
node-version: ${{ matrix.node-version }}
- run: pnpm test
slow-tests:
needs:
- linting
- basic-tests
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
node-version:
- 18
- 20
- 22
os:
- macos-latest
- ubuntu-latest
- windows-latest
# manual sharding to make CI faster
test-file:
- addon-smoke
- brocfile-smoke
- nested-addons-smoke
- new
- preprocessor-smoke
- smoke
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
with:
node-version: ${{ matrix.node-version }}
- run: pnpm test tests/acceptance/${{ matrix.test-file }}-test-slow.js
feature-flags:
needs:
- linting
- basic-tests
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
feature-flag:
- ENABLE_ALL_EXPERIMENTS
- EMBROIDER
- CLASSIC
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
- run: pnpm test:all
env:
'EMBER_CLI_${{ matrix.feature-flag }}': true
deprecations-broken-test:
name: Deprecations "broken"
runs-on: ubuntu-latest
needs: [basic-tests, linting]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-environment
- name: Run Tests with Deprecations as Errors
env:
OVERRIDE_DEPRECATION_VERSION: '22.0.0'
run: pnpm test:all