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

[BE] 완료된 코드 프로덕션 서버로 배포 #496

Merged
merged 1,184 commits into from
Aug 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1184 commits
Select commit Hold shift + click to select a range
4646e47
test(codezap): 테스트 환경에서 데이터베이스 분리
HoeSeong123 Aug 7, 2024
b3020b5
fix(context): duplicate key Warning 해결
Jaymyong66 Aug 8, 2024
aa63a61
fix(routes): AuthGuard, GuestGuard에 useEffect 추가
Jaymyong66 Aug 8, 2024
45b6f2e
Merge pull request #342 from Jaymyong66/feat/user_id
vi-wolhwa Aug 8, 2024
655d989
Merge pull request #346 from HoeSeong123/refactor/test_with_fake
HoeSeong123 Aug 8, 2024
50d6496
fix(api): 템플릿 조회 요청에서 중복 파라미터 제거
Jaymyong66 Aug 8, 2024
c0e08a6
fix(authentication): 로그인 실패시 리다이렉트 에러 해결
Jaymyong66 Aug 8, 2024
3b44472
fix(service): 카테고리 전체 조회시 id 오름차순으로 정렬하여 응답하도록 변경
HoeSeong123 Aug 8, 2024
ee2467d
Merge pull request #350 from HoeSeong123/fix/category_sort
HoeSeong123 Aug 8, 2024
f8c9eda
fix(service): 카테고리 전체 조회시 id 오름차순으로 정렬하여 응답하도록 변경
HoeSeong123 Aug 8, 2024
14e12b0
refactor(context): 불필요한 주석 제거
Jaymyong66 Aug 8, 2024
22adabc
refactor(Header): 구경가기 탭 제거
Jaymyong66 Aug 8, 2024
1449f5b
feat(MyTemplatesPage): 내 템플릿 페이지에서 username 표시
Jaymyong66 Aug 8, 2024
1dce66c
fix(response): 템플릿 반환 값에 생성 시간 포함하도록 변경
kyum-q Aug 8, 2024
0ac5d6a
Merge pull request #353 from kyum-q/fix/add_createdAt
zeus6768 Aug 8, 2024
be8d5ee
refactor(category): jpa 쿼리 메서드를 사용하여 정렬하도록 변경
HoeSeong123 Aug 8, 2024
2b6c02d
refactor(src): 컴포넌트명 변경 (CategoryMenu > CategoryFilterMenu)
vi-wolhwa Aug 8, 2024
380f37c
refactor(api): SORTING_OPTIONS - 정렬순 옵션명 변경
Jaymyong66 Aug 8, 2024
726bd95
refactor(Header): 헤더 로고 변경
Jaymyong66 Aug 8, 2024
82c1266
design(authentication): 로그인 실패 알림 토스트 색상 변경(faliAlert)
Jaymyong66 Aug 8, 2024
9255cbf
fix(category): 첫 카테고리의 초기 id 변경
Jaymyong66 Aug 8, 2024
fb8336c
refactor(newTemplate): 새 템플릿 아이콘 해상도 변경
Jaymyong66 Aug 8, 2024
2070674
refactor(components): light 모드의 primary 색상 적용
Jaymyong66 Aug 8, 2024
1c90477
refactor(Button): Primary 색상 반영
Jaymyong66 Aug 8, 2024
b310b09
refactor(api): templates의 정렬 옵션을 생성 날짜순 -> 수정 날짜순으로 변경
Jaymyong66 Aug 8, 2024
6e56262
Merge pull request #359 from Jaymyong66/feat/user_id
Jaymyong66 Aug 8, 2024
3300435
Merge pull request #351 from HoeSeong123/fix/sorting_categories
jminkkk Aug 8, 2024
84ec5ed
feat(template): 사용자별 태그 목록 조회 기능 구현
zangsu Aug 8, 2024
ee821c6
docs: 사용자별 태그 목록 조회 기능 문서화
zangsu Aug 8, 2024
bcc4273
refactor(logger): 응답 요청 로깅에서 /actuator/prometheus 일 경우 제외
jminkkk Aug 8, 2024
d37022d
Merge pull request #364 from jminkkk/chore/remove_actuator_log
jminkkk Aug 8, 2024
7a00bbd
Update README.md
HoeSeong123 Aug 8, 2024
dcbae45
feat(src): 태그목록 요청 로직 구현
vi-wolhwa Aug 8, 2024
ef762b3
feat(src): 'TagFilterMenu' 컴포넌트 구현 및 '내 템플릿' 페이지에서 태그 필터링 구현
vi-wolhwa Aug 8, 2024
25cb7ba
Merge branch 'dev/fe' of https://github.com/woowacourse-teams/2024-co…
vi-wolhwa Aug 8, 2024
a5ac6b3
fix(template): 템플릿 태그 검색 시 모든 태그가 포함된 템플릿만 검색되도록 수정
kyum-q Aug 8, 2024
25b902f
Merge pull request #368 from kyum-q/fix/tags_and
HoeSeong123 Aug 8, 2024
5f4c687
refactor(workflows): 아티팩터 다운로드 폴더 삭제 및 생성
kyum-q Aug 8, 2024
674337e
Merge pull request #369 from woowacourse-teams/fix/cd_folder_remove
Jaymyong66 Aug 8, 2024
19c759d
Merge pull request #365 from woowacourse-teams/HoeSeong123-patch-1
Jaymyong66 Aug 8, 2024
0c79641
fix(workflows): sentry auth token 오타 수정
kyum-q Aug 8, 2024
44101fc
Merge pull request #367 from vi-wolhwa/feat/my_template_tag_filtering
Jaymyong66 Aug 8, 2024
ddfa4a1
Merge pull request #370 from woowacourse-teams/fix/cd_folder_remove
jminkkk Aug 8, 2024
51271bc
refactor(contexts): console.log 제거
Jaymyong66 Aug 8, 2024
87a77d7
Merge pull request #371 from woowacourse-teams/dev/fe
Jaymyong66 Aug 8, 2024
3fa0ba2
Merge branch 'develop' into feat/findTags
kyum-q Aug 8, 2024
b66ef92
fix(repository): 사용하지 않는 메서드 삭제
kyum-q Aug 8, 2024
ee36b23
Merge pull request #361 from zangsu/feat/findTags
Hain-tain Aug 8, 2024
ab692a5
feat(src): NotFoundPage 생성
Hain-tain Aug 9, 2024
c4ce5f0
refactor(contexts): 공백제거
Hain-tain Aug 9, 2024
0274d8b
docs: 사용자별 태그 목록 조회 기능 문서화
zangsu Aug 9, 2024
6b44fa7
refactor(api): customFetch에 CustomError 타입 적용
Jaymyong66 Aug 9, 2024
35f6216
feat(routes): react router의 errorElement 적용
Jaymyong66 Aug 9, 2024
fbcc50f
refactor(static): index 경로 접속시 띄울 404 화면 추가
jminkkk Aug 9, 2024
1955ba6
refactor(routes): , 오타 수정
Jaymyong66 Aug 9, 2024
bfe1843
feat(Layout): ErrorBoundary 적용(Sentry)
Jaymyong66 Aug 9, 2024
2711caf
Merge pull request #375 from jminkkk/refactor/index_html
zeus6768 Aug 9, 2024
1d0790a
feat(components): Modal
Hain-tain Aug 9, 2024
908f833
feat(utils): useModal
Hain-tain Aug 9, 2024
a9f7f89
feat(TemplatePage): delete 모달 추가
Hain-tain Aug 9, 2024
336a315
Merge pull request #373 from Hain-tain/feat/not_found_page
Jaymyong66 Aug 9, 2024
16166ea
Merge pull request #378 from Jaymyong66/refactor/errorBoundary
vi-wolhwa Aug 9, 2024
19e6fdc
Merge pull request #374 from zangsu/refactor/add_auth
zangsu Aug 9, 2024
3e11317
feat(routes): 로그인 유지 조회(localStoreage)
Jaymyong66 Aug 9, 2024
4755690
Merge pull request #379 from Hain-tain/feat/modal
Jaymyong66 Aug 9, 2024
c7a4a17
Merge pull request #380 from Jaymyong66/refactor/errorBoundary
Hain-tain Aug 9, 2024
dedfdf9
refactor(NotFoundPage): 컴포넌트 명 변경
Jaymyong66 Aug 9, 2024
08f4de0
refactor(routes): ErrorBoundary로 NotFound Page 적용
Jaymyong66 Aug 9, 2024
f697055
Merge pull request #381 from Jaymyong66/refactor/NotFoundPage
Jaymyong66 Aug 9, 2024
8ba15b1
Merge pull request #382 from woowacourse-teams/dev/fe
HoeSeong123 Aug 9, 2024
56d8307
feat(src): LandingPage
Hain-tain Aug 9, 2024
90b148b
refactor(src): LandingPage page의 index export 추가
Hain-tain Aug 9, 2024
131f073
Merge branch 'dev/fe' of https://github.com/woowacourse-teams/2024-co…
Hain-tain Aug 9, 2024
b475347
Merge pull request #383 from Hain-tain/feat/LandingPage
vi-wolhwa Aug 9, 2024
cf78696
Merge pull request #386 from woowacourse-teams/dev/fe
zeus6768 Aug 9, 2024
3bd3b39
refactor(workflows): cd 작업이 dev/fe 에서 실행되도록 변경
kyum-q Aug 12, 2024
a1a26b2
refactor(workflows): cd 작업이 dev/be 에서 실행되도록 변경
kyum-q Aug 12, 2024
c972438
fix(workflows): cd 작업이 devlop에서 실행안되고 main에서 실행되도록 변경
kyum-q Aug 12, 2024
2344740
refactor(workflows): cd 작업이 devlop에서 실행안되고 main에서 실행되도록 변경
kyum-q Aug 12, 2024
418f0a0
refactor(workflows): main과 dev/fe에서만 실행되도록 변경
kyum-q Aug 12, 2024
395979a
refactor(workflows): self-hosted 로 변경
kyum-q Aug 12, 2024
a3b4254
refactor(workflows): self-hosted 로 변경
kyum-q Aug 12, 2024
0b65322
fix(codezap): 컴파일 오류 수정
HoeSeong123 Aug 12, 2024
b0fa29e
docs: 스웨거에서 memberDto 안보이도록 설정
HoeSeong123 Aug 11, 2024
3e339c6
test(codezap): 멤버 권한 관련 테스트 코드 추가
HoeSeong123 Aug 12, 2024
ac65158
Merge pull request #407 from HoeSeong123/fix/merge_conflicts
HoeSeong123 Aug 12, 2024
adfdf50
refactor(controller): member controller에 @ApiErrorResponse 적용
jminkkk Aug 12, 2024
6db516c
fix(exception): ResponseEntityExceptionHandler를 상속
jminkkk Aug 12, 2024
96cd34d
docs: template 생성 API 문서 용어 통일 및 에러 상황 추가
kyum-q Aug 12, 2024
1d80a94
docs: template 검색 API 문서 용어 통일 및 에러 상황 추가
kyum-q Aug 12, 2024
a1acf1d
refactor(error): 메서드 chaining을 사용하도록 변경
jminkkk Aug 12, 2024
9cf3631
refactor(error): ApiErrorResponse가 중복정의된 경우 컨테이너 클래스를 사용
jminkkk Aug 12, 2024
726bc89
refactor(error): ApiErrorResponse가 중복정의될 경우 각 description을 구분
jminkkk Aug 12, 2024
52342ad
docs: template 단건 조회 API 문서 용어 통일 및 에러 상황 추가
kyum-q Aug 12, 2024
e29fc58
docs(member): 회원 정보 조회 api 문서 작성
jminkkk Aug 12, 2024
4d58955
docs: template 수정 API 문서 용어 통일 및 에러 상황 추가
kyum-q Aug 12, 2024
bea900f
docs(member): 회원 정보 수정 api 문서 작성
jminkkk Aug 12, 2024
77f795a
docs: template 삭제 API 문서 용어 통일 및 에러 상황 추가
kyum-q Aug 12, 2024
80d07ed
docs(response): 회원 정보 수정 응답에서 password -> email 변경
jminkkk Aug 12, 2024
647f1c5
refactor(exception): methodArgumentNotValid override
jminkkk Aug 13, 2024
9ccd9e5
chore: flyway 의존성 추가
jminkkk Aug 13, 2024
1e8fe77
chore(migration): migrate 첫번째 버전 파일 작성
jminkkk Aug 13, 2024
945acf3
refactor(controller): 코드 정렬 및 마지막 @ErrorCase 선언에도 쉼표 추가
jminkkk Aug 13, 2024
77610d3
refactor(controller): apiResponse 성공케이스 content 명시 제거
kyum-q Aug 13, 2024
d9d838f
Merge pull request #412 from kyum-q/refactor/cd-work-branch
zeus6768 Aug 13, 2024
b0c1612
Merge pull request #415 from jminkkk/refactor/apply_api_error_response
jminkkk Aug 13, 2024
ef515d9
Merge branch 'dev/be' into fix/extends_spring_exception_handler
zangsu Aug 13, 2024
df67426
Merge pull request #417 from jminkkk/fix/extends_spring_exception_han…
zangsu Aug 13, 2024
0a6d686
refactor(error): stream의 forEach 제거 및 ApiErrorResponses의 반환 타입을 List로
jminkkk Aug 13, 2024
c82c778
test: 실패 케이스 확인 지 assertThatThrownBy 사용
kyum-q Aug 13, 2024
33c5863
docs: 예외 메시지 변경
kyum-q Aug 13, 2024
833ba1a
feat(service): 파라미터로 받은 membeerID와 인증 정보 확인
kyum-q Aug 13, 2024
d7baa53
feat(service): 반환 값에 썸네일 스니펫 추가
kyum-q Aug 13, 2024
65e35c0
test: 조회 테스트 수정
kyum-q Aug 13, 2024
29957e9
refactor(controller): 불필요한 줄바꿈 제거
jminkkk Aug 13, 2024
0d4e4c2
docs(response): schema 작성
jminkkk Aug 13, 2024
fad1af1
Merge branch 'dev/be' into docs/member_info
jminkkk Aug 13, 2024
8acd235
feat(service): tagId가 0개 일 경우 예외 처리
kyum-q Aug 13, 2024
3067634
test: 템플릿 검색 실패에 관한 테스트 케이스 추가
kyum-q Aug 13, 2024
7f61642
docs: 삭제 API 문서 업데이트
kyum-q Aug 13, 2024
7ead411
feat(sesrvice): 템플릿 ID가 중복된 경우 중복 확인 후 400 에러 발생
kyum-q Aug 13, 2024
95b63b4
docs: 템플릿 API 문서화 업데이트
kyum-q Aug 13, 2024
2bfb377
refactor(repository): 예외처리가 일관된 경우 default 메서드 구현
kyum-q Aug 13, 2024
4df70a3
test: 템플릿 API 에러 케이스 추가 및 수정
kyum-q Aug 13, 2024
65059b4
docs: 문서 업데이트
kyum-q Aug 14, 2024
495e836
docs: 템플릿 생성 문서 업데이트
kyum-q Aug 14, 2024
e3f5d55
Merge pull request #419 from jminkkk/docs/member_info
kyum-q Aug 14, 2024
9d56da9
docs: 템플릿 생성 문서 업데이트
kyum-q Aug 14, 2024
65f24db
refactor(error): stream forEach -> for 문
jminkkk Aug 14, 2024
f063555
Merge branch 'dev/be' into fix/multi_api_error_response
kyum-q Aug 14, 2024
2a71e50
Merge pull request #418 from jminkkk/fix/multi_api_error_response
kyum-q Aug 14, 2024
f5cd1e4
test: 템플릿 사용하지 않은 테스트 코드 삭제
kyum-q Aug 14, 2024
ae7d484
test: 템플릿 사용하지 않은 테스트 코드 삭제
kyum-q Aug 14, 2024
09acf1a
docs: 문서 업데이트
kyum-q Aug 14, 2024
5ac0c42
docs: 문서 수정
kyum-q Aug 14, 2024
de05333
docs: 문서 수정
kyum-q Aug 14, 2024
4b5239a
refactor(template): 코드 컨벤션 정리
kyum-q Aug 14, 2024
ad7cb42
feat(template): 태그 조회 시 인증 정보에 포함된 멤버 ID와 파라미터로 받은 멤버 ID가 다를 경우 예외 처리
kyum-q Aug 14, 2024
3c584e5
Merge branch 'dev/be' into docs/delete-templates
zangsu Aug 14, 2024
207a054
Merge pull request #425 from kyum-q/docs/delete-templates
zangsu Aug 14, 2024
a898f23
docs: 태그 API 문서화
kyum-q Aug 14, 2024
73c7255
refactor: EqualsAndHashCode는 상속한 클래스에는 권장하지 않으므로 제거 후 작성
kyum-q Aug 14, 2024
b053e93
refactor(dto): 패키지 컨벤션에 맞춰 파일 이동
jminkkk Aug 14, 2024
e5e8543
refactor(member): BasicAuthentication -> AuthenticationPrinciple
jminkkk Aug 14, 2024
55548cc
Merge branch 'dev/be' into chore/flyway_setting
zangsu Aug 14, 2024
8c4ccb9
refactor(repository): 사용하지 않는 메서드 삭제 및 메서드 위치 재설정
kyum-q Aug 14, 2024
a64d88c
refactor(repository): default 메서드를 통해 예외 처리
kyum-q Aug 14, 2024
452305d
refactor(template): 코드 컨벤션 정리
kyum-q Aug 14, 2024
d0141c6
refactor(global): 생성, 수정 시간 초단위도 저장하도록 변경
kyum-q Aug 14, 2024
879ea64
docs: 태그 response 문서 추가 및 시간 예시 초 포함하도록 변경
kyum-q Aug 14, 2024
77069cd
test: 불필요한 변수화 제거
kyum-q Aug 14, 2024
d635ca9
Merge branch 'dev/be' into feat/remove-tempates
kyum-q Aug 14, 2024
bbf2c00
refactor(template): snippet을 sourceCode로 명칭 변경
kyum-q Aug 14, 2024
6901f71
refactor(auth): Basic Auth를 위한 Decoder 객체로 분리
jminkkk Aug 15, 2024
9a82929
refacto(maneger
jminkkk Aug 15, 2024
bcf1eda
fix(manager): 쿠키 만료되지 않는 에러 해결
jminkkk Aug 15, 2024
bc800f5
refactor(fixture): 테스트를 위한 회원 fixture 생성
jminkkk Aug 15, 2024
913410f
refactor(provider): 인증 값을 제공하는 객체 추상화 및 Basic Auth 구현체 생성
jminkkk Aug 15, 2024
3e86b2e
refactor(basic): basic auth 패키지 명확하게 변경
jminkkk Aug 15, 2024
f94e92f
refactor(member): auth, member controller 패키지 분리
jminkkk Aug 15, 2024
287a4f1
refactor(member): auth, member service layer 패키지 분리
jminkkk Aug 15, 2024
180ae46
feat(repository): findByEmail -> fetchByEmail
jminkkk Aug 15, 2024
649e47a
refactor(auth): auth 관련 configuration 패키지 auth 아래로 이동
jminkkk Aug 15, 2024
17fcc11
refactor(global): MockMvc 기반 controller layer 테스트를 위한 base 클래스 생성
jminkkk Aug 15, 2024
93131cf
refactor(controller): Category 테스트 개선
jminkkk Aug 15, 2024
2c25eed
refactor(service): 회원 조회 기능 구현
jminkkk Aug 15, 2024
f9aece4
refactor(controller): 회원 controller layer 테스트 추가
jminkkk Aug 15, 2024
b90c4b3
refactor(domain): 회원 비밀번호 테스트 추가
jminkkk Aug 15, 2024
9c8d2cf
refactor(controller): Template controller layer 임시 주석 처리
jminkkk Aug 15, 2024
7ad11c3
refactor: 회원 이메일 및 유저 네임 제거, 아이디로 변
jminkkk Aug 15, 2024
3ab6fb0
docs: 스웨거 최신화
jminkkk Aug 15, 2024
e297abb
docs: 없는 카테고리를 삭제하려는 경우 404 예외처리
jminkkk Aug 15, 2024
4d9e986
refactor: username -> loginId
jminkkk Aug 15, 2024
a6fea74
refactor(category): 카테고리 권한 없음 403
jminkkk Aug 16, 2024
923e506
refactor(domain): 썸네일 소스 코드 5줄로 변경 및 테스트 추가
kyum-q Aug 16, 2024
a256974
refactor(repository): 메서드 용도에 맞게 사용을 위해 exsitsById 사용
kyum-q Aug 16, 2024
f43dc8b
refactor(domain): @EqualsAndHashCode로 변경
kyum-q Aug 16, 2024
c5f133c
refactor(service): 메서드 네이밍 변경
kyum-q Aug 16, 2024
08cf731
refactor(basic): lombok 을 사용하여 각 생성자 변경
jminkkk Aug 16, 2024
81e7b2e
refactor(repository): 예외 문구 변경
kyum-q Aug 16, 2024
52fa56f
refactor(auth): LoginAndCredentialDto 생성자와 동일한 정팩메 제거
jminkkk Aug 16, 2024
97655e3
refactor(request): 비밀번호 형식 정규표현식 변경 및 아이디 문서화 예시 변경
jminkkk Aug 16, 2024
8f9f830
refactor(service): 메서드 분리
kyum-q Aug 16, 2024
2e6966d
refactor(workflows): 작업 실행 환경 변경
kyum-q Aug 16, 2024
d100c8d
refactor(auth): class @DisplayName 사용하여 변경
jminkkk Aug 16, 2024
abf8f3d
refactor(workflows): 서버와 연관 없는 action은 ubuntu-latest 에서 사용하도록 변경
kyum-q Aug 16, 2024
295c7d8
Merge pull request #448 from kyum-q/refactor/change-cd
jminkkk Aug 16, 2024
55fe7f9
refactor: memberDto 파라미터 순서 변경
jminkkk Aug 16, 2024
3c10c75
fix(repository): default 메서드 MemberJpaRepository 로 이동
jminkkk Aug 16, 2024
623a2aa
docs(controller): SpringDocAuthController를 implements 하도록 변경
jminkkk Aug 16, 2024
8ca3427
test(service): 멤버 서비스 테스트 추가
kyum-q Aug 16, 2024
ece0530
db 초기화 파일에서 더미데이터 제거
jminkkk Aug 16, 2024
e0d227c
fix(workflows): JDK 설정 추가
kyum-q Aug 16, 2024
13e1b65
refactor(service): 아이디, 비밀번호로부터 검증된 회원을 반환하는 메서드명 명확하게 변경
jminkkk Aug 16, 2024
4e0748e
refactor(service): 변수 명 변경
kyum-q Aug 16, 2024
7ccd39b
refactor: 불필요한 import, 공백 제거
jminkkk Aug 16, 2024
4f68743
test: fixture 사용
kyum-q Aug 16, 2024
6bf03ae
refactor(request): 안쓰는 dto 제거
jminkkk Aug 16, 2024
076eea4
Merge pull request #450 from kyum-q/refactor/change-cd
zeus6768 Aug 16, 2024
dec0eb5
refactor(member): fake repository에 fetchByLoginId 구현 추가
jminkkk Aug 16, 2024
41ef3cb
feat(member): loginId -> name 으로 변경
jminkkk Aug 16, 2024
c0247fb
refactor(request): 비밀번호 형식 검증 정규 표현식 수정
jminkkk Aug 16, 2024
e19413b
refactor(basic): @RequiredArgsConstructor로 변경
jminkkk Aug 16, 2024
47e6c12
Merge pull request #444 from jminkkk/refactor/auth
zeus6768 Aug 16, 2024
0e11029
Merge branch 'dev/be' into feat/remove-tempates
jminkkk Aug 16, 2024
08bc949
fix(test): 테스트 코드 충돌 해결
kyum-q Aug 16, 2024
c23ada7
Merge pull request #437 from kyum-q/feat/remove-tempates
zeus6768 Aug 16, 2024
e35dc2b
fix(domain): EqualsAndHashCode of 값 변경
kyum-q Aug 16, 2024
f9f9f5c
fix(controller): 회원 아이디 중복 검증 엔드포인트 수정
jminkkk Aug 16, 2024
6a72dda
Merge pull request #456 from jminkkk/fix/check_name_endpoint
kyum-q Aug 16, 2024
fd7e049
fix(domain): @EqualsAndHashCode 수동 재정의로 변경
kyum-q Aug 16, 2024
b72489e
tst: 충돌한 테스트 코드 해결
kyum-q Aug 16, 2024
5701b69
refactor(configuration): 로그인 확인 인터셉터 config 에서 제거
jminkkk Aug 16, 2024
72ff03e
docs(swagger): 쿠키 테스트 버튼 활성화
jminkkk Aug 16, 2024
67fcd32
refactor(backend): 코드 컨벤션 정리
kyum-q Aug 16, 2024
cfc9be4
Merge pull request #458 from jminkkk/refactor/remove_authorization_in…
Jaymyong66 Aug 16, 2024
2f2ed1c
refactor(backend): 코드 컨벤션 정리
kyum-q Aug 16, 2024
85df09c
feat(migration): 현재 스키마와 일치하게 ddl 업데이트
jminkkk Aug 17, 2024
4866310
refactor: flyway plugin 제거
jminkkk Aug 17, 2024
dbc31aa
feat(resources): 운영 환경 로그 설정
zeus6768 Aug 18, 2024
dcc6b5c
refactor(backend): 코드 컨벤션 정리
kyum-q Aug 18, 2024
f692221
fix(workflows): 백엔드 CD 정상화
HoeSeong123 Aug 18, 2024
83e217d
fix(workflows): dev/be, main 브랜치별 cd 전략 분리
HoeSeong123 Aug 18, 2024
4fe8edd
refactor(workflows): EOL 추가
HoeSeong123 Aug 18, 2024
b3328b5
refactor(domain): 카테고리 equals 재정의
kyum-q Aug 18, 2024
d8222e9
fix: slack noti를 변수 secret에서 가져오도록 변경
jminkkk Aug 19, 2024
78b45fe
Merge pull request #459 from kyum-q/refactor/test
zangsu Aug 19, 2024
40cbc64
refactor(category): 카테고리 생성 시 생성 정보 반환
kyum-q Aug 18, 2024
af131f4
Merge pull request #468 from zeus6768/feat/log_prod
zeus6768 Aug 19, 2024
df82955
Merge pull request #472 from HoeSeong123/fix/cd_prod
zeus6768 Aug 19, 2024
818ddc0
refactor(category): 코드 컨벤션 수정
kyum-q Aug 19, 2024
81b5527
refactor(category): 코드 컨벤션 수정
kyum-q Aug 19, 2024
98cf9a0
Merge pull request #485 from kyum-q/refacotor/category-response
jminkkk Aug 19, 2024
afd0612
refactor(workflows): runs-on 라벨 사용으로 변경
HoeSeong123 Aug 19, 2024
ee8bcbd
Merge pull request #488 from HoeSeong123/fix/cd_prod
HoeSeong123 Aug 19, 2024
973f12a
refactor(workflows): runs-on 라벨 사용으로 변경
HoeSeong123 Aug 19, 2024
49b01ea
Merge pull request #489 from HoeSeong123/fix/cd_prod
HoeSeong123 Aug 19, 2024
7b4bd99
chore(flyway): migration 작업 시 repair를 먼저 수행하고 실행
jminkkk Aug 19, 2024
117cc79
chore: ci db를 mysql로 변경
jminkkk Aug 20, 2024
119ffd6
fix(workflows): cd-prod deploy 로직 수정
HoeSeong123 Aug 20, 2024
67f3c38
chore: clean up step 제거
jminkkk Aug 20, 2024
5dff6a4
Merge pull request #498 from HoeSeong123/fix/cd_prod
HoeSeong123 Aug 20, 2024
a49d45d
Merge pull request #497 from jminkkk/chore/ci_mysql
zangsu Aug 20, 2024
f1de258
Merge pull request #474 from jminkkk/fix/slack_noti
kyum-q Aug 20, 2024
7a1652d
Merge pull request #430 from jminkkk/chore/flyway_setting
zangsu Aug 20, 2024
5a1bd21
chore: h2 의존성 제거
jminkkk Aug 20, 2024
ffa420c
fix: db yml 가져오는 step 추가
jminkkk Aug 20, 2024
31167df
Merge pull request #502 from jminkkk/fix/ci_mysql
HoeSeong123 Aug 20, 2024
2b69643
fix: working-directory 상대 경로 변경
jminkkk Aug 20, 2024
bd1b8df
Merge pull request #503 from jminkkk/fix/ci_mysql
HoeSeong123 Aug 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 10 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## ⚡️ 관련 이슈
close #이슈번호

## 📍주요 변경 사항
### 1. 주요 변경 사항은 이러이러합니다.
### - 이렇게도 쓸 수 있어요

## 🎸기타
### 1. 이런걸 더 고려해봐야 할 것 같습니다.
### - 이런 것도 해야해요.
55 changes: 55 additions & 0 deletions .github/workflows/backend_cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Backend CD

on:
push:
branches:
- dev/be

jobs:
build:
runs-on: [self-hosted, develop, spring]
steps:
- name: 브랜치명을 통해 개발 환경 알아내기
run: |
cd ${{ secrets.SCRIPT_DIRECTORY }}
bash find-env-by-branch.sh

- name: 체크아웃
uses: actions/checkout@v4

- name: gradle 캐싱
uses: gradle/actions/setup-gradle@v3

- name: bootJar로 jar 파일 생성
run: |
./gradlew bootJar
mv build/libs/*.jar ${{ secrets.WORK_DIRECTORY }}/${{ env.ENVIRONMENT }}
working-directory: ./backend

- name: 클린업
if: always()
run: rm -rf ../2024-code-zap/*

deploy:
needs: build
runs-on: [self-hosted, develop, spring]
steps:
- name: 브랜치명을 통해 개발 환경 알아내기
run: |
cd ${{ secrets.SCRIPT_DIRECTORY }}
bash find-env-by-branch.sh

- name: 실행 프로세스 확인
run: |
cd ${{ secrets.SCRIPT_DIRECTORY }}
bash check-old-pids.sh

- name: 배포 스크립트 실행
run: |
cd ${{ secrets.SCRIPT_DIRECTORY }}
RUNNER_TRACKING_ID="" && bash start.sh ${{ env.ENVIRONMENT }}

- name: 실행 프로세스 확인으로 배포 검증
run: |
cd ${{ secrets.SCRIPT_DIRECTORY }}
bash verify-deploy.sh
35 changes: 35 additions & 0 deletions .github/workflows/backend_cd_prod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Backend CD

on:
push:
branches:
- main

jobs:
build:
runs-on: [self-hosted, production, spring]
steps:
- name: 체크아웃
uses: actions/checkout@v4

- name: gradle 캐싱
uses: gradle/actions/setup-gradle@v3

- name: bootJar로 jar 파일 생성
run: |
./gradlew bootJar
mv build/libs/*.jar ${{ secrets.JAR_DIRECTORY }}
working-directory: ./backend

- name: 클린업
if: always()
run: rm -rf ../2024-code-zap/*

deploy:
needs: build
runs-on: [self-hosted, production, spring]
steps:
- name: 배포 스크립트 실행
run: |
cd ${{ secrets.ZAP_DIRECTORY }}
docker compose restart
39 changes: 39 additions & 0 deletions .github/workflows/backend_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Backend CI

on:
pull_request:
branches:
- dev/be
- main

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: 체크아웃
uses: actions/checkout@v4

- name: MySQL 시작
uses: mirromutth/[email protected]
with:
host port: ${{ secrets.MYSQL_HOST_PORT }}
container port: ${{ secrets.MYSQL_CONTAINER_PORT }}
mysql version: ${{ secrets.MYSQL_VERSION }}
mysql database: ${{ secrets.MYSQL_DATABASE }}
mysql root password: ${{ secrets.MYSQL_PASSWORD }}

- name: DB 설정 파일 가져오기
working-directory: ./backend/src/main/resources
run: echo "${{ secrets.APPLICATION_DB_YAML }}" > application-db.yml

- name: JDK 17 설정
uses: actions/setup-java@v4
with:
java-version: 17
distribution: temurin

- name: 테스트 코드 실행
run: ./gradlew test
working-directory: ./backend

48 changes: 48 additions & 0 deletions .github/workflows/ci_cd_fail_notification.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Notify on Workflow Failure

on:
workflow_run:
workflows: ["Backend CI", "Backend CD", "Frontend CD", "Frontend CI"]
types:
- completed

jobs:
notify:
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
runs-on: ubuntu-latest
steps:
- name: 변수 추출
run: |
SLACK_WEBHOOK_URL=${{ secrets.SLACK_CICD_FAIL_WEBHOOK_URL }}
SLACK_IDS=${{ secrets.SLACK_IDS }}
echo "SLACK_WEBHOOK_URL=$SLACK_WEBHOOK_URL" >> $GITHUB_ENV
echo "SLACK_IDS=$SLACK_IDS" >> $GITHUB_ENV

- name: CI 또는 CD 실패 시 Slack 알람 보내기
run: |
WORKFLOW_NAME="${{ github.event.workflow_run.name }}"
WORKFLOW_URL="${{ github.event.workflow_run.html_url }}"
ASSIGNEE="${{ github.event.workflow_run.actor.login }}"
mentions=""

parse_slack_ids() {
echo "$SLACK_IDS" | jq -r 'to_entries | map("\(.key):\(.value)") | .[]'
}

slack_id=$(parse_slack_ids | grep "^$ASSIGNEE:" | cut -d':' -f2)

if [ -n "$slack_id" ]; then
MENTION="<@$slack_id>"
else
MENTION="$ASSIGNEE"
fi

if [ ! -z "$MENTION" ]; then
message="$MENTION 님, 실행된 $WORKFLOW_NAME 워크플로가 실패했습니다. <$WORKFLOW_URL|확인하러 가기>."
curl -X POST -H 'Content-type: application/json' \
--data "{\"text\":\"$message\"}" \
"$SLACK_WEBHOOK_URL"
echo "Sent message: $message"
else
echo "No MENTIONER to notify"
fi
67 changes: 67 additions & 0 deletions .github/workflows/frontend_cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Frontend CD

on:
push:
branches:
- main
- dev/fe

jobs:
build:
runs-on: self-hosted
env:
frontend-directory: ./frontend
steps:
- uses: actions/checkout@v4

- name: Node.js 설정
uses: actions/setup-node@v4
with:
node-version: 20

- name: .env.production 파일 생성
run: |
echo "REACT_APP_API_URL=${{ secrets.REACT_APP_API_URL }}" > ${{ env.frontend-directory }}/.env.production
echo "REACT_APP_BASE_URL=${{ secrets.REACT_APP_BASE_URL }}" >> ${{ env.frontend-directory }}/.env.production
echo "SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }}" >> ${{ env.frontend-directory }}/.env.production
echo "SENTRY_DSN=${{ secrets.SENTRY_DSN }}" >> ${{ env.frontend-directory }}/.env.production
echo "SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }}" >> ${{ env.frontend-directory }}/.env.sentry-build-plugin

- name: 파일 접근 권한 변경
run: |
chmod 644 ${{ env.frontend-directory }}/.env.production
chmod 644 ${{ env.frontend-directory }}/.env.sentry-build-plugin

- name: 의존성 설치
run: npm install
working-directory: ${{ env.frontend-directory }}

- name: 빌드 실행
run: npm run build
working-directory: ${{ env.frontend-directory }}

- name: Artifact 업로드
uses: actions/upload-artifact@v4
with:
name: code-zap-front
path: ${{ env.frontend-directory }}/dist/**

deploy:
needs: build
runs-on: self-hosted
steps:
- name: Artifact 폴더 삭제 및 생성
run: |
rm -rf ${{ secrets.FRONT_DIRECTORY }}
mkdir ${{ secrets.FRONT_DIRECTORY }}

- name: Artifact 다운로드
uses: actions/download-artifact@v4
with:
name: code-zap-front
path: ${{ secrets.FRONT_DIRECTORY }}

- name: 파일 S3로 이동
run: |
aws s3 cp --recursive ${{ secrets.FRONT_DIRECTORY }} s3://techcourse-project-2024/code-zap

32 changes: 32 additions & 0 deletions .github/workflows/frontend_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Frontend CI

on:
pull_request:
branches:
- main
- dev/fe

jobs:
build-with-test:
runs-on: ubuntu-latest
env:
frontend-directory: ./frontend
steps:
- uses: actions/checkout@v4

- name: Node.js 설정
uses: actions/setup-node@v4
with:
node-version: 20

- name: 의존성 설치
run: npm install
working-directory: ${{ env.frontend-directory }}

- name: 타입 체크 실행
run: npm run tsc
working-directory: ${{ env.frontend-directory }}

- name: 테스트 실행
run: npm run test
working-directory: ${{ env.frontend-directory }}
51 changes: 51 additions & 0 deletions .github/workflows/pr_notification.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: PR Slack Notification
on:
pull_request:
types: [opened, reopened]
jobs:
notify_reviewers:
runs-on: ubuntu-latest
steps:
- name: 변수 추출
run: |
SLACK_WEBHOOK_URL=${{ secrets.SLACK_PR_CREATE_WEBHOOK_URL }}
SLACK_IDS=${{ secrets.SLACK_IDS }}
echo "SLACK_WEBHOOK_URL=$SLACK_WEBHOOK_URL" >> $GITHUB_ENV
echo "SLACK_IDS=$SLACK_IDS" >> $GITHUB_ENV

- name: PR 생성 시 reviewer들에게 Slack 알람 보내기
run: |
PR_TITLE="${{ github.event.pull_request.title }}"
PR_URL="${{ github.event.pull_request.html_url }}"
REVIEWERS='${{ toJson(github.event.pull_request.requested_reviewers.*.login) }}'
echo "REVIEWERS: $REVIEWERS"

parse_slack_ids() {
echo "$SLACK_IDS" | jq -r 'to_entries | map("\(.key):\(.value)") | .[]'
}

reviewers=$(echo "$REVIEWERS" | jq -r '.[]')
mentions=""

for reviewer in $reviewers; do
slack_id=$(parse_slack_ids | grep "^$reviewer:" | cut -d':' -f2)

if [ -n "$slack_id" ]; then
mentions="$mentions <@$slack_id>"
else
mentions="$mentions $reviewer"
fi
done

echo "Mentions: $mentions"

if [ ! -z "$mentions" ]; then
message="$mentions 님, 새로운 PR이 생성되었습니다: <$PR_URL|$PR_TITLE>"
curl -X POST -H 'Content-type: application/json' \
--data "{\"text\":\"$message\"}" \
"$SLACK_WEBHOOK_URL"
echo "Sent message: $message"
else
echo "No reviewers to notify"
fi

Loading
Loading