Skip to content

Commit caf4e36

Browse files
authored
chore: CD 파이프라인 추가
1 parent 6a5dad6 commit caf4e36

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Spring Boot & Gradle CICD Jobs (With. dev branches push)
2+
3+
on:
4+
push:
5+
branches: [ dev ]
6+
7+
jobs:
8+
build:
9+
# 실행 환경 (Git Runners 개인 서버)
10+
runs-on: self-hosted
11+
steps:
12+
- uses: actions/checkout@v3
13+
- name: Set up JDK 17
14+
uses: actions/setup-java@v3
15+
with:
16+
java-version: '17'
17+
distribution: 'adopt'
18+
19+
# application.yml 파일 설정
20+
- name: resources 폴더 생성
21+
run: |
22+
mkdir -p ./backend/src/main/resources
23+
24+
- name: yml 파일 생성
25+
run: |
26+
echo "${{ secrets.APPLICATION_DEFAULT_DEV }}" > ./backend/src/main/resources/application.yml
27+
echo "${{ secrets.APPLICATION_DEV }}" > ./backend/src/main/resources/application-dev.yml
28+
echo "${{ secrets.APPLICATION_DB }}" > ./backend/src/main/resources/database.yml
29+
30+
# gradlew를 실행시키기 위해 권한 부여
31+
- name: Gradlew에게 실행권한 부여
32+
run: chmod +x ./backend/gradlew
33+
34+
# 멀티모듈 빌드하기
35+
- name: 멀티모듈 전체 빌드
36+
run: |
37+
cd ./backend
38+
./gradlew clean build -x test
39+
40+
deployment:
41+
name: docker deployment
42+
needs: build # depends on
43+
runs-on: self-hosted
44+
45+
steps:
46+
- name: 도커 컴포즈 복사
47+
run: echo "${{ secrets.DOCKER_COMPOSE_DEV }}" > ./backend/docker-compose.yml
48+
49+
- name: 도커 컴포즈 재실행
50+
run: |
51+
cd ./backend
52+
docker-compose down
53+
docker rmi `docker images | grep gitudy | awk '{print $3}'`
54+
docker-compose up -d

0 commit comments

Comments
 (0)