@@ -34,16 +34,17 @@ jobs:
3434 java-version : 21
3535 distribution : ' temurin'
3636
37- # application.yml 생성
37+ # application.yml 운영 환경 용 생성
3838 - name : Make application.yml
3939 run : |
4040 mkdir -p ./src/main/resources
4141 cd ./src/main/resources
4242 touch ./application.yml
4343 touch ./application-secret.yml
4444
45- echo "${{ secrets.APPLICATION }}" | base64 --decode > ./application.yml
46- echo "${{ secrets.SECRET }}" | base64 --decode > ./application-secret.yml
45+ echo "${{ secrets.production_COMMON }}" | base64 --decode > ./application.yml
46+ echo "${{ secrets.production_PROD }}" | base64 --decode > ./application-prod.yml
47+ echo "${{ secrets.production_SECRET }}" | base64 --decode > ./application-prod-secret.yml
4748
4849 # Gradle cache 설정
4950 - name : Cache Gradle packages
@@ -53,11 +54,34 @@ jobs:
5354 key : ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
5455 restore-keys : ${{ runner.os }}-gradle
5556
56- # Gradle build (우선 Test 제외)
57- - name : Build with Gradle
58- uses : gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
59- with :
60- arguments : clean build -x test
57+ - name : MySQL 컨테이너 실행
58+ run : |
59+ docker run --name log4u-mysql \
60+ -e MYSQL_ROOT_PASSWORD=root \
61+ -e MYSQL_DATABASE=log4u \
62+ -e MYSQL_USER=dev \
63+ -e MYSQL_PASSWORD=devcos4-team08 \
64+ -d \
65+ -p 3307:3306 \
66+ mysql:8.0.33
67+
68+ - name : Build and analyze
69+ env :
70+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
71+ SONAR_TOKEN : ${{ secrets.SONAR_TOKEN }}
72+ DB_URL : jdbc:mysql://localhost:3307/log4u
73+ DB_USERNAME : dev
74+ DB_PASSWORD : devcos4-team08
75+
76+ # 테스트용으로 dev 프로필 사용(시크릿 제외하고 prod 와 동일)
77+ run : |
78+ chmod +x ./gradlew
79+ ./gradlew build jacocoTestReport -Pprofile=dev
80+
81+ - name : Docker MySQL 종료 및 제거
82+ run : |
83+ docker stop log4u-mysql
84+ docker rm log4u-mysql
6185
6286 deploy :
6387 runs-on : ubuntu-latest
0 commit comments