Skip to content

디벨롭 변경 사항들 마스터 머지 #328

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 215 commits into from
May 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
215 commits
Select commit Hold shift + click to select a range
a291ea5
💚 cloudtype cd branch 조건 추가
seon0025 Feb 21, 2024
c232444
💚 cloudtype cd branch 조건 추가
seon0025 Feb 22, 2024
9b126f4
♻️ latest tag 변경
seon0025 Feb 22, 2024
d7986cd
:sparkles: 인증제 상태 enum
ani2689 Feb 22, 2024
9e7a6a4
:sparkles: 인증제 히스토리 entity
ani2689 Feb 22, 2024
9c58b21
:sparkles: 인증제 entity
ani2689 Feb 22, 2024
50ef3f7
:sparkles: 인증제 repository
ani2689 Feb 22, 2024
b53e49e
:sparkles: 인증제 history repository
ani2689 Feb 22, 2024
6069097
:sparkles: 인증제 history domain model
ani2689 Feb 22, 2024
0176dbb
Merge pull request #273 from GSM-MSG/feature/272-setting-authentication
ani2689 Feb 24, 2024
7094a5f
🔨 tag로 인한 if문 추가
seon0025 Feb 29, 2024
ad4e295
💚 develop server용 image tag설정
seon0025 Feb 29, 2024
5abd87b
👷 develop server용 docker-compose파일 생성 및 경로 설정
seon0025 Feb 29, 2024
bf53525
💚 image tag값 수정
seon0025 Feb 29, 2024
dbd74b8
💚 docker build tag 추가
seon0025 Feb 29, 2024
dcb550a
:sparkles: 인증제 domain model
ani2689 Mar 3, 2024
207ec17
:sparkles: create authentication domain data
ani2689 Mar 4, 2024
af06fd9
:sparkles: create authentication web data
ani2689 Mar 4, 2024
9a3a970
:sparkles: create authentication web endpoint
ani2689 Mar 4, 2024
194d017
:sparkles: authentication port
ani2689 Mar 4, 2024
9a983c7
:bug: @Repository 어노테이션
ani2689 Mar 4, 2024
0b63e9f
:bug: 매개변수 추가
ani2689 Mar 4, 2024
43ca967
:recycle: authtication history domain model
ani2689 Mar 4, 2024
4835400
:sparkles: authtication mapper
ani2689 Mar 4, 2024
2af49e3
:bug: 타입 변경
ani2689 Mar 4, 2024
0b4ace2
:sparkles: authentication port 구현 adapter
ani2689 Mar 4, 2024
8cbb8e7
:sparkles: authentication history event
ani2689 Mar 4, 2024
12f3b1d
:sparkles: authentication event handler
ani2689 Mar 4, 2024
4359562
:sparkles: authentication service
ani2689 Mar 4, 2024
a121235
:sparkles: authentication web adapter
ani2689 Mar 4, 2024
b0e217f
:sparkles: create authentication usecase
ani2689 Mar 4, 2024
9f09244
:bug: @Service 어노테이션 추가
ani2689 Mar 4, 2024
85e8d0b
:recycle: 함수 이름 변경
ani2689 Mar 4, 2024
7924ae5
:sparkles: query student by id
ani2689 Mar 4, 2024
60c94b0
:bug: query student by user id -> query student by id
ani2689 Mar 4, 2024
9c6d162
:bug: GET -> POST
ani2689 Mar 4, 2024
01ad9be
Merge pull request #275 from GSM-MSG/feature/274-create-authentication
ani2689 Mar 4, 2024
8debf9c
:sparkles: query authentication details endpoint
ani2689 Mar 4, 2024
53392c9
:sparkles: query authentication details response data
ani2689 Mar 4, 2024
2ccc1af
:sparkles: get authentication service
ani2689 Mar 5, 2024
758e433
:sparkles: get authentication history service
ani2689 Mar 5, 2024
b4cc284
:sparkles: query Authentication port
ani2689 Mar 5, 2024
7bf8469
:sparkles: Authentication not found
ani2689 Mar 5, 2024
2d0c579
:sparkles: Authentication null 허용 및 예외 추가
ani2689 Mar 5, 2024
91bda90
:sparkles: find by id
ani2689 Mar 5, 2024
44f478a
:recycle: date format
ani2689 Mar 5, 2024
3ea2927
:sparkles: 최근 히스토리 가져오기
ani2689 Mar 5, 2024
2ae639a
Merge pull request #277 from GSM-MSG/feature/276-query-authentication…
ani2689 Mar 5, 2024
def5d72
:bug: 트랜잭션 추가
ani2689 Mar 5, 2024
c7e735a
💚 Develop cd의 branch 조건 변경
seon0025 Mar 5, 2024
751215f
💚 Master cd의 branch 조건 변경
seon0025 Mar 5, 2024
739cdba
:sparkles: request authentication data
ani2689 Mar 5, 2024
fad2561
:sparkles: request authentication usecase
ani2689 Mar 5, 2024
f601ad3
:sparkles: request authentication endpoint
ani2689 Mar 5, 2024
cf50e3d
Merge pull request #279 from GSM-MSG/feature/261-develop-server
seon0025 Mar 5, 2024
dad78d5
:sparkles: 요청할 수 있는 상태 검증 로직 추가
ani2689 Mar 5, 2024
2250415
Merge pull request #281 from GSM-MSG/feature/278-approve-authentication
ani2689 Mar 5, 2024
d0d40be
✨ delete authentication security
Mar 5, 2024
25bbf33
✨ delete authentication port
Mar 5, 2024
b579915
✨ delete authentication usecase
Mar 5, 2024
f700fc8
✨ delete authentication web adapter
Mar 5, 2024
0cf795d
Merge branch 'develop' into 280-authentication-remove
enbraining Mar 5, 2024
79b21da
오타 수정
Mar 5, 2024
72970b4
NOT_FOUND -> NO_CONTENT
Mar 5, 2024
4301f97
이미 점수가 부여되어 있을 경우의 예외 추가
Mar 5, 2024
b456cad
일관성을 위한 매개변수 타입 변경 UUID -> String
Mar 5, 2024
78e6e74
승인된 활동은OC 지울 수 없게 변경함
Mar 5, 2024
405e2b2
삭제 로직 포트 commandPort로 이동
Mar 5, 2024
c7d7429
인터페이스 구현
Mar 5, 2024
90ad76f
♻️ Exception을 직관적인 이름으로 변경
Mar 5, 2024
7050ff0
:bug: 최근 값 하나만 불러오기
ani2689 Mar 6, 2024
b679ab6
:recycle: 디렉토리 이동
ani2689 Mar 6, 2024
5b1ca89
:sparkles: filter request data
ani2689 Mar 6, 2024
50399fd
:pencil2: data class 명 변경
ani2689 Mar 6, 2024
d9bb5fa
:sparkles: response data class
ani2689 Mar 6, 2024
7f6fc43
:pencil2: 오타 수정
ani2689 Mar 6, 2024
64b94ab
:bug: 빠져있는 프로퍼티 추가
ani2689 Mar 6, 2024
5dc4b7a
:sparkles: query requested authentication endpoint
ani2689 Mar 6, 2024
ba2f7c4
:sparkles: query requested authentication
ani2689 Mar 7, 2024
4ec40cd
:pencil2: 이름 변경
ani2689 Mar 7, 2024
816cc5b
:pencil2: 이름 변경
ani2689 Mar 7, 2024
97366dc
🐛 Authentication 삭제 시에 연관 테이블인 AuthenticationTable도 제거함
Mar 7, 2024
5ba8929
:sparkles: filter service
ani2689 Mar 7, 2024
fce5f31
🔥 활동 삭제 API OK -> NO_CONTENT
Mar 7, 2024
ac2f221
♻️ 활동 삭제 API ResponseEntity Void -> Unit
Mar 7, 2024
9696534
Merge pull request #282 from GSM-MSG/280-authentication-remove
Mar 7, 2024
18ee3ff
:sparkles: homeroom teacher not found
ani2689 Mar 8, 2024
b3f860c
:sparkles: find homeroom teacher by user id
ani2689 Mar 8, 2024
bbe3d3e
:recycle: web data
ani2689 Mar 8, 2024
c25b2c2
:recycle: query request authentication usecase
ani2689 Mar 8, 2024
9ed16ba
✨ get authentication histories Persistence
Mar 10, 2024
52b1d6f
✨ get authentication histories ResponseData
Mar 10, 2024
fd4a64f
✨ get authentication histories UseCase
Mar 10, 2024
0775769
✨ get authentication histories Port
Mar 10, 2024
725b111
✨ get authentication histories Service
Mar 10, 2024
64027d1
♻️ get authentication histories Teacher Service
Mar 10, 2024
f9fce5a
✨ get authentication histories Presentation
Mar 10, 2024
4876956
Merge branch '280-authentication-remove' into feature/285-authenticat…
Mar 10, 2024
1a22f0a
♻️ 히스토리의 날짜 형식 변경 및 선생님 이름 String -> String?
Mar 10, 2024
081012f
♻️get authentication histories 엑세스 가능한 역할의 범위
Mar 10, 2024
b52caa3
♻️ DTO 타입 변경 및 Jackson 포맷 수정
Mar 11, 2024
9a2ecd4
✏️ 괄호 사이에 뛰어쓰기 추가
Mar 11, 2024
a6f1c6d
✨ get authentication histories Exception
Mar 11, 2024
7540cf1
♻️ 유저의 검증 추가
Mar 11, 2024
e00009c
✨ 유저 검증을 위한 Service
Mar 11, 2024
d8521a9
♻️ 조금 더 보기 쉽게 바꾼 코드
Mar 11, 2024
6280be0
✨ get authentication histories Persistence
Mar 11, 2024
7bc9c46
✨ get authentication histories Persistence
Mar 11, 2024
ffac71d
✨ get authentication histories Service
Mar 11, 2024
14e1dc7
✨ get authentication histories Port
Mar 11, 2024
3642eb5
✨ get authentication histories Usecase
Mar 11, 2024
e9065cd
Merge pull request #286 from GSM-MSG/feature/285-authentication-histo…
Mar 12, 2024
31c0efb
:bug: 접근 권한 변경
ani2689 Mar 12, 2024
d8e5b15
:bug: 병합 오류 해결
ani2689 Mar 12, 2024
53fdcde
:sparkles: 선생님 검증 로직 추가
ani2689 Mar 12, 2024
21f7c47
:bug: 403 error 해결
ani2689 Mar 12, 2024
98beea1
:sparkles: 정렬 옵션 추가
ani2689 Mar 12, 2024
c874482
:bug: 담임 선생님 권한 검증 삭제
ani2689 Mar 12, 2024
bc3d153
:recycle: 필요한 값만 가져오기
ani2689 Mar 12, 2024
18826ec
Merge pull request #287 from GSM-MSG/feature/283-query-authenticaion-…
ani2689 Mar 12, 2024
fc0b909
✨ 내 활동 리스트 API 시큐리티 설정
Mar 12, 2024
1c9301a
✨ 내 활동 리스트 API Persistence
Mar 12, 2024
07ca6a8
✨ 내 활동 리스트 API DTO
Mar 12, 2024
ce77cc1
✨ 내 활동 리스트 API Web DTO
Mar 12, 2024
4741646
✨ 내 활동 리스트 API Web Port
Mar 12, 2024
4f2b0a8
✨ 내 활동 리스트 API Usecase
Mar 12, 2024
5cb355f
✨ 내 활동 리스트 API Service
Mar 12, 2024
11a1b91
✨ 내 활동 리스트 API Adapter
Mar 12, 2024
6dfca03
🔥 사용되지 않는 임포트 제거
Mar 12, 2024
ffbeef4
Merge pull request #289 from GSM-MSG/feature/288-fetch-my-authenticat…
Mar 13, 2024
dfffd5f
✨ 학생 활동 리스트 조회 API Security Matcher
Mar 14, 2024
fbdca1b
♻️ 접근 권한 STUDENT -> TEACHER
Mar 14, 2024
95eeb20
✨ 학생 활동 리스트 조회 API DTO
Mar 14, 2024
d9a1f4a
✨ 학생 활동 리스트 조회 API Web DTO
Mar 14, 2024
b747635
✨ 학생 활동 리스트 조회 API Usecase
Mar 14, 2024
cf88af9
✨ 학생 활동 리스트 조회 API Adapter
Mar 14, 2024
ce760e9
Merge pull request #291 from GSM-MSG/290-fetch-student-authentication…
Mar 14, 2024
57d163f
:sparkles: update authentication data
ani2689 Mar 17, 2024
bbaa3fc
:sparkles: update authentication usecase
ani2689 Mar 17, 2024
417809a
:sparkles: update authentication web data
ani2689 Mar 17, 2024
7f540f0
:pencil2: 오타 수정
ani2689 Mar 17, 2024
e244ff2
:sparkles: updateAuthentication endpoint
ani2689 Mar 17, 2024
1e090e5
:sparkles: query requested authentication details usecase
ani2689 Mar 17, 2024
905d3be
:sparkles: query requested authentication details web endpoint
ani2689 Mar 17, 2024
08972c6
Merge pull request #295 from GSM-MSG/feature/294-query-requested-auth…
ani2689 Mar 18, 2024
9a73fc5
:bug: 권한 검증 로직 == -> !=
ani2689 Mar 18, 2024
0a0fb5c
Merge pull request #293 from GSM-MSG/feature/292-update-authentication
ani2689 Mar 18, 2024
c3579b3
✨ 요청된 활동 승인 API Security
Mar 18, 2024
c98fe28
✨ 요청된 활동 승인 API Exception
Mar 18, 2024
911910a
✨ 요청된 활동 승인 API DTO
Mar 18, 2024
7316bf8
✨ 요청된 활동 승인 API Web DTO
Mar 18, 2024
41c0991
✨ 요청된 활동 승인 API Web Exception
Mar 18, 2024
91dfb52
✨ 요청된 활동 승인 API Web Service
Mar 18, 2024
729d1e2
✨ 요청된 활동 승인 API Web Port
Mar 18, 2024
a18f01a
✨ 요청된 활동 승인 API Web Usecase
Mar 18, 2024
8efbe5a
✨ 요청된 활동 승인 API Web Adapter
Mar 18, 2024
3eb268d
🔥 사용되지 않는 임포트 제거
Mar 18, 2024
ab7c7a5
Merge branch 'develop' into 296-requested-authentication-approve
Mar 18, 2024
476fb8b
♻️ 가독성 개선
Mar 18, 2024
fa0555e
Merge remote-tracking branch 'origin/296-requested-authentication-app…
Mar 18, 2024
269bd2e
♻️ 교장, 교감, 부장 또는 담임 선생님이 아닌 경우 엑세스할 수 없도록 변경
Mar 18, 2024
5799559
♻️ Activity Status를 APROVED로 바꿔주는 코드 추가
Mar 18, 2024
104cd59
Merge pull request #297 from GSM-MSG/296-requested-authentication-app…
Mar 18, 2024
8cf43ce
✨ 요청된 활동 반려 API Spring Security
Mar 18, 2024
aef15d1
✨ 요청된 활동 반려 API Adapter
Mar 18, 2024
5e770ef
✨ 요청된 활동 반려 API Adapter Web DTO
Mar 18, 2024
0b4fa64
✨ 요청된 활동 반려 API Adapter Usecase
Mar 18, 2024
7dcd9c2
♻️ usecase 파라미터 DTO 변경
Mar 18, 2024
96def38
✨ 요청된 활동 반려 API DTO
Mar 18, 2024
0a3cfe7
♻️ DTO 반환 타입 변경
Mar 18, 2024
e631f96
♻️ Usecase 파라미터 변경
Mar 18, 2024
2e0c65c
♻️ 잘못된 파라미터 변경
Mar 18, 2024
629c0e0
Merge pull request #299 from GSM-MSG/298-requested-authentication-reject
Mar 18, 2024
cea237c
💚 develop server를 cloudtype으로 배포
seon0025 Apr 11, 2024
98a39d0
💚 project 환경변수로 추가
seon0025 Apr 11, 2024
06603e6
Merge pull request #303 from GSM-MSG/302-cloudtype-develop-server
seon0025 Apr 11, 2024
ba9e742
update :: gauth 버전 2 -> 3
ani2689 Apr 18, 2024
553628b
Merge pull request #307 from GSM-MSG/feature/306-gauth-version-upgrade
ani2689 Apr 18, 2024
43ac006
update :: 졸업생도 학번을 null로 받도록
ani2689 May 20, 2024
185e2fb
add :: gauth 로그인 시 학번이 다르면 업데이트
ani2689 May 20, 2024
4005f84
Merge pull request #310 from GSM-MSG/feature/309-gauth-class-num-check
ani2689 May 24, 2024
c665c29
:sparkles: 외부인원 학생정보 조회 링크에 들어갈 토큰 생성을 위한 유틸리티
May 26, 2024
4204981
:sparkles: 학생정보 조회 링크 엔티티
May 26, 2024
a23ad2a
✨ 학생정보 조회 링크 생성 Presentation
May 26, 2024
0487d45
✨ 학생정보 조회 링크 Adapter
May 26, 2024
897e9b6
:sparkles: 학생정보 조회 링크 Usecase
May 26, 2024
5f16530
:sparkles: 학생정보 조회 링크 Port
May 26, 2024
cc56985
:sparkles: 학생정보 조회 링크 Service
May 26, 2024
e30b9ba
:sparkles: 학생정보 조회 링크 DTO
May 26, 2024
3414ead
:sparkles: 학생정보 조회 링크 Model
May 26, 2024
56a331e
♻️학생 정보 조회 링크 Security Matcher 추가
May 26, 2024
9f1fb2f
:recycle: Request DTO에서 studentId를 String -> UUID
May 26, 2024
305f3c6
:recycle: 마지막 줄 개행
May 26, 2024
0147046
:recycle: 컨벤션 맞추기
May 26, 2024
1dacdbd
Merge pull request #314 from GSM-MSG/feature/313-generate-student-inf…
May 28, 2024
76ef60d
create :: student info data
ani2689 May 28, 2024
af70290
add :: token으로 Student id 조회
ani2689 May 28, 2024
fa124dd
add :: 생성된 Student link를 찾을 수 없을 때 예외
ani2689 May 28, 2024
4f9e984
create :: token으로 student info 조회 service
ani2689 May 28, 2024
25f8f3f
create :: token으로 student info 조회 usecase
ani2689 May 28, 2024
d01732b
add :: token으로 student info 조회 web mapping
ani2689 May 28, 2024
bb78faf
fix :: 로그인을 하지 않아도 볼 수 있도록 수정
ani2689 May 28, 2024
e77dafd
feat: workflow 실행조건에 수동 트리거 추가
HumanIearning May 28, 2024
e01485f
Merge pull request #320 from GSM-MSG/feature/319/add-trigger
HumanIearning May 28, 2024
44a96b4
Revert "cd workflow에서 수동 트리거 추가"
HumanIearning May 28, 2024
dd46f63
Merge pull request #321 from GSM-MSG/revert-320-feature/319/add-trigger
HumanIearning May 28, 2024
bf24713
Merge pull request #323 from GSM-MSG/master
HumanIearning May 28, 2024
43cdf9f
Revert "나중에 commit 이상하게 꼬이면 이 pr확인하세요"
HumanIearning May 28, 2024
2c19774
Merge pull request #324 from GSM-MSG/revert-323-master
HumanIearning May 28, 2024
784c0e5
Revert "Revert "cd workflow에서 수동 트리거 추가""
HumanIearning May 28, 2024
45f2189
Merge pull request #326 from GSM-MSG/revert-321-revert-320-feature/31…
HumanIearning May 28, 2024
5edf247
Merge pull request #318 from GSM-MSG/315-feature/query-student-info
ani2689 May 28, 2024
3d5be96
:recycle: 테이블 이름 users로 변경
Huuuunee May 28, 2024
3fda11c
Merge pull request #327 from GSM-MSG/refac/table-user
Huuuunee May 28, 2024
13c664e
Merge branch 'master' into develop
Huuuunee May 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
106 changes: 106 additions & 0 deletions .github/workflows/sms_backend_cloudtype_develop_cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
name: Deploy to cloudtype
on:
push:
branches:
- develop
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ success() }}
with:
title: ℹ️ SMS-Backend-CD 시작! ℹ️
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
color: 00FF00

- name: Checkout
uses: actions/checkout@v2
- name: Connect deploy key
uses: cloudtype-github-actions/connect@v1
with:
token: ${{ secrets.CLOUDTYPE_TOKEN }}
ghtoken: ${{ secrets.GHP_TOKEN }}
- name: Deploy
uses: cloudtype-github-actions/deploy@v1
with:
token: ${{ secrets.CLOUDTYPE_TOKEN }}
project: ${{ secrets.PROJECT_NAME }}
stage: main
yaml: >
name: sms-backend

app: java@11

options:
ports: 8080
start: java -jar sms-infrastructure/build/libs/sms-infrastructure-0.0.1-SNAPSHOT.jar
includes: sms-infrastructure
env:
- name: AWS_ACCESS_KEY
value: ${{ secrets.AWS_ACCESS_KEY }}
- name: AWS_REGION_STATIC
value: ${{ secrets.AWS_REGION_STATIC }}
- name: AWS_SECRET_KEY
value: ${{ secrets.AWS_SECRET_KEY }}
- name: DB_DRIVER
value: ${{ secrets.DB_DRIVER }}
- name: DB_PASSWORD
value: ${{ secrets.DB_PASSWORD }}
- name: DB_URL
value: ${{ secrets.DB_URL }}
- name: DB_USERNAME
value: ${{ secrets.DB_USERNAME }}
- name: GAUTH_CLIENT_ID
value: ${{ secrets.GAUTH_CLIENT_ID }}
- name: GAUTH_CLIENT_SECRET
value: ${{ secrets.GAUTH_CLIENT_SECRET }}
- name: GAUTH_REDIRECT_URI
value: ${{ secrets.GAUTH_REDIRECT_URI }}
- name: JWT_ACCESS_SECRET
value: ${{ secrets.JWT_ACCESS_SECRET }}
- name: JWT_REFRESH_SECRET
value: ${{ secrets.JWT_REFRESH_SECRET }}
- name: REDIS_HOST
value: ${{ secrets.REDIS_HOST }}
- name: REDIS_PORT
value: ${{ secrets.REDIS_PORT }}
- name: S3_BUCKET
value: ${{ secrets.S3_BUCKET }}
- name: S3_LOG_BUCKET
value: ${{ secrets.S3_LOG_BUCKET }}
- name: SECURITY_SECRET_KEY
value: ${{ secrets.SECURITY_SECRET_KEY }}
healthz: /health
context:
git:
url: git@github.com:${{ github.repository }}.git
ref: ${{ github.ref }}
preset: kotlin

- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ success() }}
with:
title: ✅ SMS-Backend-CD 성공! ✅
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
status: ${{ job.status }}
image: ${{ secrets.CD_SUCCESS_IMAGE }}
description: 영역전개 CD 성공
color: 00FF00
username: SMS CD 봇
url: https://github.com/GSM-MSG/SMS-BackEnd

- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ failure() }}
with:
title: ❗️ SMS-Backend-CD 실패! ❗️
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
status: ${{ job.status }}
image: ${{ secrets.CD_FAIL_IMAGE }}
description: 무례하긴, 실패다.
color: FF0000
username: SMS CD 봇
url: https://github.com/GSM-MSG/SMS-BackEnd
139 changes: 68 additions & 71 deletions .github/workflows/sms_backend_develop_cd.yml
Original file line number Diff line number Diff line change
@@ -1,101 +1,98 @@
name: Deploy to cloudtype
name: Deploy to Develop server

on:
push:
branches:
- develop
push:
branches:
- aws-develop-server

jobs:
deploy:
runs-on: ubuntu-latest
steps:
CD:
name: CD
runs-on: ubuntu-latest
environment: production

steps:
- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ success() }}
with:
title: ℹ️ SMS-Backend-CD 시작! ℹ️
title: ℹ️ SMS-Backend-Develop-CD 시작! ℹ️
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
color: 00FF00

- name: Checkout
uses: actions/checkout@v2
- name: Connect deploy key
uses: cloudtype-github-actions/connect@v1
uses: actions/checkout@v3

- name: Set up JDK 11
uses: actions/setup-java@v3
with:
token: ${{ secrets.CLOUDTYPE_TOKEN }}
ghtoken: ${{ secrets.GHP_TOKEN }}
- name: Deploy
uses: cloudtype-github-actions/deploy@v1
java-version: '11'
distribution: 'temurin'
cache: gradle

- name: Setup Gradle
uses: gradle/gradle-build-action@v2

- name: Grant execute permission for gradlew
run: chmod +x gradlew

- name: Create application.yml
env:
IMAGE_TAG: ${{ secrets.DEVELOP_IMAGE_TAG }}
run: |
touch ./sms-infrastructure/src/main/resources/application.yml
echo "${{ secrets.SMS_BACKEND_ENV }}" > ./sms-infrastructure/src/main/resources/application.yml
shell: bash

- name: Run build with Gradle wrapper
run: ./gradlew clean build

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v3
with:
token: ${{ secrets.CLOUDTYPE_TOKEN }}
project: seungwon/movie
stage: main
yaml: >
name: sms-backend

app: java@11

options:
ports: 8080
includes: sms-infrastructure
env:
- name: AWS_ACCESS_KEY
value: ${{ secrets.AWS_ACCESS_KEY }}
- name: AWS_REGION_STATIC
value: ${{ secrets.AWS_REGION_STATIC }}
- name: AWS_SECRET_KEY
value: ${{ secrets.AWS_SECRET_KEY }}
- name: DB_DRIVER
value: ${{ secrets.DB_DRIVER }}
- name: DB_PASSWORD
value: ${{ secrets.DB_PASSWORD }}
- name: DB_URL
value: ${{ secrets.DB_URL }}
- name: DB_USERNAME
value: ${{ secrets.DB_USERNAME }}
- name: GAUTH_CLIENT_ID
value: ${{ secrets.GAUTH_CLIENT_ID }}
- name: GAUTH_CLIENT_SECRET
value: ${{ secrets.GAUTH_CLIENT_SECRET }}
- name: GAUTH_REDIRECT_URI
value: ${{ secrets.GAUTH_REDIRECT_URI }}
- name: JWT_ACCESS_SECRET
value: ${{ secrets.JWT_ACCESS_SECRET }}
- name: JWT_REFRESH_SECRET
value: ${{ secrets.JWT_REFRESH_SECRET }}
- name: REDIS_HOST
value: ${{ secrets.REDIS_HOST }}
- name: REDIS_PORT
value: ${{ secrets.REDIS_PORT }}
- name: S3_BUCKET
value: ${{ secrets.S3_BUCKET }}
- name: S3_LOG_BUCKET
value: ${{ secrets.S3_LOG_BUCKET }}
- name: SECURITY_SECRET_KEY
value: ${{ secrets.SECURITY_SECRET_KEY }}
start: java -jar sms-infrastructure/build/libs/sms-infrastructure-0.0.1-SNAPSHOT.jar
context:
git:
url: git@github.com:${{ github.repository }}.git
ref: ${{ github.ref }}
preset: kotlin
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ap-northeast-2

- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1

- name: Build, tag, and push image to Amazon ECR
id: build-image
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
run: |
docker build -t ${{ secrets.ECR_REPOSITORY }}:${{ secrets.DEVELOP_IMAGE_TAG }} .
docker tag ${{ secrets.ECR_REPOSITORY }}:${{ secrets.DEVELOP_IMAGE_TAG }} ${{ secrets.REPO_URL }}:${{ secrets.DEVELOP_IMAGE_TAG }}
docker push ${{ secrets.REPO_URL }}:${{ secrets.DEVELOP_IMAGE_TAG }}

- name : CodeDeploy Create Deployment
run: |
aws deploy create-deployment \
--application-name codedeploy-develop-server \
--deployment-group-name codedeploy-group \
--deployment-config-name CodeDeployDefault.OneAtATime \
--github-location repository=${{ github.repository }},commitId=${{ github.sha }}

- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ success() }}
with:
title: ✅ SMS-Backend-CD 성공! ✅
title: ✅ SMS-Backend-Develop-CD 성공! ✅
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
status: ${{ job.status }}
image: ${{ secrets.CD_SUCCESS_IMAGE }}
description: 영역전개 CD 성공
color: 00FF00
username: SMS CD 봇
url: https://github.com/GSM-MSG/SMS-BackEnd

- name: SMS-Backend-CD Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ failure() }}
with:
title: ❗️ SMS-Backend-CD 실패! ❗️
title: ❗️ SMS-Backend-Develop-CD 실패! ❗️
webhook: ${{ secrets.SMS_DISCORD_WEBHOOK }}
status: ${{ job.status }}
image: ${{ secrets.CD_FAIL_IMAGE }}
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/sms_backend_master_cd.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
on:
push:
branches: [ "master" ]
workflow_dispatch:

jobs:
CD:
Expand Down Expand Up @@ -57,11 +58,10 @@ jobs:
id: build-image
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
IMAGE_TAG: latest
run: |
docker build -t ${{ secrets.ECR_REPOSITORY }} .
docker tag ${{ secrets.ECR_REPOSITORY }}:$IMAGE_TAG ${{ secrets.REPO_URL }}:$IMAGE_TAG
docker push ${{ secrets.REPO_URL }}:$IMAGE_TAG
docker build -t ${{ secrets.ECR_REPOSITORY }}:${{ secrets.IMAGE_TAG }}.
docker tag ${{ secrets.ECR_REPOSITORY }}:${{ secrets.IMAGE_TAG }} ${{ secrets.REPO_URL }}:${{ secrets.IMAGE_TAG }}
docker push ${{ secrets.REPO_URL }}:${{ secrets.IMAGE_TAG }}

- name : CodeDeploy Create Deployment
run: |
Expand Down
3 changes: 3 additions & 0 deletions appspec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ files:
- source: /docker-compose.yml
destination: /home/ubuntu/
overwrite: yes
- source: /docker-compose-develop.yml
destination: /home/ubuntu/
overwrite: yes

file_exists_behavior: OVERWRITE

Expand Down
36 changes: 36 additions & 0 deletions docker-compose-develop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
version: "3.7"

services:
develop:
image : ${REPO_URL}/${ECR_REPOSITORY}:${IMAGE_TAG}
ports:
- 8080:8080
networks:
- backend
logging:
driver: awslogs
options:
awslogs-group: "sms-develop-server-logs"
awslogs-region: "ap-northeast-2"
awslogs-stream: "backend-start-logs"

redis:
image : redis:alpine
ports:
- 6379:6379
networks:
- backend

nginx:
image : ${NGINX_URL}
ports:
- 80:80
networks:
- backend




networks:
backend:
driver: bridge
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: "3.7"

services:
blue:
image : ${REPO_URL}/${ECR_REPOSITORY}:latest
image : ${REPO_URL}/${ECR_REPOSITORY}:${IMAGE_TAG}
ports:
- 8080:8080
networks:
Expand All @@ -15,7 +15,7 @@ services:
awslogs-stream: "backend-start-logs"

green:
image : ${REPO_URL}/${ECR_REPOSITORY}:latest
image : ${REPO_URL}/${ECR_REPOSITORY}:${IMAGE_TAG}
ports:
- 8090:8080
networks:
Expand Down
2 changes: 1 addition & 1 deletion scripts/pullDocker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin ${REPO_URL}

docker pull ${REPO_URL}/${ECR_REPOSITORY}:latest
docker pull ${REPO_URL}/${ECR_REPOSITORY}:${IMAGE_TAG}
Loading
Loading