chore: add GitHub Actions CI workflow and badge #1
This file contains hidden or 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: CI | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| jobs: | |
| build-and-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.23' | |
| - name: Install dependencies | |
| run: go mod download | |
| - name: Build | |
| run: make build | |
| - name: Start services | |
| run: docker-compose up -d postgres redis | |
| - name: Wait for services | |
| run: | | |
| until docker exec qhronos_db pg_isready -U postgres; do sleep 1; done | |
| until docker exec qhronos_redis redis-cli ping; do sleep 1; done | |
| - name: Test | |
| run: make test | |
| - name: Stop services | |
| if: always() | |
| run: docker-compose down |