Skip to content

Fix/weekly/6/dev conflic #32

Fix/weekly/6/dev conflic

Fix/weekly/6/dev conflic #32

Workflow file for this run

name: Continuous Integration
on:
pull_request:
branches:
- dev
- weekly/*
- Review
jobs:
CI:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
distribution: 'corretto'
java-version: '21'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: 8.10
# 캐시 생성 비용이 더 큼
# - name: Cache Gradle packages
# uses: actions/cache@v3
# with:
# path: |
# ~/.gradle/caches
# ~/.gradle/wrapper
# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
# restore-keys: |
# ${{ runner.os }}-gradle-
- name: Start Docker Compose and wait for database
run: |
chmod +x ./gradlew
cd ./docker
docker compose up -d
# Wait for database to be ready
echo "Waiting for database to be ready..."
timeout 60s bash -c 'until docker exec -i $(docker ps -q --filter "name=db") mysqladmin ping -h "127.0.0.1" --silent; do sleep 1; done'
- name: Install dependencies
run: ./gradlew build -x test
- name: Run Tests
run: ./gradlew test
- name: Package the application
run: ./gradlew assemble
- name: Cleanup
if: always()
run: |
cd ./docker
docker compose down