48 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			48 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.19.x'
 | |
|       -
 | |
|         name: Install node
 | |
|         uses: actions/setup-node@v2
 | |
|         with:
 | |
|           node-version: '17'
 | |
|       -
 | |
|         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
 |