Skip to content

Release/ci cd

Release/ci cd #7

Workflow file for this run

name: Run Tests with Docker
on:
push:
branches:
- main
pull_request:
branches:
- main
- database/hw-2
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
services:
dind:
image: docker:23.0-rc-dind-rootless
ports:
- 2375:2375
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Restore .env files
run: |
echo "${{ secrets.ENV_FILE }}" > .env
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
- name: Run Tests
run: |
make all
- name: Check Test Coverage
run: |
COVERAGE=$(go tool cover -func=coverage.out | grep -Po 'total:\s+\(statements\)\s+\K[\d.]+')
echo "Coverage: $COVERAGE%"
if (( $(echo "$COVERAGE < 50" | bc -l) )); then
echo "Test coverage is below 50%! Current coverage: $COVERAGE%"
exit 1
fi