1- name : log4u-build
1+ name : log4u-dev- build
22on :
3- # push:
4- # branches:
5- # - develop # dev 브랜치 push
63 pull_request :
74 branches :
8- - main # main pr
95 - develop # develop pr
106 types : [ opened, synchronize, reopened ]
7+ workflow_dispatch :
118jobs :
129 build :
1310 name : Build and analyze
@@ -16,30 +13,59 @@ jobs:
1613 - uses : actions/checkout@v4
1714 with :
1815 fetch-depth : 0 # Shallow clones should be disabled for a better relevancy of analysis
16+
1917 - name : Set up JDK 21
2018 uses : actions/setup-java@v4
2119 with :
2220 java-version : 21
2321 distribution : ' zulu' # Alternative distribution options are available
22+
2423 - name : Cache Gradle packages
2524 uses : actions/cache@v4
2625 with :
2726 path : ~/.gradle/caches
2827 key : ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
2928 restore-keys : ${{ runner.os }}-gradle
29+
3030 - name : Cache SonarCloud packages
3131 uses : actions/cache@v4
3232 with :
3333 path : ~/.sonar/cache
3434 key : ${{ runner.os }}-sonar
3535 restore-keys : ${{ runner.os }}-sonar
36+
37+
38+ - name : MySQL 컨테이너 실행
39+ run : |
40+ docker run --name test-mysql \
41+ -e MYSQL_ROOT_PASSWORD=root \
42+ -e MYSQL_DATABASE=log4u \
43+ -e MYSQL_USER=dev \
44+ -e MYSQL_PASSWORD=devcos4-team08 \
45+ -d \
46+ -p 3307:3306 \
47+ mysql:8.0.33
48+
3649 - name : Build and analyze
3750 env :
38- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
51+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
3952 SONAR_TOKEN : ${{ secrets.SONAR_TOKEN }}
40- DB_URL : ${{ secrets.DB_URL }} # Database URL
41- DB_USERNAME : ${{ secrets.DB_USERNAME }} # Database username
42- DB_PASSWORD : ${{ secrets.DB_PASSWORD }} # Database password
53+ DB_URL : jdbc:mysql://localhost:3307/log4u
54+ DB_USERNAME : dev
55+ DB_PASSWORD : devcos4-team08
56+
57+ # dev 프로필 사용
4358 run : |
4459 chmod +x ./gradlew
45- ./gradlew build jacocoTestReport sonar --info -Dsonar.branch.name=${{ github.ref_name }}
60+ ./gradlew build jacocoTestReport sonar --info -Pprofile=dev -Dsonar.branch.name=${{ github.ref_name }}
61+
62+ - name : Docker MySQL 종료 및 제거
63+ run : |
64+ docker stop log4u-mysql
65+ docker rm log4u-mysql
66+
67+ - name : Upload Test Report
68+ uses : actions/upload-artifact@v4
69+ with :
70+ name : problems-report
71+ path : build/reports/problems/problems-report.html
0 commit comments