name: CI on: push: branches: [main] pull_request: branches: [main] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true - name: Build run: go build ./... - name: Format check run: | if [ -n "$(gofmt -l .)" ]; then echo "The following files are not formatted:" gofmt -l . exit 1 fi - name: Vet run: go vet ./... - name: Test run: go test ./...