name: CI on: push: branches: [ develop ] pull_request: branches: [ develop ] jobs: build-test: runs-on: docker steps: - name: Checkout code uses: actions/checkout@v6 - name: Set up Go uses: actions/setup-go@v6 with: go-version: '1.26' - name: Run tests with coverage run: | go test -v -coverprofile=coverage.out ./... go tool cover -func=coverage.out | tee coverage.txt cov=$(go tool cover -func=coverage.out | grep total: | awk '{print substr($3, 1, length($3)-1)}') cov=${cov%.*} if [ "$cov" -lt 80 ]; then echo "::warning::Test coverage is below 80% ($cov%)" fi - name: Build Docker image run: docker build -t diun-webhook-dashboard .