name: CI

on:
  push:
    branches:
      - master
  pull_request: {}

jobs:
  lint:
    name: Lint
    env:
      CI: true
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Install node
        uses: actions/setup-node@v2
        with:
          node-version: 12.x
          cache: npm
      - run: npm install
      - run: npm run lint:js

  test:
    name: Test
    env:
      CI: true
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Install node
        uses: actions/setup-node@v2
        with:
          node-version: 12.x
          cache: npm
      - run: npm install
      - run: npm run test

  ember-try:
    name: "Ember Try"
    env:
      CI: true
    runs-on: ubuntu-latest
    strategy:
      matrix:
        try-scenario:
          [
            ember-lts-3.20,
            ember-lts-3.24,
            ember-lts-3.28,
            ember-release,
            ember-beta,
            ember-canary,
            embroider-safe,
            # embroider-optimized, ember-data is currently failing. https://github.com/embroider-build/embroider/issues/396#issuecomment-611885598
          ]
    steps:
      - uses: actions/checkout@v2
      - name: Install node
        uses: actions/setup-node@v2
        with:
          node-version: 12.x
          cache: npm
      - run: npm install
      - run: node_modules/.bin/ember try:one ${{ matrix.try-scenario }} --skip-cleanup
        timeout-minutes: 10
