name: Build on: [push, pull_request] jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [10.x, 12.x] steps: - uses: actions/checkout@v1 - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - name: Install Yarn run: | npm i yarn --global yarn config set cache-folder $GITHUB_WORKSPACE/.cache/yarn - name: Cache node modules uses: actions/cache@v1 with: path: .cache key: ${{ runner.OS }}-build-${{ hashFiles('**/yarn.lock') }} restore-keys: | ${{ runner.OS }}-build- ${{ runner.OS }}- - name: Install Packages run: yarn install --frozen-lockfile --force env: CYPRESS_CACHE_FOLDER: $GITHUB_WORKSPACE/.cache/cypress - name: Run Build run: yarn build - name: Run Unit Tests run: | yarn test --coverage cat ./coverage/lcov.info | ./node_modules/.bin/coveralls env: COVERALLS_SERVICE_NAME: ${{ secrets.COVERALLS_SERVICE_NAME }} COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} - name: Run E2E Tests run: yarn e2e env: PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}