add webmail #72
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and test | |
on: [push, pull_request, workflow_dispatch] | |
jobs: | |
build-test: | |
runs-on: ubuntu-latest | |
strategy: | |
max-parallel: 1 # cannot run tests concurrently, files are created | |
matrix: | |
go-version: ['stable', 'oldstable'] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: ${{ matrix.go-version }} | |
- run: make build | |
# Need to run tests with a temp dir on same file system for os.Rename to succeed. | |
- run: 'mkdir -p tmp && TMPDIR=$PWD/tmp make test' | |
- uses: actions/upload-artifact@v3 | |
with: | |
path: cover.html | |
# Rebuild webmail frontend code, should be the same as committed. | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
cache: 'npm' | |
- run: npm ci | |
- run: 'touch webmail/*.ts && make frontend' | |
# Format code, we check below if nothing changed. | |
- run: 'make fmt' | |
# Enforce the steps above didn't make any changes. | |
- run: git diff --exit-code |