diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..00f927e --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,62 @@ +name: CI +on: [push, pull_request] +jobs: + + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/cache@v2 + with: + path: '**/node_modules' + key: ${{ runner.os }}-lint-modules-${{ hashFiles('**/yarn.lock') }} + - uses: actions/setup-node@v2 + with: + node-version: 14.x + - run: yarn install + - run: yarn run lint + + test: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + node-version: + - 12.x + - 14.x + - 16.x + steps: + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + - name: Ensure line endings are consistent + run: git config --global core.autocrlf input + - name: Check out repository + uses: actions/checkout@v2 + - uses: actions/cache@v2 + with: + path: '**/node_modules' + key: ${{ runner.os }}-test-modules-${{ hashFiles('**/yarn.lock') }} + - name: Install dependencies + run: yarn install + - name: Build project + run: yarn run build + - name: Run tests + run: yarn run test + - name: Submit coverage results + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.github_token }} + flag-name: run-${{ matrix.node-version }} + parallel: true + + coveralls: + needs: test + runs-on: ubuntu-latest + steps: + - name: Consolidate test coverage from different jobs + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.github_token }} + parallel-finished: true diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index cd02e64..0000000 --- a/.travis.yml +++ /dev/null @@ -1 +0,0 @@ -import: rubensworks/travis-presets:node.yml@master diff --git a/README.md b/README.md index 2eb7b7a..dcf812c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # EARL-Badge.js -[![Build Status](https://travis-ci.org/rubensworks/earl-badge.js.svg?branch=master)](https://travis-ci.org/rubensworks/earl-badge.js) +[![Build status](https://github.com/rubensworks/earl-badge.js/workflows/CI/badge.svg)](https://github.com/rubensworks/earl-badge.js/actions?query=workflow%3ACI) [![Coverage Status](https://coveralls.io/repos/github/rubensworks/earl-badge.js/badge.svg?branch=master)](https://coveralls.io/github/rubensworks/earl-badge.js?branch=master) [![npm version](https://badge.fury.io/js/earl-badge.svg)](https://www.npmjs.com/package/earl-badge)