guilhermearaujo/boleto.js

View on GitHub
.github/workflows/main.yml

Summary

Maintainability
Test Coverage
name: CI

on: [push, pull_request]

jobs:
  linter:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: 18
          cache: yarn

      - name: Install dependencies
        run: yarn install --immutable

      - name: Lint
        run: yarn lint

  deps:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: 18
          cache: yarn

      - name: Install dependencies
        run: yarn install --immutable

      - name: Audit packages
        run: yarn audit

  unit:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node: [16, 17, 18]
    steps:
      - uses: actions/checkout@v3

      - name: Set up Node
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node }}
          cache: yarn

      - name: Install dependencies
        run: yarn install --immutable

      - name: Prepare to build
        run: |
          curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
          chmod +x ./cc-test-reporter
          ./cc-test-reporter before-build

      - name: Unit tests
        run: yarn test

      - name: Report coverage
        env:
          CC_TEST_REPORTER_ID: ${{ secrets.CODECLIMATE_ID }}
        run: ./cc-test-reporter after-build -t lcov --exit-code $?