mirror of
https://github.com/mjl-/mox.git
synced 2024-12-26 16:33:47 +03:00
3bfff59940
must have typescript installed before building
39 lines
1 KiB
YAML
39 lines
1 KiB
YAML
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
|
|
|
|
# Trigger rebuilding frontends, should be the same as committed.
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 16
|
|
cache: 'npm'
|
|
- run: npm ci
|
|
- run: 'touch */*.ts'
|
|
|
|
- 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
|
|
|
|
# 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
|