Skip to content
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

To Main #235

Merged
merged 321 commits into from
Nov 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
321 commits
Select commit Hold shift + click to select a range
7ff1271
[chore] #171 - 주석삭제
Oodls Aug 21, 2024
11b64e6
[refactor] #171 - User entity의 majorLanguage 컬럼 명시적 null 초기화 대신 값 대입 …
Oodls Aug 21, 2024
34f118a
[chore] #171 - majorlanguage test코드 주석 삭제
Oodls Aug 21, 2024
8001d26
Merge pull request #175 from capstone-kw-jjiggle/feature/#174-removeO…
khyojun Aug 21, 2024
0ee572d
Merge branch 'develop' into feature/#171-friend-suggestion
khyojun Aug 21, 2024
355b397
Merge pull request #173 from capstone-kw-jjiggle/feature/#171-friend-…
khyojun Aug 21, 2024
341bfb9
[feat] #177 - Introduction Entity 추가 및 User에 단방향 매핑 및 기타 코드 반영
Oodls Aug 22, 2024
af1e25e
[feat] #177 - controller에 유저 소개글 불러오기 및 수정 api 개발
Oodls Aug 22, 2024
3145be7
[feat] #177 - 코드 실행 시 Introduction 생성하고, User에 할당하도록 mocker에 코드 추가
Oodls Aug 22, 2024
f9f0270
[feat] #177 - FriendSuggestDto에 정적 팩토리 메서드 추가
Oodls Aug 22, 2024
58dce53
[chore] #177 - 안쓰는 import문 정리
Oodls Aug 22, 2024
2a40fac
[feat] #177 - user소개글 수정 및 불러오기 service에 로직 구현
Oodls Aug 22, 2024
2218257
[feat] #177 - user소개글 수정과 조회에 필요한 dto
Oodls Aug 22, 2024
36b61bd
[feat] #177 - 수정하려는 소개글과 로그인 한 유저가 일치하지 않을 때 발생하는 exception
Oodls Aug 22, 2024
d4ba0fd
[docs] #177 - Swagger annotation 수정
Oodls Aug 22, 2024
1791690
[feat] #177 - IntroductionResponseDto record로 변경
Oodls Aug 24, 2024
79cbda7
[chore] #177 - 기존 dto 파일 삭제 하면서 쓰지 않게 된 주석 삭제
Oodls Aug 24, 2024
b478ad5
[feat] #177 - 새로운 dto파일 레코드 파일로 생성
Oodls Aug 24, 2024
5db34a6
[feat] #177 setter 삭제, of 메서드 추가 repository함수에 적용
Oodls Aug 24, 2024
f1364f1
[chore] #177 - Introduction 기본값 text 수정
Oodls Aug 24, 2024
6efc12d
[fix] #176 - User import문 빠져있던 곳 수정
khyojun Aug 25, 2024
d4ecfd6
[feat] #176 - /schoolRank/userList 여러 페이지일 경우 테스트를 위한 mockData 생성
khyojun Aug 25, 2024
a09cd68
[feat] #176 - 학교 이름 별 학생 리스트에 대해 표현하기 위한 로직 구현
khyojun Aug 25, 2024
452da90
[feat] #176 - 학교별 유저 리스트 응답을 위한 controller 작성
khyojun Aug 25, 2024
0c85d0c
[fix] #176 - 이전에 실수로 넣었던 메서드의 static 키워드 삭제 작업 진행
khyojun Aug 25, 2024
6e01439
[feat] #176 - /regionRank/userList 여러 페이지일 경우 테스트를 위한 mockData 생성
khyojun Aug 25, 2024
0392b96
[feat] #176 - 지역 이름 별 학생 리스트에 대해 표현하기 위한 로직 구현
khyojun Aug 25, 2024
c300479
[fix] #176 - 필요없는 import문 제거 작업 진행
khyojun Aug 25, 2024
e847e0c
[feat] #176 지역별 유저 리스트 응답을 위한 controller 작성
khyojun Aug 25, 2024
9b24a50
Merge pull request #178 from capstone-kw-jjiggle/feature/#177-introdu…
Oodls Aug 25, 2024
02db29e
Merge branch 'develop' into feature/#176-showStudentsByDomain
khyojun Aug 25, 2024
7eb9844
Merge pull request #179 from capstone-kw-jjiggle/feature/#176-showStu…
khyojun Aug 25, 2024
df158a2
[fix] #180 - 새롭게 변경된 url로 요청할 수 있도록 수정
khyojun Sep 14, 2024
09d2028
[fix] #180 - fixSchool,Region 때문에 혼동왔기에 username에 붙이며 식별할 수 있게 수정
khyojun Sep 14, 2024
1ef8c43
[chore] #180 - https url 로 보내야한다고 설명 추가
khyojun Sep 14, 2024
74c2960
[fix] #180 - docker-compose image 가져올 repository 변경
khyojun Sep 14, 2024
3909080
[chore] #180 - 프로젝트 명 수정에 따른 설명 변경 작업 및 url 잘못된 부분 수정
khyojun Sep 14, 2024
611e9b6
[chore] #180 - schema 이름 rankit 으로 수정하기 위한 작업 진행
khyojun Sep 14, 2024
872ff08
Merge pull request #181 from capstone-kw-jjiggle/feature/#180-fixNewD…
khyojun Sep 14, 2024
59a7d48
[feat] #182 - Badge api 구현
Oodls Sep 25, 2024
0497efc
[feat] #182 - badge api 요구사항에 맞게 수정
Oodls Sep 25, 2024
7c6be3b
[feat] #182 - serviceimpl 생성
Oodls Sep 25, 2024
77ec44b
Merge pull request #184 from capstone-kw-jjiggle/feature/#182-badge
khyojun Sep 26, 2024
5c14b2d
[feat] #182 - 에러코드 담기 위한 수정
Oodls Sep 29, 2024
2798379
[fix] #182 - RequestParam어노테이션 설정
Oodls Sep 29, 2024
38bf911
[feat] #182 - 성공한 경우에도 상태코드 넘기도록
Oodls Sep 29, 2024
08dc0e4
Merge pull request #186 from capstone-kw-jjiggle/feature/#182-badge
Oodls Sep 29, 2024
a44c398
[feat] #185 - 레디스를 제거하기 위한 작업들 진행
khyojun Sep 29, 2024
e841705
[fix] #187 - redis 분리하면서 확인했던 버그 관련하여 수정 작업 진행
khyojun Sep 29, 2024
f086abc
[fix] #187 - User라는 키워드가 들어가면 MockData 제외한 유저들을 넣어주는 작업 진행
khyojun Sep 29, 2024
ee593e8
[feat] #185 docker-local.yml 에서도 redis 삭제
khyojun Sep 29, 2024
e304eaa
[feat] 이전에 발견하지 못했던 redis 관련 코드 및 의존성 제거
khyojun Sep 29, 2024
6f084f7
[fix] #185 리뷰때 얘기 나왔던 일관성 맞추기 위한 코드 수정
khyojun Sep 30, 2024
7e98232
Merge pull request #188 from capstone-kw-jjiggle/feat/#185-extractRef…
khyojun Sep 30, 2024
05262cf
[refactor] #192 - refreshToken 생성 메서드 오버로딩, 코드 리팩토링 작업 진행
khyojun Oct 3, 2024
16fd081
[feat] #192 - 주석 제거 및 refreshToken queryParam 에 추가하는 작업 진행
khyojun Oct 3, 2024
38f4742
[feat] #193 - mainPage 등급별 유저 가져올 수 있도록 구현 진행
khyojun Oct 3, 2024
55a370e
[refactor] #193 - mainPageService 메서드 분리 일부 진행, 페이지 사이즈 변경 진행!
khyojun Oct 3, 2024
6848a44
[refactor] #193 - grade는 ui 상 전달 될 필요 없을 거 같아 제거 진행
khyojun Oct 3, 2024
54fedad
[refactor] #190 - pageSize 는 14로 동일하다는 얘기를 듣고 수정작업 진행
khyojun Oct 3, 2024
1437327
[refactor] #190 - mainPage swagger api 관련 설명 수정
khyojun Oct 3, 2024
588cacc
[feat] #195 - grade 관련 upper, underBound 설정하여 진행, Grade 관련 로직도 내부로 옮김.
khyojun Oct 3, 2024
34e81fd
[feat] #195 - userExp 관련 로직 구현 진행
khyojun Oct 3, 2024
5066fce
[fix] #190 - univCert 인증번호 발송 관련 에러 메시지 반환되지 않았던 부분 수정
khyojun Oct 3, 2024
c1ebe89
[feat] #190 - schoolRankPageUserInfoBySchoolException 관련하여 핸들링 처리
khyojun Oct 3, 2024
47094b3
[feat] #190 - authJoin 진행시 인증하지 않고 진행했을 때 authentication null 값 예외 처리 진행
khyojun Oct 3, 2024
466f098
[refactor] #190 - commit 더 이상 사용하지 않아서 해당 관련 코드 제거 작업 진행
khyojun Oct 3, 2024
a47b2dc
[refactor] #190 - userRank 관련 잘못 처리된 예외 school, region 없는 유저의 경우 예외 처리
khyojun Oct 3, 2024
2892adc
[feat] #190 - userRanking 관련 예외 처리 진행 : 랭킹이 0점일 수 없음
khyojun Oct 3, 2024
416c5d1
[feat] #190 - 이전에 추가하지 못했던 예외 처리 진행 및 잘못된 handling된 부분 수정 진행
khyojun Oct 3, 2024
7245bcb
[refactor] #1990 - 애매하게 지었던 네이밍 분명하게 변경 -> refresh or access로 변경
khyojun Oct 3, 2024
fa9a79f
[fix] #190 - 예외 수정 및 특이 사항 관련 처리: 검색어가 있지만 아무 페이지 없을때 페이지가 1이면 성공 아님 실패
khyojun Oct 3, 2024
be18399
[fix] #190 - 예외 수정 및 특이 사항 관련 처리: 검색어가 있지만 아무 페이지 없을때 페이지가 1이면 성공 아님 실패
khyojun Oct 3, 2024
aa885be
[feat] #190 - User가 majorLanguage 없는 경우 관련 예외 처리
khyojun Oct 3, 2024
b4a2eae
[feat] #191 - Guestbook write에서 authentication을 받지 않고 dto로 userid와 co…
Oodls Oct 5, 2024
5583a7f
[feat] #191 - guestbook 관련 테스트 수정
Oodls Oct 5, 2024
4a04ff5
[feat] #191 - guestbook 수정으로 인한 mockdatagenerator 수정
Oodls Oct 5, 2024
4925193
[feat] #191 - jwt 필터 검증과정에서 exception 발견 시 로그로 메세지 출력 하도록
Oodls Oct 5, 2024
2e5a05a
[feat] #191 - notloginedexception message 추가
Oodls Oct 5, 2024
a399c5a
[fix] #191 - 기타 잘못된 매개변수로 다른 exception을 받고 있던 것 수정
Oodls Oct 5, 2024
d0c8d03
[feat] #191 - securityconfig에 로그인 여부 check가 필요한 url 등록 및 api요청 시 검증
Oodls Oct 5, 2024
b7ed2db
Merge pull request #196 from capstone-kw-jjiggle/feat/#190-examineApi…
khyojun Oct 6, 2024
f124de8
conflict fix
Oodls Oct 6, 2024
de0e3a1
[feat] #191 - my/update/introduction 에서 authentication을 받고 있는데 중복적으로 …
Oodls Oct 6, 2024
f86ef91
[fix] #190 - 경험치 계산 과정중 PURPLE 등급일때 났던 오류 해결 : 최종등급은 무조건 100퍼센트라는 기획
khyojun Oct 6, 2024
ca39fd6
[fix] #191 - 효준님 comment 반영 수정사항
Oodls Oct 6, 2024
ffe2f2c
Merge pull request #197 from capstone-kw-jjiggle/feature/#191-test2
Oodls Oct 6, 2024
0578b72
Merge pull request #198 from capstone-kw-jjiggle/feat/#190-examineApi…
khyojun Oct 6, 2024
2011df0
[fix] #199 - userRankController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
8dbe15f
[fix] #199 - authController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
49fc452
[fix] #199 - loginController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
0d2a8a9
[fix] #199 - badgeController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
b016a57
[fix] #199 - guestBookPageController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
fb163fd
[fix] #199 - infoController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
c7d139d
[fix] #199 - mainPageController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
0d05d3e
[fix] #199 - regionRankController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
2490606
[fix] #199 - schoolRankController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
4dee320
[fix] #199 -univController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
592f254
[fix] #199 - myPageController 관련 swagger 설명 수정 진행
khyojun Oct 6, 2024
9b7c4e0
Merge pull request #200 from capstone-kw-jjiggle/feat/#199-swaggerFix
khyojun Oct 6, 2024
80a43ce
Create cicd.yml
Oodls Oct 9, 2024
557d7e8
[refactor] #201 - scheduling 에 필요하지 않았던 로직 및 entity 객체 필요없는 컬럼 삭제의한 변경
khyojun Oct 11, 2024
3e39eb2
[refactor] #201 - mockData 에서도 변경점 수정 및 테스트 데이터 갯수 600개로 줄이는 작업 진행
khyojun Oct 11, 2024
e23b8ad
[feat] #201 - scheduling 비동기를 사용해서 다른 스케쥴에 다른 스케쥴링 사용
khyojun Oct 11, 2024
ff90de2
[feat] #202 - majorLanguage 테이블은 이제 필요없다 판단하여 제거하는 작업 진행
khyojun Oct 13, 2024
c8a13ca
[feat] blue-green 무중단 배포를 위한 스크립트 작성
Oodls Oct 13, 2024
fddcdb4
[feat] #205 - 작업 단계 분리
Oodls Oct 13, 2024
5e9f88d
[fix] #205 - dockerfile 찾지 못하는 이슈 해결
Oodls Oct 13, 2024
0bfab87
[feat] #204 - indexing 을 통해서 조금 더 쿼리 날릴 때 더 빠르게 확인할 수 있도록 진행
khyojun Oct 13, 2024
1b36aad
[fix] #205 - dockerfile 찾지 못하는 이슈 해결2
Oodls Oct 13, 2024
a945200
[fix] #205 - dockerfile 찾지 못하는 이슈 해결3
Oodls Oct 13, 2024
367864e
[fix] #205 - dockerfile 찾지 못하는 이슈 해결4
Oodls Oct 13, 2024
6018a5c
Merge pull request #203 from capstone-kw-jjiggle/feat/#201-schedulingFix
khyojun Oct 13, 2024
07eead7
Merge pull request #206 from capstone-kw-jjiggle/feat/#204-indexingUs…
khyojun Oct 13, 2024
b573239
Update README.md
Oodls Oct 13, 2024
b6542fd
[feat] #207 - 로그인 하지 않은 경우에 대한 친구추천 기능 추가
Oodls Oct 15, 2024
24c943e
[feat] #207 - 로그인 하지 않은 유저도 친구추천 사용할 수 있도록 security config 수정
Oodls Oct 15, 2024
4a83168
[feat] #207 - api/v1/suggest/friend api uri 오타 수정 및 summary 추가
Oodls Oct 15, 2024
ef0a224
[feat] #207 - userService에 getAll 추가
Oodls Oct 15, 2024
8a4ea4d
[feat] #207 - 추천 친구 수 상수 처리
Oodls Oct 15, 2024
09ea248
Merge pull request #208 from capstone-kw-jjiggle/feature/#207-notlogi…
Oodls Oct 15, 2024
4806b27
[fix] #209 - apiIssue관련 정리 네이밍 관련 정리
khyojun Oct 15, 2024
c0a33ea
[feat] #210 - 자기소개에 제목 추가
Oodls Oct 15, 2024
4e505b8
Merge pull request #212 from capstone-kw-jjiggle/feat/#209-apiIssue
khyojun Oct 15, 2024
e5f0d86
Merge pull request #213 from capstone-kw-jjiggle/feature/#210-add-int…
khyojun Oct 15, 2024
b5d5d02
[feat] #211 - myPage 이름변경:이제는 회원만 들어가는것이 아닌 모두가 확인 및 유저페이지의 정보 제공 api 제작
khyojun Oct 15, 2024
9f2c2d5
[refactor] #211 - 기존 UserInfoDto랑 겹치는 부분이 발생하여 responseDto 이름 변경
khyojun Oct 15, 2024
6110797
Merge pull request #214 from capstone-kw-jjiggle/feat/#211-userInfoApi
khyojun Oct 15, 2024
0c1b4a9
[fix] #215 - shedLock 을 이용하여 서버 이중화시 스케쥴링 로직 중복으로 실행되지 않을 수 있도록 구현
khyojun Oct 21, 2024
5f0841e
Merge pull request #216 from capstone-kw-jjiggle/feat/#215-shedLock
khyojun Oct 22, 2024
e8208d4
Create rankit-multiaz-cicd
Oodls Oct 24, 2024
1531815
Update rankit-multiaz-cicd
Oodls Oct 24, 2024
9385934
Rename rankit-multiaz-cicd to rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
56bf170
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
c284168
Update cicd.yml
Oodls Oct 24, 2024
786bc9a
Update cicd.yml
Oodls Oct 24, 2024
2793c20
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
61217bc
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
158ab58
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
8deb410
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
41f0e39
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
fdd786f
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
40238f4
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
4b96a4d
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
c197a3f
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
35e2646
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
f0f5e63
Update rankit-multiaz-cicd.yml
Oodls Oct 24, 2024
e8ab556
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
36d5d4e
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
80219d9
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
7660509
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
c254742
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
0a50141
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
b7f80a2
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
043d8ad
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
90b6f5c
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
fe15e1a
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
8488bca
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
bba1ebe
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
2e5e27a
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
a04c68b
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
f65d504
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
dc5c821
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
fa143b2
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
220062c
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
554cad0
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
7a1a984
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
2b2ac10
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
e56dee5
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
c0f3fd5
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
242039e
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
124d927
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
a9099b0
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
650dbd4
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
d10ddd8
Update rankit-multiaz-cicd.yml
Oodls Oct 26, 2024
2eef9df
[feat] #217 - 비동기 로직 변경작업 진행 -> 동시에 비동기로 진행할 때의 점수 업데이트 반영 안되는 문제
khyojun Oct 28, 2024
2514529
[feat] #217 - update에서 조회시 N+1 문제를 Fetch Join 사용하여 한 번에 쿼리 가져올 수 있도록 처리
khyojun Oct 28, 2024
67f6184
[feat] #217 - update 로직에서 공통으로 제거할 transactional 및 updateScore 로직 리팩토링
khyojun Oct 28, 2024
0aaaac2
[fix] #217 - 주 언어를 가져오지 않아 이 문제 해결 -> 정렬한 후 주 가장 많이 쓰는 언어를 가져오기
khyojun Oct 28, 2024
61b040f
[fix] #217 - login 성공시 redirect 정해진 url 로 바로 갈 수 있도록 수정
khyojun Oct 28, 2024
585af87
[feat] #217 - 예외가 생겼던 닉네임에 대해서 확인하기 위해 MockData 넣어주는 작업 진행
khyojun Oct 28, 2024
3e0bbfe
Merge pull request #218 from capstone-kw-jjiggle/feat/#217-fixUserUpdate
khyojun Oct 29, 2024
a0d3db1
[fix] #219 - ddl-auto 가 update인 경우 중복해서 학교, 지역이 들어가는 문제 해결
khyojun Oct 29, 2024
5072e91
[fix] #219 - firstLogined 를 넣음으로서 최초 가입자 분류를 위한 컬럼 추가!
khyojun Oct 29, 2024
eefebd5
[fix] #219 - left fetch join 으로 변경함으로써 innerJoin 진행하였을 때 outer 방식으로 변경
khyojun Oct 29, 2024
88e07b6
[fix] #219 - school, region 없어도 무사히 진행될 수 있도록 변경
khyojun Oct 29, 2024
3871ce1
[chore] #219 - DS_Store ignore 처리 진행
khyojun Oct 29, 2024
34a70ba
Merge pull request #221 from capstone-kw-jjiggle/feat/#219-fixIsRegis…
khyojun Oct 30, 2024
8e8eae0
[feat] #222 - mock data의 img url 수정
Oodls Nov 3, 2024
d53bc1d
Merge pull request #223 from capstone-kw-jjiggle/feature/#222-react-i…
Oodls Nov 3, 2024
d6c8b43
[fix] #220 - mockData 추가 시 이미지 깨짐을 방지하기 위한 url 변경 및 인코딩 문제로 인한 방명록 변경
khyojun Nov 5, 2024
4d19bb3
[hotfix] #220 - swagger url 이전 배포 주소 -> server.rankit.run 으로 변경
khyojun Nov 5, 2024
1c18867
[hotfix] #220 - createdAt 이 값이 들어가질 않아 현재 시간으로 같이 넣어주는 작업 진행
khyojun Nov 5, 2024
5d63320
[feat] #220 - 실제 이름같이 처리하여 MockData User명 넣고 진행! 그에 따른 로직 변경 진행
khyojun Nov 5, 2024
3e00cd4
[fix] #220 - 중복 제거하고 진행할 수 있도록 변경 진행 (안하는 경우 이미지 채번 엄청 높게 됨)
khyojun Nov 5, 2024
cac340b
Merge pull request #224 from capstone-kw-jjiggle/feat/#220-generateRe…
khyojun Nov 6, 2024
045dde9
[fix] #226 - 의미없는 테스트 코드 삭제
khyojun Nov 6, 2024
3889345
[chore] #226 - resource 파일 추가
khyojun Nov 6, 2024
edce629
[feat] #226 - mail, thymeleaf 용 의존성 추가
khyojun Nov 6, 2024
b775447
[feat] #226 - mailConfig 추가
khyojun Nov 6, 2024
8e5eae1
[feat] #226 - entitiy, repo 학교 인증용 추가
khyojun Nov 6, 2024
d700246
[feat] #226 - 학교 인증을 위한 구현 로직 추가 (이후 개선 작업 진행할 예정))
khyojun Nov 6, 2024
7c58f63
[feat] #226 - mail 설정 파일 환경변수 적용
khyojun Nov 6, 2024
c66eeca
[feat] #226 - prod 환경변수에 mail 관련 설정 추가
khyojun Nov 6, 2024
db2e49b
[fix] #226 - 오타 난 부분 수정 RankIt -> Rankit
khyojun Nov 6, 2024
e166f45
[feat] #226 - successStatus 에 따라 다른 로직 다르게 흐를 수 있도록 수정
khyojun Nov 6, 2024
8b65dd6
[feat] #226 - 메일 전송을 다른 스레드에게 맡기기, 이미 있는 이메일인 경우 update 로 코드 변경 진행
khyojun Nov 6, 2024
237d981
[chore] #226 - 필요없는 import 문 제거
khyojun Nov 6, 2024
248c8ef
[feat] #226 - 10분뒤 인증 코드 자동으로 삭제 될 수 있도록 2분마다 체크하는 로직 실행
khyojun Nov 6, 2024
0a910b6
[refactor] #226 - 성공한 여부를 나타내는 변수도 응답에 추가
khyojun Nov 6, 2024
31464c5
[refactor] #226 - globalException하게 처리하지 못한 예외 처리할 수 있도록 추가
khyojun Nov 6, 2024
922f50f
[feat] #226 - univCert 의존성 삭제
khyojun Nov 6, 2024
1159945
[refactor] #226 - 사용하지 않는 redis depends on 제거
khyojun Nov 6, 2024
957e3b0
Merge pull request #227 from capstone-kw-jjiggle/feat/#226-mailSender
khyojun Nov 7, 2024
839dd69
[refactor] #226 - 추가로 수정됬으면 했던 코드들 리팩토링 - 예외 처리
khyojun Nov 7, 2024
fdfcad7
[feat] #226 - docker-compose 파일 추가 수정 진행
khyojun Nov 7, 2024
ff2639d
[feat] #226 - 인증번호 만료 안내 문구 추가
khyojun Nov 7, 2024
572c19f
Merge pull request #228 from capstone-kw-jjiggle/feat/#226-mailSender
khyojun Nov 8, 2024
21057dd
[hotfix] #229 - 학교, 지역 수정시 점수 반영되고 랭킹 업데이트 구현, 학교 수정시 인증 진행하도록 구현
khyojun Nov 8, 2024
be6259d
Merge pull request #230 from capstone-kw-jjiggle/feat/#229-hotfixModi…
khyojun Nov 8, 2024
ef2e888
[hotfix] #229 - 지역변경 수정
khyojun Nov 9, 2024
f8cb3a0
Merge pull request #231 from capstone-kw-jjiggle/feat/#229-hotfixModi…
khyojun Nov 9, 2024
2cb2a89
[feat] #232 - region Page Size 변경
khyojun Nov 9, 2024
f7abd30
[hotfix] #232 - fe 요청시 근본 String으로 보내면 "" 마저 String으로 인식하는 오류 해결
khyojun Nov 9, 2024
d614d99
Merge pull request #233 from capstone-kw-jjiggle/feat/#232-regionUser…
khyojun Nov 9, 2024
997da8a
[hotfix] - userRank 보여주는 response dto 변경 (fe 요구사항)
khyojun Nov 10, 2024
1b65d59
Merge pull request #234 from capstone-kw-jjiggle/feat/#232-regionUser…
khyojun Nov 10, 2024
45c2db1
Update rankit-multiaz-cicd.yml
Oodls Nov 10, 2024
c264e33
[fix] - 재실행 시 데이터 초기화 되던 문제 해결
Oodls Nov 10, 2024
29c1c5a
[feat] - create 로 스키마 재생성
Oodls Nov 10, 2024
fadbff0
[fix] - 다시 update로 수정 및 data.sql 비활성화
Oodls Nov 10, 2024
5cfe4be
[fix] - 데이터 초기화 해결 과정
Oodls Nov 10, 2024
47853ae
[hotfix] redirect id fix
khyojun Nov 10, 2024
ec88cb0
[fix]
Oodls Nov 10, 2024
3e76cd9
Merge branch 'develop' of github.com:capstone-kw-jjiggle/gitbal-be in…
Oodls Nov 10, 2024
a2fcc91
Update rankit-multiaz-cicd.yml
Oodls Nov 10, 2024
15fdbcc
Update rankit-multiaz-cicd.yml
Oodls Nov 10, 2024
4733907
[fix]
Oodls Nov 10, 2024
19f2134
Merge branch 'develop' of github.com:capstone-kw-jjiggle/gitbal-be in…
Oodls Nov 10, 2024
90cad54
[hotfix] 로그 추가해서 배포환경에서 버그 찾기
khyojun Nov 10, 2024
c968a4b
로깅 확인용도 업뎃
khyojun Nov 10, 2024
febad3e
로깅용 확인 수정
khyojun Nov 10, 2024
9b3f422
로깅 파일 원복
khyojun Nov 10, 2024
48924e5
registrationId 수정
khyojun Nov 10, 2024
ca53f93
[hotfix] randomPickerUser 의 경우 majorLanguage가 없는경우 처리 테스트
khyojun Nov 10, 2024
b8f0919
[hotfix] majorLanguage 없는 경우 처리 - auth 부분 처리
khyojun Nov 10, 2024
c4dca66
[fix] - 학교별 유저 리스트 빈 리스트 보내던 오류 해결
Oodls Nov 10, 2024
a9374a6
Merge branch 'develop' of github.com:capstone-kw-jjiggle/gitbal-be in…
Oodls Nov 10, 2024
fb19c8e
[hotfix] majorLanguage null 일 경우 생기는 오류 관련 해결
khyojun Nov 10, 2024
027dc58
[hotfix] - majorLanguage 관련해서 오류 났던 문제 해결 -> 친구추천 서비스
khyojun Nov 10, 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
68 changes: 68 additions & 0 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: develop branch bluegreen deployment

on:
push:
branches: [ "develop" ]

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- uses: actions/checkout@v4

# 1. JDK 17 설정
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

# 2. Gradle 설정
- name: Setup Gradle
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 # v3.1.0

# 3. Jar 파일 빌드 (테스트 제외)
- name: Build with Gradle Wrapper
run: ./gradlew -x test bootJar

# 4. Docker Buildx 설정
- name: Set up Docker Build
uses: docker/setup-buildx-action@v1

# 5. Docker 로그인
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}

# 6. Docker 이미지 빌드 및 푸시
- name: Build and push Docker image
run: |
docker build -t ${{ secrets.DOCKER_USERNAME }}/rankitrun-be:latest .
docker push ${{ secrets.DOCKER_USERNAME }}/rankitrun-be:latest

deploy:
runs-on: ubuntu-latest
needs: build # build 작업이 완료되어야 실행
permissions:
contents: read

steps:
# 1. EC2 SSH 접속을 위한 키 등록
- name: Set up SSH key
uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.API_RANKIT_PEM }}

# 2. EC2에 blue green 무중단 배포를 위한 스크립트 실행
#- name: Run dPlanner.sh for CICD and switch blue-green container
# run: |
# ssh -o StrictHostKeyChecking=no ec2-user@${{ secrets.EC2_HOST }} << 'EOF'
# cd bluegreen/
# chmod +x dplanner.sh # 만약 실행 권한이 없다면 추가
# ./dplanner.sh # 스크립트 실행
# EOF
230 changes: 230 additions & 0 deletions .github/workflows/rankit-multiaz-cicd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
name: rankit-multiaz-rolling-zerodowntime-cicd

on:
push:
branches: [ "develop" ]

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- uses: actions/checkout@v4

# 1. JDK 17 설정
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'

# 2. Gradle 설정
- name: Setup Gradle
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 # v3.1.0

# 3. Jar 파일 빌드 (테스트 제외)
- name: Build with Gradle Wrapper
run: ./gradlew -x test bootJar

# 4. Docker Buildx 설정
- name: Set up Docker Build
uses: docker/setup-buildx-action@v1

# 5. Docker 로그인
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}

# 6. Docker 이미지 빌드 및 푸시
- name: Build and push Docker image
run: |
docker build -t ${{ secrets.DOCKER_USERNAME }}/rankitrun-be:latest .
docker push ${{ secrets.DOCKER_USERNAME }}/rankitrun-be:latest
deploy:
runs-on: ubuntu-latest
needs: build # build 작업이 완료되어야 실행
permissions:
contents: read

steps:
# 1. AWS CLI 설치
- name: Install AWS CLI
run: |
sudo apt-get update
sudo apt-get install awscli -y

# 2. AWS 자격 증명 설정
- name: Configure AWS credentials
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
aws configure set region ap-northeast-2 # 서울 AWS 리전을 설정

# 3. ALB 연결 끊기 (EC2-A)
- name: Deregister EC2-A from Target Group
run: |
aws elbv2 deregister-targets \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--targets Id=${{ secrets.EC2_A_ID }}
echo "EC2-A has been deregistered from the ALB."

# 4. Bastion 호스트에 접속하여 EC2-A에 docker-compose 실행
- name: Deploy to EC2-A via Bastion Host
env:
BASTION_HOST: ${{ secrets.BASTION_HOST }}
SSH_PRIVATE_KEY: ${{ secrets.API_RANKIT_PEM }}
EC2_A_IP: ${{ secrets.EC2_A_IP }}
run: |
echo "$SSH_PRIVATE_KEY" > private_key.pem
chmod 600 private_key.pem
ssh -o StrictHostKeyChecking=no -i private_key.pem ec2-user@$BASTION_HOST "ssh -o StrictHostKeyChecking=no -i /home/ec2-user/my-key.pem ec2-user@$EC2_A_IP '
if [ \$(docker-compose ps -q app | xargs -r docker inspect -f \"{{.State.Running}}\") == \"true\" ]; then
docker-compose down
fi
sleep 10
docker-compose up -d --pull always

# 향상된 헬스체크: 최대 10번 시도, 5초 간격
MAX_HEALTH_CHECKS=10
HEALTH_CHECK_COUNT=0

while [ \$HEALTH_CHECK_COUNT -lt \$MAX_HEALTH_CHECKS ]; do
if curl -s 127.0.0.1:8080 | grep -q \"health Check Success\"; then
echo \"EC2-A is healthy after \$((HEALTH_CHECK_COUNT + 1)) attempts.\"
exit 0
else
echo \"Health check attempt \$((HEALTH_CHECK_COUNT + 1)) failed. Retrying in 5 seconds...\"
sleep 5
HEALTH_CHECK_COUNT=\$((HEALTH_CHECK_COUNT + 1))
fi

if [ \$HEALTH_CHECK_COUNT -eq \$MAX_HEALTH_CHECKS ]; then
echo \"EC2-A health check failed after \$MAX_HEALTH_CHECKS attempts.\"
exit 1
fi
done
'"
rm private_key.pem

# 5. ALB 연결 복원 (EC2-A)
- name: Register EC2-A back to Target Group
run: |
aws elbv2 register-targets \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--targets Id=${{ secrets.EC2_A_ID }}
echo "EC2-A has been registered back to the ALB."

# 6. ALB 연결 상태 확인 (EC2-A)
- name: Check Health of ALB Connection to EC2-A
run: |
MAX_ATTEMPTS=30
ATTEMPT=0

while [ $ATTEMPT -lt $MAX_ATTEMPTS ]; do
HEALTH_STATUS=$(aws elbv2 describe-target-health \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--query "TargetHealthDescriptions[?Target.Id=='${{ secrets.EC2_A_ID }}'].TargetHealth.State" \
--output text)

if [ "$HEALTH_STATUS" == "healthy" ]; then
echo "EC2-A is healthy in ALB."
break
else
echo "Waiting for EC2-A to become healthy in ALB..."
sleep 10
ATTEMPT=$((ATTEMPT + 1))
fi

if [ $ATTEMPT -eq $MAX_ATTEMPTS ]; then
echo "EC2-A is not healthy in ALB after $MAX_ATTEMPTS attempts. Exiting."
exit 1
fi
done

# 7. ALB 연결 끊기 (EC2-C)
- name: Deregister EC2-C from Target Group
run: |
aws elbv2 deregister-targets \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--targets Id=${{ secrets.EC2_C_ID }}
echo "EC2-C has been deregistered from the ALB."

# 8. Bastion 호스트에 접속하여 EC2-C에 docker-compose 실행
- name: Deploy to EC2-C via Bastion Host
env:
BASTION_HOST: ${{ secrets.BASTION_HOST }}
SSH_PRIVATE_KEY: ${{ secrets.API_RANKIT_PEM }}
EC2_C_IP: ${{ secrets.EC2_C_IP }}
run: |
echo "$SSH_PRIVATE_KEY" > private_key.pem
chmod 600 private_key.pem
ssh -o StrictHostKeyChecking=no -i private_key.pem ec2-user@$BASTION_HOST "ssh -o StrictHostKeyChecking=no -i /home/ec2-user/my-key.pem ec2-user@$EC2_C_IP '
if [ \$(docker-compose ps -q app | xargs -r docker inspect -f \"{{.State.Running}}\") == \"true\" ]; then
docker-compose down
fi
sleep 10
docker-compose up -d --pull always

# 향상된 헬스체크: 최대 10번 시도, 5초 간격
MAX_HEALTH_CHECKS=10
HEALTH_CHECK_COUNT=0

while [ \$HEALTH_CHECK_COUNT -lt \$MAX_HEALTH_CHECKS ]; do
if curl -s 127.0.0.1:8080 | grep -q \"health Check Success\"; then
echo \"EC2-C is healthy after \$((HEALTH_CHECK_COUNT + 1)) attempts.\"
exit 0
else
echo \"Health check attempt \$((HEALTH_CHECK_COUNT + 1)) failed. Retrying in 5 seconds...\"
sleep 5
HEALTH_CHECK_COUNT=\$((HEALTH_CHECK_COUNT + 1))
fi

if [ \$HEALTH_CHECK_COUNT -eq \$MAX_HEALTH_CHECKS ]; then
echo \"EC2-C health check failed after \$MAX_HEALTH_CHECKS attempts.\"
exit 1
fi
done
'"
rm private_key.pem

# 9. ALB 연결 복원 (EC2-C)
- name: Register EC2-C back to Target Group
run: |
aws elbv2 register-targets \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--targets Id=${{ secrets.EC2_C_ID }}
echo "EC2-C has been registered back to the ALB."

# 10. ALB 연결 상태 확인 (EC2-C)
- name: Check Health of ALB Connection to EC2-C
run: |
MAX_ATTEMPTS=30
ATTEMPT=0

while [ $ATTEMPT -lt $MAX_ATTEMPTS ]; do
HEALTH_STATUS=$(aws elbv2 describe-target-health \
--target-group-arn ${{ secrets.TARGET_GROUP_ARN }} \
--query "TargetHealthDescriptions[?Target.Id=='${{ secrets.EC2_C_ID }}'].TargetHealth.State" \
--output text)

if [ "$HEALTH_STATUS" == "healthy" ]; then
echo "EC2-C is healthy in ALB."
break
else
echo "Waiting for EC2-C to become healthy in ALB..."
sleep 10
ATTEMPT=$((ATTEMPT + 1))
fi

if [ $ATTEMPT -eq $MAX_ATTEMPTS ]; then
echo "EC2-C is not healthy in ALB after $MAX_ATTEMPTS attempts. Exiting."
exit 1
fi
done
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
.env
.env.prod

.DS_Store

HELP.md
.gradle
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
- 한 서비스에 너무 많은 클래스가 있는 구조가 더 혼란스럽다고 판단

![img.png](img/domainPackage.png)

.



Expand Down
7 changes: 5 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,10 @@ dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-data-redis:'
implementation 'net.javacrumbs.shedlock:shedlock-spring:5.16.0'
implementation 'net.javacrumbs.shedlock:shedlock-provider-jdbc-template:5.16.0'
implementation 'org.springframework.boot:spring-boot-starter-mail'
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'

implementation 'io.jsonwebtoken:jjwt-api:0.11.2'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.11.2'
Expand All @@ -46,7 +49,7 @@ dependencies {
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
implementation 'com.github.in-seo:univcert:master-SNAPSHOT'
testImplementation 'com.h2database:h2'

}

Expand Down
7 changes: 1 addition & 6 deletions docker-compose-local.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,10 @@ services:
db:
image: mysql:8.0
environment:
- MYSQL_DATABASE=gitbal
- MYSQL_DATABASE=rankit
- MYSQL_ROOT_USER=${MYSQL_USERNAME}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD}
ports:
- "3306:3306"

redis:
image: redis:6.2
ports:
- "6379:6379"

Loading
Loading