@@ -16,19 +16,19 @@ jobs:
1616 contents : read
1717
1818 steps :
19-
20- # # jdk setting
19+ # 1. 코드 체크아웃
2120 - uses : actions/checkout@v4
21+
22+ # 2. JDK 21 설정
2223 - name : Set up JDK 21
2324 uses : actions/setup-java@v4
2425 with :
2526 java-version : ' 21'
2627 distribution : ' temurin'
2728
28-
29- # # gradle caching
29+ # 3. Gradle 캐시
3030 - name : Setup Gradle
31- uses : gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 # v3.1.0
31+ uses : gradle/actions/setup-gradle@v3
3232 with :
3333 path : |
3434 ~/.gradle/caches
@@ -37,44 +37,44 @@ jobs:
3737 restore-keys : |
3838 ${{ runner.os }}-gradle-
3939
40- # # create application.yml (운영 환경 세팅)
41- - name : make application.yml
40+ # 4. application.yml 생성
41+ - name : Make application.yml
4242 if : contains(github.ref, 'main') || contains(github.ref, 'refs/pull/')
4343 run : |
4444 mkdir -p ./src/main/resources
45- cd ./src/main/resources
46- touch application.yml
47- echo "${{ secrets.APPLICATION_DEV_YML }}" > application.yml
48- shell : bash
45+ echo "${{ secrets.APPLICATION_DEV_YML }}" > ./src/main/resources/application.yml
4946
47+ # 5. gradlew 실행 권한 부여
5048 - name : Grant Execute Permission For Gradlew
5149 run : chmod +x gradlew
5250
53- # # docker build & push
54- - name : docker build
51+ # 6. Gradle로 JAR 빌드
52+ - name : Build JAR
53+ run : ./gradlew clean build
54+
55+ # 7. Docker 빌드 및 푸시
56+ - name : Docker Build & Push
5557 run : |
5658 docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
57- docker build -t ${{ secrets.DOCKER_USERNAME }}/decodeat .
59+ docker build -t ${{ secrets.DOCKER_USERNAME }}/decodeat:latest .
5860 docker push ${{ secrets.DOCKER_USERNAME }}/decodeat:latest
5961
60- # # docker deploy
61- - name : Deploy to dev
62+ # 8. Docker 배포
63+ - name : Deploy to Dev
6264 uses : appleboy/ssh-action@master
63- id : deploy-dev
64- # if: contains(github.ref, 'develop')
6565 if : contains(github.ref,'main')
6666 with :
6767 key : ${{ secrets.PRIVATE_KEY }}
6868 host : ${{ secrets.HOST }}
6969 username : ${{ secrets.USERNAME }}
7070 port : 22
7171 script : |
72- docker rm -f $(docker ps -qa)
73- docker pull ${{ secrets.DOCKER_USERNAME }}/decodeat
72+ docker rm -f $(docker ps -qa) || true
73+ docker pull ${{ secrets.DOCKER_USERNAME }}/decodeat:latest
7474 docker-compose up -d
7575 docker image prune -f
7676
77- # # time
77+ # 9. 현재 시간 출력
7878 current-time :
7979 needs : CI-CD
8080 runs-on : ubuntu-latest
8787 utcOffset : " +09:00"
8888 - name : Print Current Time
8989 run : echo "Current Time=${{steps.current-time.outputs.formattedTime}}"
90- shell : bash
0 commit comments