diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..99cc749f --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,108 @@ +name: CI + +on: + push: + branches: + - master + - 'v*' + pull_request: {} + schedule: + - cron: '0 6 * * 0' # weekly, on sundays + +jobs: + lint: + name: Linting + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v1 + - uses: actions/setup-node@v1 + with: + node-version: 12.x + - name: install yarn + run: npm install -g yarn + - name: install dependencies + run: yarn install + - name: lint:js + run: yarn lint:js + - name: lint:hbs + run: yarn lint:hbs + + test: + name: Tests + runs-on: ${{ matrix.os }} + + strategy: + matrix: + os: [ubuntu-latest, windows-latest] + node-version: [8.x, 10.x, 12.x] + + steps: + - uses: actions/checkout@v1 + - uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - name: install yarn + run: npm install -g yarn + - name: install dependencies + run: yarn install + - name: node tests + run: yarn test:node + - name: ember test + run: yarn test:ember + + floating-dependencies: + name: Floating Deps + runs-on: ubuntu-latest + + needs: [test, lint] + + steps: + - uses: actions/checkout@v1 + - uses: actions/setup-node@v1 + with: + node-version: 12.x + - name: install yarn + run: npm install -g yarn + - name: install dependencies + run: yarn install --ignore-lockfile + - name: node tests + run: yarn test:node + - name: ember test + run: yarn test:ember + + try-scenarios: + name: ${{ matrix.ember-try-scenario }} + + runs-on: ubuntu-latest + + needs: [test, lint] + + strategy: + matrix: + ember-try-scenario: + - ember-lts-2.12 + - ember-lts-2.16 + - ember-lts-2.18 + - ember-lts-3.4 + - ember-lts-3.8 + - ember-lts-3.12 + - ember-release + - ember-beta + - ember-canary + - ember-default + - ember-default-with-jquery + + steps: + - uses: actions/checkout@v1 + - uses: actions/setup-node@v1 + with: + node-version: 12.x + - name: install yarn + run: npm install -g yarn + - name: install dependencies + run: yarn install + - name: test + env: + EMBER_TRY_SCENARIO: ${{ matrix.ember-try-scenario }} + run: node_modules/.bin/ember try:one $EMBER_TRY_SCENARIO diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a788f550..00000000 --- a/.travis.yml +++ /dev/null @@ -1,83 +0,0 @@ -sudo: false -dist: trusty - -language: node_js -node_js: - - "12" - -addons: - chrome: stable - -cache: - yarn: true - -env: - global: - # See https://git.io/vdao3 for details. - - JOBS=1 - -branches: - only: - - master - # npm version tags - - /^v\d+\.\d+\.\d+/ - -jobs: - fail_fast: true - allow_failures: - - env: EMBER_TRY_SCENARIO=ember-canary - - include: - # runs linting and tests with current locked deps - - - stage: "Tests" - name: "Node 12" - script: - - yarn lint:hbs - - yarn lint:js - - yarn test:node - - name: "Node 10" - script: - - yarn test:node - - name: "Node 8" - script: - - yarn test:node - - name: "Floating Dependencies" - install: - - yarn install --no-lockfile --non-interactive - script: - - yarn test:node - - # we recommend new addons test the current and previous LTS - # as well as latest stable release (bonus points to beta/canary) - - stage: "Additional Tests" - env: EMBER_TRY_SCENARIO=ember-lts-2.12 - - env: EMBER_TRY_SCENARIO=ember-lts-2.16 - - env: EMBER_TRY_SCENARIO=ember-lts-2.18 - - env: EMBER_TRY_SCENARIO=ember-lts-3.4 - - env: EMBER_TRY_SCENARIO=ember-lts-3.8 - - env: EMBER_TRY_SCENARIO=ember-lts-3.12 - - env: EMBER_TRY_SCENARIO=ember-release - - env: EMBER_TRY_SCENARIO=ember-beta - - env: EMBER_TRY_SCENARIO=ember-canary - - env: EMBER_TRY_SCENARIO=ember-default-with-jquery - -before_install: - - curl -o- -L https://yarnpkg.com/install.sh | bash - - export PATH=$HOME/.yarn/bin:$PATH - -install: - - yarn install --frozen-lockfile --non-interactive - -script: - - yarn ember try:one $EMBER_TRY_SCENARIO --skip-cleanup - - yarn test:node # uses the current scenario's ember-source - -deploy: - provider: npm - email: stefan.penner+ember-cli@gmail.com - api_key: - secure: Y5uNST9XrrvGreK+UhNob9ZgjPcwfRoOFpkBpeEMBk5V5fGy9RsAA4RE6VHQtnqPnhpYORXZDe7UK8AgiVXB3pgzxJ1E5N68dbphWjWhZMefbsXbTikHERkYauHlTXuJ6tOMabD9tdxhe4Dsvox/wayP2svOqtpXtkjzvIHhO1c= - on: - tags: true - repo: ember-cli/ember-cli-htmlbars diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index c1fb3aef..00000000 --- a/appveyor.yml +++ /dev/null @@ -1,37 +0,0 @@ -# https://www.appveyor.com/docs/appveyor-yml/ - -# Test against these versions of Node.js. -environment: - MOCHA_REPORTER: "mocha-appveyor-reporter" - matrix: - - nodejs_version: "8" - - nodejs_version: "10" - - nodejs_version: "12" - -branches: - only: - - master - - beta - - release - -# Install scripts. (runs after repo cloning) -install: - - ps: Install-Product node $env:nodejs_version - - appveyor-retry yarn - - appveyor-retry yarn add mocha-appveyor-reporter # must be installed locally. - -cache: - - '%LOCALAPPDATA%\Yarn' - - '%APPDATA%\Roaming\bower' - -# Post-install test scripts. -test_script: - # Output useful info for debugging. - - git rev-parse HEAD - - cmd: yarn run test - -# Don't actually build. -build: off - -# Set build version format here instead of in the admin panel. -version: "{build}" diff --git a/testem.js b/testem.js index 726d1879..f3b0edeb 100644 --- a/testem.js +++ b/testem.js @@ -13,9 +13,7 @@ module.exports = { // --no-sandbox is needed when running Chrome inside a container process.env.CI ? '--no-sandbox' : null, '--headless', - '--disable-gpu', '--disable-dev-shm-usage', - '--disable-software-rasterizer', '--mute-audio', '--remote-debugging-port=0', '--window-size=1440,900'