Skip to content

release-1.0 #91

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 250 commits into from
Sep 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
250 commits
Select commit Hold shift + click to select a range
069dac2
Fix UserEntity to add columns
mkSpace Feb 17, 2024
9c39845
Merge pull request #2 from withaeng/feature/user-entity
mkSpace Feb 17, 2024
c77ae70
Fix to configure project settings
mkSpace Feb 17, 2024
5d517f7
Implement JasyptConfig
mkSpace Feb 17, 2024
6c90727
Configure application settings
mkSpace Feb 17, 2024
f376468
Rename UserEntity to User
mkSpace Feb 17, 2024
c11b4d3
Fix JasyptConfigTest disabled
mkSpace Feb 17, 2024
7a23d5d
Add base repositories of entities
mkSpace Feb 17, 2024
f260408
Merge pull request #3 from withaeng/feature/config-application
mkSpace Feb 17, 2024
cf3d087
Add WithaengExceptions
mkSpace Feb 17, 2024
35872d7
Merge pull request #4 from withaeng/feature/exceptions
mkSpace Feb 17, 2024
b1ea42a
Implement UserService
mkSpace Mar 1, 2024
8977324
Fix User columns
mkSpace Mar 23, 2024
6918405
Implement ControllerExceptionAdvice
mkSpace Mar 23, 2024
c255f00
Implement ApiResponse
mkSpace Mar 23, 2024
f603eb1
Implement providing jwt after sigining in
mkSpace Mar 23, 2024
55b6631
Merge pull request #6 from withaeng/feature/base-auth
mkSpace Mar 23, 2024
377ae12
Add extenral module
mkSpace Apr 4, 2024
686a8ee
Add ThymeleafTemplate Bean
mkSpace Apr 5, 2024
1f96735
Implement MailSender by using AWS SES
mkSpace Apr 5, 2024
9b9e4da
Merge pull request #7 from withaeng/feature/ses-config
mkSpace Apr 5, 2024
b93b01e
Implement JwtAgent
mkSpace Apr 8, 2024
ff4991c
Implement SecurityConfig
mkSpace Apr 8, 2024
b1cb159
Merge pull request #8 from withaeng/feature/security-config-for-jwt
mkSpace Apr 8, 2024
029fb3c
Fix aws secret access keys
mkSpace May 3, 2024
ec365ac
Merge pull request #9 from withaeng/feature/aws-secret-setting
mkSpace May 3, 2024
4017c0a
Add ValidatingEmailEntity
mkSpace May 7, 2024
0836e36
Fix to send email for SES logic
mkSpace May 7, 2024
6839257
Configuration about scheduler
mkSpace May 7, 2024
289e26c
Implement sending email scheduler
mkSpace May 7, 2024
6530c88
Fix wrong logic from security config
mkSpace May 8, 2024
3e167de
Fix wrong jwt secret key
mkSpace May 8, 2024
df6c577
Fix domain logic of User
mkSpace May 8, 2024
8ea3dd6
Implement Sign-up api
mkSpace May 8, 2024
9a6d834
Merge pull request #10 from withaeng/feature/sign-up
mkSpace May 8, 2024
e9dd57d
Fix application profile configurations
mkSpace May 8, 2024
7151072
Implement Sign-in api
mkSpace May 8, 2024
69852df
Merge pull request #11 from withaeng/feature/sign-in
mkSpace May 8, 2024
0d6ac95
Implement validate-email api
mkSpace May 8, 2024
ae53b1f
Merge pull request #12 from withaeng/feature/validate-email
mkSpace May 8, 2024
d196f4a
Add swagger dependency
mkSpace May 8, 2024
bae26fe
Write swagger descriptions about auth api
mkSpace May 8, 2024
73b0488
Merge pull request #13 from withaeng/feature/swagger
mkSpace May 8, 2024
eb1c876
Prevent accesing resources from unauthorized user
mkSpace May 8, 2024
3802a7b
Merge pull request #15 from withaeng/feature/additional-auth-config
mkSpace May 8, 2024
faced6b
Implement UserInfoArgumentResolver
mkSpace May 9, 2024
554d328
Merge pull request #16 from withaeng/feature/user-argument-resolver
mkSpace May 9, 2024
e55058f
Configure body writer data type converter
mkSpace May 9, 2024
c1731fd
Merge pull request #17 from withaeng/feature/object-mapper
mkSpace May 9, 2024
b778d32
1차 개발건 커밋
collenkim Mar 20, 2024
d4b6771
동행 등록 및 단건 조회 기능 개발 완료
collenkim Mar 21, 2024
402655c
Transaction 처리 및 동행 게시글 좋아요, 조회수 기능 추가
collenkim Mar 22, 2024
a7021c9
동행 게시글 tag 추가
collenkim Mar 23, 2024
e0516e5
동행 게시글 조회수 감소 기능 추가 및 예외 처리 핸들링 추가
collenkim Mar 23, 2024
2c0c4af
댓글, 댓글 좋아요 API 개발 완료
DevSpirits Apr 1, 2024
3b21748
동행 등록, 단건 조회, 수정 API 개발 완료
DevSpirits Apr 1, 2024
282aa07
querydsl 설정 완료
DevSpirits Apr 4, 2024
c02c398
querydsl config 설정
DevSpirits Apr 4, 2024
15b07c2
목록 조회 기능 수정
DevSpirits Apr 5, 2024
2f03a4a
1차안 개발 완료
collenkim Apr 5, 2024
43bbdf1
1차안 개발 완료
collenkim Apr 6, 2024
fce671d
querydsl 생성자 추가
collenkim Apr 6, 2024
944c89c
querydsl 생성자 추가
collenkim Apr 6, 2024
f8d14ec
목록 조회 기능 수정
DevSpirits Apr 9, 2024
52699e6
동행 게시글 좋아요 기능 수정
DevSpirits Apr 11, 2024
af49df7
localdate -> localdatetime으로 변경
DevSpirits Apr 12, 2024
303fd42
게시글 댓글 API 수정
DevSpirits Apr 12, 2024
8ca1371
게시글 댓글 좋아요 기능 개발 완료
collenkim Apr 12, 2024
5b62b77
주석
collenkim Apr 12, 2024
fe164ad
paging 처리 완료
collenkim Apr 12, 2024
f30ba7b
댓글 정렬 기능 수정
DevSpirits Apr 17, 2024
7836f65
동행 목적지 하드 코딩 적용
collenkim May 6, 2024
4a0fcf0
Refactor package architectures
mkSpace May 8, 2024
226f616
Reformat codes
mkSpace May 8, 2024
24a5c5a
Fix broken codes
mkSpace May 8, 2024
49228e9
Remove unnecessary exceptions
mkSpace May 8, 2024
d50654d
Cleanup codes
mkSpace May 8, 2024
45df699
Remove unnecessary codes
mkSpace May 9, 2024
b829006
Refactor destination
mkSpace May 9, 2024
77d7e88
Implement Tag entity
mkSpace May 9, 2024
b9f5c17
Fix member properties of Accompany entity
mkSpace May 9, 2024
f7827de
Rename wrong class name
mkSpace May 9, 2024
77a61e0
Implement Accompany API
mkSpace May 9, 2024
9c076bf
Implement like accompany api
mkSpace May 13, 2024
aef0a78
Remove unnecessary codes about AccompanyReply
mkSpace May 14, 2024
ba8e78b
Implement reply API
mkSpace May 14, 2024
253104c
Implement like accompany reply API
mkSpace May 14, 2024
ebc3145
Remove unnecessary codes
mkSpace May 14, 2024
0595bf6
Write swagger descriptions
mkSpace May 14, 2024
c305cbb
Fix config of security
mkSpace May 14, 2024
dbba6cb
Fix tagIds to nullable in AccompanyService
mkSpace May 14, 2024
f29d10a
Merge pull request #14 from withaeng/feature/accompany-api
mkSpace May 14, 2024
0c54993
Implemen test api
mkSpace May 14, 2024
e8a0d36
Merge pull request #18 from withaeng/feature/test-api
mkSpace May 14, 2024
170cb18
Add application-domain-dev.yml
mkSpace May 14, 2024
d064f4f
Fix default spring profile
mkSpace May 14, 2024
a2ddca9
Merge pull request #19 from withaeng/feature/rds
mkSpace May 14, 2024
ec16fdc
Fix default jpa hibernate ddl-auto option
mkSpace May 14, 2024
98177dd
Add user columns
mkSpace May 28, 2024
270bce9
Implement searching accompany replies with paging API
mkSpace May 30, 2024
686b60a
Merge pull request #20 from withaeng/feature/accompany-reply-paging-api
mkSpace May 30, 2024
6a498a2
Fix user columns' converters
mkSpace Jun 13, 2024
4a33298
Add custom module of Jackson for adding user column's enum class into…
mkSpace Jun 13, 2024
22cff05
Implement adding user details into User domain service
mkSpace Jun 13, 2024
d644802
Implement adding user details api
mkSpace Jun 13, 2024
0659dff
Merge pull request #21 from withaeng/feature/user-add-details
mkSpace Jun 13, 2024
263fd25
Fix validating email template's style
mkSpace Jun 13, 2024
627c42d
Fix sending email for validating user logic
mkSpace Jun 13, 2024
b564e89
Merge pull request #22 from withaeng/feature/email-validating-template
mkSpace Jun 13, 2024
e86a8ab
Implement changing password api
mkSpace Jun 14, 2024
7b67692
Merge pull request #23 from withaeng/feature/change-password
mkSpace Jun 14, 2024
5b8f50c
Implement deleting outdated validating emails scheduler
mkSpace Jun 14, 2024
7de8343
Merge pull request #24 from withaeng/feature/delete-validating-email-…
mkSpace Jun 14, 2024
9294ea0
Fix email templates by dividing email types
mkSpace Jun 14, 2024
6ea4e68
Merge pull request #25 from withaeng/feature/email-template
mkSpace Jun 14, 2024
c9543cc
fix: 비밀번호 재설정 html
ssj5037 Jun 14, 2024
f3cd4e3
feat: 같이행 logo png image 추가
ssj5037 Jun 14, 2024
2195360
fix: 이메일 인증 html
ssj5037 Jun 14, 2024
f679f7b
fix: 비밀번호 재설정 title 변경
ssj5037 Jun 14, 2024
05bb1f2
Fix email tamplate logo image
mkSpace Jun 14, 2024
5acfc37
Merge pull request #26 from withaeng/feature/email-validation-html
mkSpace Jun 14, 2024
574af05
Add prefer travel themes
mkSpace Jun 21, 2024
cf7cd5a
Merge pull request #27 from withaeng/feature/add-prefer-travel-themes
mkSpace Jun 21, 2024
2064ed5
Add github workflow for ci on pull requests
mkSpace Jun 21, 2024
b8ae2ae
Add github workflow for delivering application on push develop branch
mkSpace Jun 21, 2024
2ba4b14
Merge pull request #28 from withaeng/feature/github-flows
mkSpace Jun 21, 2024
d1baaf9
Implement resending email API
mkSpace Jul 16, 2024
8f6e7e8
Merge pull request #29 from withaeng/feature/resend-email
mkSpace Jul 16, 2024
4c28783
Generate temporary nickname when creating user
mkSpace Aug 2, 2024
02afa1a
Merge pull request #30 from withaeng/feature/auto-generate-nickname
mkSpace Aug 8, 2024
2c89a16
Fix returning accompany reply response fields
mkSpace Aug 2, 2024
0e1d973
Merge pull request #31 from withaeng/feature/fix-accompany-reply
mkSpace Aug 12, 2024
43c8aa2
Feature: 동행 대댓글 수정 API 구현
yoonseon12 Aug 7, 2024
c0603a0
Refactor: #32 리뷰 사항 반영
yoonseon12 Aug 13, 2024
bdbb377
Merge pull request #32 from withaeng/feature/sub-reply-update
yoonseon12 Aug 13, 2024
9ccbc00
Docs: Create pull_request_template.md
yoonseon12 Aug 13, 2024
0ff3c20
Feature: 동행 대댓글 삭제 API 구현
yoonseon12 Aug 13, 2024
e6a65ed
Chore: 동행 엔티티 update 메서드명 변경
yoonseon12 Aug 13, 2024
1bf24f8
Feature: 동행 엔티티 status 필드 non-nullable 조건 추가
yoonseon12 Aug 13, 2024
92c5cbe
Merge pull request #33 from withaeng/feature/sub-reply-delete
yoonseon12 Aug 14, 2024
902a095
Chore: 동행 엔티티 @Comment 추가
yoonseon12 Aug 20, 2024
aa272c2
Feature: 동행 등록, 상세조회 '동행 연령' 필드 추가
yoonseon12 Aug 21, 2024
15bb2ae
Merge pull request #34 from withaeng/feature/accompany-add-fleid-acco…
yoonseon12 Aug 21, 2024
0275c7d
Feature: 동행 등록, 상세조회 '동행 선호 성별' 필드 추가
yoonseon12 Aug 21, 2024
5ee0da3
Fix: 동행 수정 누락 컬럼 추가
yoonseon12 Aug 21, 2024
301e39a
Merge pull request #35 from withaeng/feature/accompany-add-fleid-User…
yoonseon12 Aug 21, 2024
c143128
Feature: 동행 댓글 조회 status 응답 항목 추가
yoonseon12 Aug 25, 2024
3a744ad
Refactor: 동행 댓글 조회 및 페이징 리팩토링
yoonseon12 Aug 25, 2024
4d39c2a
Refactor: 동행 댓글 생성 validate 분리
yoonseon12 Aug 26, 2024
40ccf62
Fix: 페이징 maxSize 추가
yoonseon12 Aug 26, 2024
d742673
Fix: 동행 수정 항목 변경
yoonseon12 Aug 26, 2024
9491aca
Refactor: 동행 상세 리팩토링
yoonseon12 Aug 26, 2024
329aa2e
Fix: 동행 상세 유저 DTO명, 경로 수정
yoonseon12 Aug 26, 2024
932c096
Merge pull request #36 from withaeng/feature/add-delete-status-to-rep…
yoonseon12 Aug 26, 2024
a8b5a77
Merge branch 'develop' into feature/accompany-info
yoonseon12 Aug 26, 2024
aed52d8
Feature: 동행 상세 조회수 증가 구현
yoonseon12 Aug 26, 2024
f2742c2
Fix: 동행 수정 항목 변경
yoonseon12 Aug 27, 2024
d901903
Merge pull request #38 from withaeng/feature/accompany-info
yoonseon12 Aug 28, 2024
30aa144
Chore: update artifact and group names
yoonseon12 Aug 30, 2024
33e2b95
Merge pull request #39 from withaeng/Chore/update-artifact-and-group-…
yoonseon12 Aug 30, 2024
5fa1531
feat: 유저 엔티티 필드 및 관련 dto 수정
nilgil Sep 10, 2024
c8444ae
feat: 유저 프로필 put api 추가
nilgil Sep 10, 2024
ab22660
feat: 유저 프로필, 선호 여행 스타일 조회 api 추가
nilgil Sep 10, 2024
d812ae5
Merge pull request #42 from withaeng/feature/user-profile
nilgil Sep 10, 2024
780cf11
fix: Swagger ui 접근 재허용
nilgil Sep 10, 2024
cfd6957
Merge pull request #43 from withaeng/feature/user-profile
nilgil Sep 10, 2024
0ef3665
fix: auth api 접근 허용
nilgil Sep 10, 2024
304e1a9
Merge pull request #44 from withaeng/feature/user-profile
nilgil Sep 10, 2024
200cd13
Fix: Event 제거
yoonseon12 Sep 13, 2024
68f4729
chore: 환경 분리 및 환경변수 정리
nilgil Sep 14, 2024
fce444e
Fix: permitAllGet 설정
yoonseon12 Sep 14, 2024
b4340a9
chore: 배포시 docker & github environments secret 사용
nilgil Sep 14, 2024
69219b9
Merge pull request #46 from withaeng/Fix/security-config-permit-all-get
yoonseon12 Sep 14, 2024
0bf5709
Fix: UserInfoArgumentResolver AnonymousAuthenticationToken 설정
yoonseon12 Sep 14, 2024
e93e7d5
Feature: 동행 신청 api 구현
yoonseon12 Sep 14, 2024
14e37d8
Merge pull request #45 from withaeng/feature/setup-environment
nilgil Sep 14, 2024
0546076
fix: 인증메일 redirect 실패 수정
nilgil Sep 14, 2024
cd1e77e
Merge pull request #57 from withaeng/feature/auth-redirect
nilgil Sep 14, 2024
d59e06c
feat: 이메일 20초마다 보내도록 수정
nilgil Sep 14, 2024
d7db85c
Merge pull request #58 from withaeng/feature/email-send-period
nilgil Sep 14, 2024
9a141a3
fix: docker-compose.yml withaeng_host 환경변수 추가
nilgil Sep 14, 2024
eed533d
Merge pull request #59 from withaeng/fix/modify-docker-compose
nilgil Sep 14, 2024
18bac92
fix: docker compose up add option --build
nilgil Sep 14, 2024
34a8a83
Merge pull request #62 from withaeng/fix/docker-build-option
nilgil Sep 14, 2024
ca0fe84
fix: redirect url email-type-path 수정
nilgil Sep 14, 2024
16c94da
Merge pull request #63 from withaeng/fix/email-type-path
nilgil Sep 14, 2024
bff714a
chore: 시큐리티 필요한 설정만 정리
nilgil Sep 14, 2024
03b4b82
Merge pull request #64 from withaeng/chore/clean-security-config
nilgil Sep 14, 2024
13fd4ad
Merge pull request #65 from withaeng/feature/accompany-join-requests
yoonseon12 Sep 15, 2024
f409018
fix: 개발 기간동안 운영서버 swagger 활성화
nilgil Sep 15, 2024
052874c
Merge pull request #67 from withaeng/fix/enable-swagger-on-prod
nilgil Sep 15, 2024
8794e2e
fix: 태그를 엔티티가 아닌 String 컬렉션으로 수정
nilgil Sep 15, 2024
a0cf677
Merge pull request #66 from withaeng/fix/tag-not-entity
nilgil Sep 15, 2024
69cf2bf
chore: ci/cd 스탭 통일성있게 수정
nilgil Sep 15, 2024
d71d3d6
Merge pull request #68 from withaeng/chore/modify-ci-cd-action
nilgil Sep 15, 2024
33761e2
Feature: 동행 승인 api 구현
yoonseon12 Sep 15, 2024
5c16d9c
Merge branch 'develop' of https://github.com/withaeng/withaeng-backen…
yoonseon12 Sep 15, 2024
aca18d1
Merge pull request #69 from withaeng/feature/accompany-join-requests-…
yoonseon12 Sep 15, 2024
c98b418
feat: accompany 필터링 검색 구현
nilgil Sep 16, 2024
79638de
chore: dto 한 클래스로 모으기
nilgil Sep 16, 2024
3709285
chore: PreferGender Accompany 패키지로 이동
nilgil Sep 16, 2024
3410d52
fix: PreferGender enumurated 어노테이션 추가
nilgil Sep 16, 2024
5b6b9ad
Merge remote-tracking branch 'origin/develop' into feature/accompany-…
nilgil Sep 16, 2024
36232f3
Merge pull request #70 from withaeng/feature/accompany-search
nilgil Sep 16, 2024
ce107da
fix: 동행 검색시 모집중인 동행만 검색되도록 수정, 최신순 정렬 적용
nilgil Sep 16, 2024
57cdd8b
Merge pull request #71 from withaeng/feature/accompany-search
nilgil Sep 16, 2024
f93af64
fix: pageRequest 파라미터 swagger에서 보이도록 수정
nilgil Sep 16, 2024
47a901d
Merge pull request #72 from withaeng/feature/accompany-search
nilgil Sep 16, 2024
31c19d5
fix: status로 필터링가능, 최신정렬,인기순(조회순)정렬추가
nilgil Sep 16, 2024
b22c34e
Merge pull request #73 from withaeng/feature/accompany-search
nilgil Sep 16, 2024
5ecc81e
chore: aws 설정값들 환경변수로 받도록 변경
nilgil Sep 16, 2024
e31b32c
chore: jasypt 의존성 제거
nilgil Sep 16, 2024
27adf28
Merge pull request #74 from withaeng/chore/aws-environments
nilgil Sep 16, 2024
221f4a3
Feature: 동행 거부 api 구현
yoonseon12 Sep 19, 2024
1687e29
Merge pull request #75 from withaeng/feature/accompany-join-requests-…
yoonseon12 Sep 19, 2024
d1c746d
Feature: 동행 취소 api 구현
yoonseon12 Sep 19, 2024
faba1e5
Merge pull request #76 from withaeng/feature/accompany-join-requests-…
yoonseon12 Sep 19, 2024
fb79f6c
Refactor: update method name
yoonseon12 Sep 19, 2024
9e33cd0
Merge pull request #77 from withaeng/Refactor/accompany
yoonseon12 Sep 19, 2024
9294cd4
Feature: 호스트 동행 상세 API 구현
yoonseon12 Sep 19, 2024
709329f
Merge pull request #78 from withaeng/feature/accompany-detail-for-host
yoonseon12 Sep 19, 2024
b4793e1
Feature: 동행 등록 memberCount 필드 유효성 검사 추가
yoonseon12 Sep 19, 2024
b4e9937
Fix: 동행 승인 isBelowMemberLimit 본인 포함하도록 유효성 검사 수정
yoonseon12 Sep 19, 2024
2651c9b
Merge pull request #79 from withaeng/feature/add-validate-create-acco…
yoonseon12 Sep 19, 2024
037b6fd
refactor: templated email send 리팩토링
nilgil Sep 21, 2024
5c004fd
Merge pull request #80 from withaeng/refactor/templated-email
nilgil Sep 21, 2024
0c9d407
fix: factory 추가
nilgil Sep 21, 2024
d72d7fe
Merge pull request #81 from withaeng/refactor/templated-email
nilgil Sep 21, 2024
436958d
chore: add ApiResponse<Unit> for APIs with no response data
yoonseon12 Sep 21, 2024
232b709
chore: add @Parameter to PathVariable
yoonseon12 Sep 21, 2024
69b56a8
Merge pull request #82 from withaeng/Chore/add-apiresponse-to-accompa…
yoonseon12 Sep 21, 2024
07f1d06
feat: preSignedUrl 생성 구현
nilgil Sep 21, 2024
aca043e
feat: 이미지 업로드 필요 api 수정
nilgil Sep 21, 2024
61cb019
Merge pull request #83 from withaeng/feat/aws-s3-presignedurl
nilgil Sep 21, 2024
aeb7bbb
refactor: 프로필 업데이트 api 분리
nilgil Sep 23, 2024
6093a15
Merge pull request #84 from withaeng/refactor/separate-profile-update
nilgil Sep 23, 2024
7e302de
feat: 모든 대륙, 나라, 도시 조회
nilgil Sep 23, 2024
b1973c6
Merge pull request #85 from withaeng/feat/all-destinations
nilgil Sep 23, 2024
b4cb535
refactor: 불필요한 레이어 제거
nilgil Sep 23, 2024
7cfc019
Merge pull request #86 from withaeng/feat/all-destinations
nilgil Sep 23, 2024
7d643f8
fix: 응답 구조 트리 형태로 수정
nilgil Sep 23, 2024
ffa1675
Merge pull request #87 from withaeng/feat/all-destinations
nilgil Sep 23, 2024
eadb171
fix: 발신 이메일 수정
nilgil Sep 26, 2024
b1c4a18
Merge pull request #88 from withaeng/fix/email-from
nilgil Sep 26, 2024
b1b7ed1
fix: page request int로 받고 기본 사이즈 8로 수정
nilgil Sep 28, 2024
3815314
fix: test 토큰 운영서버에서는 사용 불가
nilgil Sep 28, 2024
6639f8b
fix: 스웨거 운영서버 서버 설정 수정
nilgil Sep 28, 2024
24dd469
Merge pull request #89 from withaeng/fix/for-release
nilgil Sep 28, 2024
994ef93
fix: github action cd main 브랜치 기준으로 수정
nilgil Sep 28, 2024
aac8c88
Merge pull request #90 from withaeng/fix/for-release
nilgil Sep 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
24 changes: 24 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
### 요약

### 변경한 부분

### 질문

### 변경한 결과



---

## PR 유형

어떤 변경 사항이 있나요?

- [ ] 새로운 기능 추가
- [ ] 버그 수정
- [ ] 코드에 영향을 주지 않는 변경사항(오타 수정, 탭 사이즈 변경, 변수명 변경, 주석 변경)
- [ ] 코드 리팩토링
- [ ] 문서 수정
- [ ] 테스트 추가, 테스트 리팩토링
- [ ] 파일 혹은 폴더명 수정, 삭제
- [ ] 배포 관련
84 changes: 84 additions & 0 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: Withaeng CD with Gradle, Github Actions

on:
push:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest
environment: prod

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin

- name: Cache Gradle dependencies
uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-

- name: Grant execute permission for gradlew
run: chmod +x ./gradlew
shell: bash

- name: Build with Gradle
run: ./gradlew clean build
shell: bash

- name: Clean Server Directory
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
key: ${{ secrets.SERVER_SSH_KEY }}
script: sudo rm -rf /tmp/withaeng-api

- name: Send build artifacts to server
uses: appleboy/scp-action@master
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
key: ${{ secrets.SERVER_SSH_KEY }}
source: withaeng-api
target: /tmp

deploy:
needs: build
runs-on: ubuntu-latest
environment: prod

steps:
- name: Run Docker Compose
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
key: ${{ secrets.SERVER_SSH_KEY }}
script: |
export SPRING_PROFILES_ACTIVE=prod
export DATABASE_DRIVER=${{ secrets.DATABASE_DRIVER }}
export DATABASE_URL=${{ secrets.DATABASE_URL }}
export DATABASE_USERNAME=${{ secrets.DATABASE_USERNAME }}
export DATABASE_PASSWORD=${{ secrets.DATABASE_PASSWORD }}
export WITHAENG_HOST=${{ secrets.WITHAENG_HOST }}
export JWT_ISSUER=${{ secrets.JWT_ISSUER }}
export JWT_SECRET_KEY=${{ secrets.JWT_SECRET_KEY }}
export AWS_ACCESS_KEY=${{ secrets.AWS_ACCESS_KEY }}
export AWS_SECRET_KEY=${{ secrets.AWS_SECRET_KEY }}
export AWS_SES_REGION=${{ secrets.AWS_SES_REGION }}
export AWS_SES_FROM=${{ secrets.AWS_SES_FROM }}
sudo -E docker compose -f /tmp/withaeng-api/docker-compose.yml down
sudo -E docker compose -f /tmp/withaeng-api/docker-compose.yml up --build -d
29 changes: 29 additions & 0 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Pull request workflow (build check)

on:
pull_request:
branches:
- main
- develop

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 17
distribution: temurin

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

- name: Build with Gradle
run: ./gradlew build -x test

- name: Test with Gradle
run: SPRING_PROFILES_ACTIVE=[test] ./gradlew test
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
*-local.properties
*-local.yaml
*-local.yml
HELP.md
.gradle
build/
Expand Down
34 changes: 18 additions & 16 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,45 +1,47 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins {
id("org.springframework.boot") version "3.2.2"
id("io.spring.dependency-management") version "1.1.4"
kotlin("jvm") version "1.9.22"
kotlin("plugin.spring") version "1.9.22"
kotlin("plugin.jpa") version "1.9.22"
kotlin("jvm")
kotlin("kapt") version "1.9.10"
kotlin("plugin.spring") apply false
kotlin("plugin.jpa") apply false
id("org.springframework.boot") apply false
id("io.spring.dependency-management") apply false
}

java {
sourceCompatibility = JavaVersion.VERSION_17
}

val projectGroup: String by project
val applicationVersion: String by project
allprojects {
group = "com.travel"
version = "0.0.1-SNAPSHOT"
group = projectGroup
version = applicationVersion

repositories {
mavenCentral()
}
}

val springMockkVersion: String by project.extra

subprojects {
apply(plugin = "org.jetbrains.kotlin.jvm")
apply(plugin = "org.jetbrains.kotlin.kapt")
apply(plugin = "org.jetbrains.kotlin.plugin.spring")
apply(plugin = "org.jetbrains.kotlin.plugin.jpa")
apply(plugin = "org.springframework.boot")
apply(plugin = "kotlin")
apply(plugin = "java-library")
apply(plugin = "kotlin-jpa")
apply(plugin = "io.spring.dependency-management")
apply(plugin = "kotlin-kapt")
apply(plugin = "application")

dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.jetbrains.kotlin:kotlin-reflect")
developmentOnly("org.springframework.boot:spring-boot-devtools")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")

// SpringMockk
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("com.ninja-squad:springmockk:3.1.1")
testImplementation("com.ninja-squad:springmockk:$springMockkVersion")

runtimeOnly("com.h2database:h2")
}
Expand All @@ -55,11 +57,11 @@ subprojects {
useJUnitPlatform()
}

tasks.bootJar {
tasks.getByName("bootJar") {
enabled = false
}

tasks.jar {
tasks.getByName("jar") {
enabled = true
}
}
18 changes: 18 additions & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
### Application version ###
applicationVersion=0.0.1
### Project configs ###
projectGroup=com.withaeng
### Project dependency versions ###
kotlinVersion=1.9.22
### Spring dependency versions ###
springBootVersion=3.2.2
springDependencyManagementVersion=1.1.4
### Spring mockk ####
springMockkVersion=3.1.1
### Persistence versions ###
mysqlVersion=8.3.0
queryDslVersion=5.1.0:jakarta
### jjwt version
jjwtVersion=0.11.5
### Swagger Version
swaggerVersion=2.2.0
29 changes: 24 additions & 5 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,25 @@
plugins {
id("org.gradle.toolchains.foojay-resolver-convention") version "0.5.0"
}
rootProject.name = "withaeng"
include("withaeng-api")
include("withaeng-domain")
include(
"withaeng-api",
"withaeng-domain",
"withaeng-common",
"withaeng-external"
)

pluginManagement {
val kotlinVersion: String by settings
val springBootVersion: String by settings
val springDependencyManagementVersion: String by settings

resolutionStrategy {
eachPlugin {
when (requested.id.id) {
"org.jetbrains.kotlin.jvm" -> useVersion(kotlinVersion)
"org.jetbrains.kotlin.plugin.spring" -> useVersion(kotlinVersion)
"org.jetbrains.kotlin.plugin.jpa" -> useVersion(kotlinVersion)
"org.springframework.boot" -> useVersion(springBootVersion)
"io.spring.dependency-management" -> useVersion(springDependencyManagementVersion)
}
}
}
}
5 changes: 5 additions & 0 deletions withaeng-api/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FROM eclipse-temurin:17-jre-alpine
ENV TZ=Asia/Seoul
ENV JAVA_OPTS="-Djava.net.preferIPv4Stack=true"
COPY build/libs/*.jar app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
21 changes: 19 additions & 2 deletions withaeng-api/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,12 +1,29 @@
tasks.bootJar {
tasks.getByName("bootJar") {
enabled = true
}

tasks.jar {
tasks.getByName("jar") {
enabled = false
}

val jjwtVersion: String by project.extra
val swaggerVersion: String by project.extra

dependencies {
implementation(project(":withaeng-domain"))
implementation(project(":withaeng-common"))
implementation(project(":withaeng-external"))
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-validation")

api("org.springframework.boot:spring-boot-starter-data-jpa")

// jwt
implementation("io.jsonwebtoken:jjwt-api:$jjwtVersion")
runtimeOnly("io.jsonwebtoken:jjwt-impl:$jjwtVersion")
runtimeOnly("io.jsonwebtoken:jjwt-jackson:$jjwtVersion")

// Swagger
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:$swaggerVersion")
}
21 changes: 21 additions & 0 deletions withaeng-api/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
services:
withaeng-api:
build:
context: .
dockerfile: Dockerfile
container_name: withaeng-api
ports:
- "8080:8080"
environment:
SPRING_PROFILES_ACTIVE: ${SPRING_PROFILES_ACTIVE}
DATABASE_DRIVER: ${DATABASE_DRIVER}
DATABASE_URL: ${DATABASE_URL}
DATABASE_USERNAME: ${DATABASE_USERNAME}
DATABASE_PASSWORD: ${DATABASE_PASSWORD}
WITHAENG_HOST: ${WITHAENG_HOST}
JWT_ISSUER: ${JWT_ISSUER}
JWT_SECRET_KEY: ${JWT_SECRET_KEY}
AWS_ACCESS_KEY: ${AWS_ACCESS_KEY}
AWS_SECRET_KEY: ${AWS_SECRET_KEY}
AWS_SES_REGION: ${AWS_SES_REGION}
AWS_SES_FROM: ${AWS_SES_FROM}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.travel.withaeng.api
package com.withaeng

import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication
Expand Down
Loading
Loading