File tree Expand file tree Collapse file tree 2 files changed +55
-0
lines changed
Expand file tree Collapse file tree 2 files changed +55
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Run Tests with Docker-Compose
2+
3+ on :
4+ push :
5+ branches :
6+ - main
7+ pull_request :
8+ branches :
9+ - main
10+
11+ jobs :
12+ test :
13+ runs-on : ubuntu-latest
14+
15+ env :
16+ DB_HOST : " db"
17+ DB_NAME : " expense_db"
18+ DB_USER : " postgres"
19+ DB_PASSWORD : " password"
20+ DB_PORT : " 5432"
21+
22+ steps :
23+ - name : Checkout repository
24+ uses : actions/checkout@v4
25+
26+ - name : Set up Docker Compose
27+ run : docker-compose up -d
28+
29+ - name : Wait for services to be ready
30+ run : |
31+ echo "Waiting for database..."
32+ while ! docker-compose exec -T db pg_isready -U $DB_USER -d $DB_NAME; do
33+ sleep 2
34+ done
35+
36+ - name : Run migrations
37+ run : docker-compose run --rm app alembic upgrade head
38+
39+ - name : Run tests
40+ run : docker-compose run --rm app pytest tests/end_to_end --cov=app --cov-report=term
41+
42+ - name : Copy coverage report from container
43+ run : |
44+ mkdir -p coverage_report
45+ docker cp $(docker-compose ps -q app):/app/htmlcov ./coverage_report
46+
47+ - name : Upload coverage report
48+ uses : actions/upload-artifact@v4
49+ with :
50+ name : coverage-report
51+ path : coverage_report/htmlcov
52+ retention-days : 7
53+
54+ - name : Stop Docker Compose
55+ run : docker-compose down
File renamed without changes.
You can’t perform that action at this time.
0 commit comments