name: Run unit tests on: push: branches: [master] pull_request: branches: [master] jobs: test: name: Test runs-on: ubuntu-latest services: postgres: image: postgres:16.3 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: api_tmpl ports: - 5432:5432 options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 steps: - name: Set up Go 1.x uses: actions/setup-go@v5 with: go-version: ^1.25.4 id: go - name: Check out code into the Go module directory uses: actions/checkout@v4 - name: Install golang-migrate run: | curl -L https://github.com/golang-migrate/migrate/releases/download/v4.19.0/migrate.linux-amd64.tar.gz | tar xvz sudo mv migrate /usr/bin/migrate which migrate - name: Run migrations run: make migrate-up - name: Test run: make test