ntfy/.github/workflows/test.yaml

49 lines
1.2 KiB
YAML

name: test
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
-
name: Install Go
uses: actions/setup-go@v2
with:
go-version: '1.20.x'
-
name: Install node
uses: actions/setup-node@v2
with:
node-version: '18'
-
name: Checkout code
uses: actions/checkout@v2
-
name: Cache Go and npm modules
uses: actions/cache@v3
with:
path: |
~/go/pkg/mod
~/go/bin
~/.npm
web/node_modules
key: ${{ runner.os }}-ntfy-${{ hashFiles('**/go.sum', '**/package.lock') }}
restore-keys: ${{ runner.os }}-ntfy-
-
name: Install dependencies
run: make build-deps-ubuntu
-
name: Build docs (required for tests)
run: make docs
-
name: Build web app (required for tests)
run: make web
-
name: Run tests, formatting, vetting and linting
run: make check
-
name: Run coverage
run: make coverage
-
name: Upload coverage to codecov.io
run: make coverage-upload