Files
Veyra/.github/workflows/check.yml
T

49 lines
1.4 KiB
YAML

name: Checks
on:
push:
branches: [master]
jobs:
verify:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:17
env:
POSTGRES_USER: veyra_test
POSTGRES_PASSWORD: test_only
POSTGRES_DB: veyra_test
ports: ["5432:5432"]
options: >-
--health-cmd "pg_isready -U veyra_test"
--health-interval 5s
--health-timeout 5s
--health-retries 10
env:
VEYRA_TEST_DATABASE_URL: postgres://veyra_test:test_only@127.0.0.1:5432/veyra_test?sslmode=disable
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache-dependency-path: go.sum
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
cache-dependency-path: |
web/admin/package-lock.json
apps/mobile/package-lock.json
- run: npm --prefix web/admin ci
- run: npm --prefix apps/mobile ci
- run: npm --prefix apps/mobile run typecheck
- run: npm --prefix apps/mobile run test
- run: npm --prefix apps/mobile run build
- run: npm --prefix web/admin run build
- run: go build -trimpath -o bin/veyra .
- run: go test -race ./...
- run: go vet ./...
- run: test -z "$(gofmt -l main.go internal)"