Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
4ddcd13
docs: issue template 생성
hey-sung Jan 28, 2025
522546b
docs: PR template 생성
hey-sung Jan 28, 2025
921ceeb
init: gitignore 파일 설정
hey-sung Jan 29, 2025
6e51ffa
docs: PR 템플릿 수정
hey-sung Jan 29, 2025
bd01af1
feat: 공통 응답 클래스 작성
hey-sung Jan 30, 2025
fa5eb18
feat: 리스트(목록) 응답 클래스 작성
hey-sung Jan 30, 2025
f5250ba
feat: 단일 응답 클래스 작성
hey-sung Jan 30, 2025
eb50175
feat: 페이징 관련 응답 클래스 작성
hey-sung Jan 30, 2025
fb5f408
feat: 특정 브랜치로 PR 요청 시 실행할 워크플로우 파일 작성
hey-sung Jan 30, 2025
939dd8a
feat: 예외 발생 시 사용할 응답 클래스 작성
hey-sung Jan 30, 2025
c4b7990
Merge pull request #5 from TeamTheGenius/feat/3-create-automated-work…
hey-sung Jan 30, 2025
f5cd8c0
Merge pull request #4 from TeamTheGenius/feat/2-common-response
hey-sung Jan 30, 2025
bbdc4e5
[FEAT] 비지니스 예외 클래스 및 핸들러 클래스 개발 (#7)
hey-sung Jan 30, 2025
9410241
chore: git submodule 설정
hey-sung Jan 30, 2025
3673049
chore: github actions workflow 설정
hey-sung Jan 30, 2025
1402675
chore: Update git submodule
hey-sung Jan 30, 2025
abe8cdf
[FEAT] 소셜로그인 기능 개발 (#8)
hey-sung Jan 31, 2025
abbb13e
chore: Update git submodule
hey-sung Feb 8, 2025
4fae149
chore: Update git submodule
hey-sung Feb 8, 2025
e718175
chore: github actions workflow 수정
hey-sung Feb 8, 2025
f3c6685
chore: Update git submodule
hey-sung Feb 8, 2025
aea3eac
chore: github actions workflow 수정
hey-sung Feb 8, 2025
9171f18
[FEAT] 파일 시스템 개발 (#12)
hey-sung Feb 8, 2025
eda5ff3
[FEAT] Entity 클래스 작성 (#14)
hey-sung Feb 10, 2025
5f770c6
[FEAT] 회원가입 기능 개발 (#16)
hey-sung Feb 11, 2025
f9fb926
[FEAT] swagger 설정 및 적용 (#17)
hey-sung Feb 12, 2025
51e15ca
[REFACTOR] 공통 응답 구조 변경 (#20)
hey-sung Feb 13, 2025
e2d6a50
[FEAT] JWT를 통한 로그인 기능 개발 (#22)
hey-sung Feb 23, 2025
9307d45
[FEAT] JWT 테스트 코드 작성 (#25)
hey-sung Feb 26, 2025
de8bae1
[FIX] 아직 회원가입을 하지 않은 상태에서도 JWT 발급이 가능한 버그 픽스 (#27)
hey-sung Feb 27, 2025
06115b3
[FEAT] 크루 생성/수정/조회 기능 개발 (#30)
hey-sung Mar 10, 2025
42fc4ec
feat: JacksonConfig 설정 (#32)
hey-sung Mar 10, 2025
977ef7e
[DOCS] CrewController에 swagger 어노테이션 적용 (#33)
hey-sung Mar 10, 2025
092df39
[FIX] 회원가입 URL 변경을 통해 다른 사용자 회원가입 페이지에 접근할 수 있는 버그 픽스 (#34)
hey-sung Mar 11, 2025
ff5ffc3
feat: 참여 중인 크루 리스트 조회 API 개발 (#41)
hey-sung Mar 12, 2025
57b9699
[FEAT] 크루원 초대/가입 기능 개발 (#42)
hey-sung Mar 15, 2025
4bc61c7
[FEAT] 크루 초대 API에 비동기 적용 (#45)
hey-sung Mar 17, 2025
5724901
[FEAT] 크루원 내보내기 기능 개발 (#46)
hey-sung Mar 17, 2025
931e9a7
[REFACTOR] 회원가입 프로필 조회/수정 API 스펙 변경 (#49)
hey-sung Mar 18, 2025
4e9c81e
[REFACTOR] JWT 재발급 조건 변경 (#51)
hey-sung Mar 19, 2025
5a50f9d
[FEAT] 장소 검색 API 개발 (#53)
hey-sung Mar 20, 2025
3ba68fe
[FIX] 파일 등록 시, 크루/모먼트 타입을 인식하지 못하는 버그 픽스 (#55)
hey-sung Mar 20, 2025
89f8eb2
[FIX] 닉네임 유효성 확인 로직 추가 (#56)
hey-sung Mar 20, 2025
644da0a
!HOTFIX: 파일 지원 확장자 추가
hey-sung Mar 20, 2025
5cb6c4f
[FEAT] 모먼트 생성/수정 API 개발 (#64)
hey-sung Mar 23, 2025
f5cd431
[DOCS] 모먼트 생성/수정 API에 swagger 정보 추가 (#66)
hey-sung Mar 23, 2025
d02a8b3
feat: 모먼트 삭제 API 구현 (#68)
hey-sung Mar 23, 2025
ee4ae76
!HOTFIX: 크루 참여 응답에 crew PK 전달하도록 변경
hey-sung Mar 23, 2025
193c0f5
!HOTFIX: 크루 내보내기, 참여 버그 픽스
hey-sung Mar 23, 2025
4452033
[FEAT] 만남 장소 등록 API 개발 (#69)
hey-sung Mar 24, 2025
5c94b64
[FEAT] 크루에 대한 나의 정보 조회 API 개발 (#71)
hey-sung Mar 24, 2025
97ef422
chore: DB 변경 작업
hey-sung Mar 24, 2025
24e2481
[REFACTOR] 크루 내 크루원 정보 조회 쿼리문 리팩터링 (#73)
hey-sung Mar 25, 2025
50d7316
!HOTFIX: 날짜 포맷팅 삭제
hey-sung Mar 27, 2025
ef7be3a
[FEAT] 모먼트 상세 조회/참여&참여 취소/참여자 정보 조회 API 개발 (#76)
hey-sung Mar 29, 2025
e87f2b7
[REFACTOR] 모먼트 참여자 목록 조회 API spec 변경 (#81)
hey-sung Mar 30, 2025
80473d0
chore: git submodule 업데이트
hey-sung Mar 31, 2025
6773811
[FEAT] 모먼트 탭에서 리스트 조회 기능 (#82)
hey-sung Mar 31, 2025
673753e
[FEAT] 다가오는 모먼트 조회 API 개발 (#84)
hey-sung Apr 1, 2025
f0d2976
style: 코드 스타일 변경
hey-sung Apr 1, 2025
bb763ad
[FEAT] 크루/모먼트 최대 참여인원 설정 (#85)
hey-sung Apr 1, 2025
cb65c38
docs: swagger tag 정보 추가
hey-sung Apr 1, 2025
55d84a5
docs: API 이름 수정
hey-sung Apr 1, 2025
923f524
[REFACTOR] 다가오는 모먼트 응답 객체에 크루 식별자 추가
hey-sung Apr 1, 2025
693c082
[REFACTOR] 모먼트 상세 조회의 응답 DTO 변경 (#90)
hey-sung Apr 1, 2025
9972ede
[REFACTOR] 모먼트 상세 조회, 크루 내 모먼트 조회 응답 DTO 변경 (#92)
hey-sung Apr 2, 2025
6734727
[FEAT] 장소 삭제 API 개발 (#93)
hey-sung Apr 3, 2025
d717d59
[FEAT] 장소 등록 API에 참여 사용자 검증 및 index 필드 자동화 구현 (#94)
hey-sung Apr 4, 2025
f9b33ca
[FEAT] 만남 장소 순서 수정 API 개발 (#95)
hey-sung Apr 5, 2025
c3de17b
[FIX] 장소 삭제/수정 시, 만남 장소에 대해서도 실행되는 버그 픽스 (#98)
hey-sung Apr 6, 2025
8c781d7
[INFRA] 1차 배포 (#99)
hey-sung Apr 9, 2025
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
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/-⚙️-fix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: "\b⚙️ FIX"
about: 버그 픽스 관련
title: ''
labels: ''
assignees: ''

---

### Issue 타입
□ 기능 추가
□ 기능 삭제
□ 리팩터링
□ 버그 리포트
☑ 버그 수정
□ 의존성, 환경 변수, 빌드 관련 코드 업데이트

***

### 📚 Description
#### 📋 어떤 버그였으며, 무엇이 원인이었나요?
> (이슈 번호를 같이 작성해주세요)
> 버그과 그 원인에 대해 간략하게 작성해주세요

#### ✅ 작업 상세 내용
- [ ] TO DO


<br>

---

#### 🛠️ 작업 브랜치
``

#### 👀 참고 자료
-
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/💡-feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
name: "\U0001F4A1 Feature"
about: 기능 개발 & 변경
title: ''
labels: ''
assignees: ''

---

### Issue 타입
☑ 기능 추가
□ 기능 삭제
□ 리팩터링
□ 버그 리포트
□ 버그 수정
□ 의존성, 환경 변수, 빌드 관련 코드 업데이트

***

### 📚 Description
#### 📋 어떤 기능인가요?
> 추가하려는 기능에 대해 간결하게 설명해주세요

#### ✅ 작업 상세 내용
- [ ] TO DO


<br>

---

#### 🛠️ 작업 브랜치
``

#### 👀 참고 자료
-
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/🛠️-refactor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
name: "\U0001F6E0️ Refactor"
about: 리팩터링
title: ''
labels: ''
assignees: ''

---

### Issue 타입
□ 기능 추가
□ 기능 삭제
☑ 리팩터링
□ 버그 리포트
□ 버그 수정
□ 의존성, 환경 변수, 빌드 관련 코드 업데이트

***

### 📚 Description
#### 📋 어떤 기능을 리팩터링 하나요?
> 리팩터링하려는 기능에 대해 간결하게 설명해주세요

#### ✅ 작업 상세 내용
- [ ] TO DO


<br>

---

#### 🛠️ 작업 브랜치
``

#### 👀 참고 자료
-
29 changes: 29 additions & 0 deletions .github/ISSUE_TEMPLATE/🧨-bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
name: "\U0001F9E8 Bug Report"
about: 버그 리포트
title: ''
labels: ''
assignees: ''

---

### Issue 타입(하나 이상의 Issue 타입을 선택해주세요)
□ 기능 추가
□ 기능 삭제
□ 리팩터링
☑ 버그 리포트
□ 버그 수정
□ 의존성, 환경 변수, 빌드 관련 코드 업데이트

### 📚 Description
#### 어떤 버그인가요?
> 어떤 버그인지 간결하게 설명해주세요

#### 어떤 상황에서 발생한 버그인가요?
> (가능하면) Given-When-Then 형식으로 서술해주세요

#### 예상 결과
> 예상했던 정상적인 결과가 어떤 것이었는지 설명해주세요

#### 버그 (예상) 원인
> 버그가 발생한 원인을 발견했거나, 예상되는 원인에 대해 설명해주세요
34 changes: 34 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
### PR 타입
☑ 기능 추가
□ 기능 삭제
□ 리팩터링
□ 버그 리포트
□ 버그 수정
□ 의존성, 환경 변수, 빌드 관련 코드 업데이트

### 반영 브랜치
ex) `feat/login` -> `dev`

</br>

### 🛠️ 변경 사항
ex) 로그인 시, 구글 소셜 로그인 기능을 추가했습니다.

#### ✅ 작업 상세 내용
- [ ] todo

</br>

### 🧪 테스트 결과
ex) 베이스 브랜치에 포함되기 위한 코드는 모두 정상적으로 동작해야 합니다. 결과물에 대한 스크린샷, GIF, 혹은 라이브 데모가 가능하도록 샘플API를 첨부할 수도 있습니다.

</br>

### 📚 연관된 이슈
ex) #이슈번호, #이슈번호

</br>

### 🤔 리뷰 요구사항(선택)
> 리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요
> ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?
69 changes: 69 additions & 0 deletions .github/workflows/PRTest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: Run gradlew clean test when PR

on:
pull_request:
branches: [ "main", "production" ]

jobs:
PRTest:
runs-on: ubuntu-latest
permissions: write-all

services:
redis:
image: redis:latest
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5

steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.ACTIONS_TOKEN }}
submodules: true

- name: Create directories and copy yml files
run: |
mkdir -p src/main/resources
cp HERE-WE-SECRET/main/resources/application.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-dev.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-oauth.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-common.yml src/main/resources/

mkdir -p src/test/resources
cp HERE-WE-SECRET/test/resources/application.yml src/test/resources/
cp HERE-WE-SECRET/test/resources/application-test.yml src/test/resources/

echo "Main resources contents:"
ls -la src/main/resources/
echo "Test resources contents:"
ls -la src/test/resources/

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

- name: Test Redis Connection
run: |
sudo apt-get install -y redis-tools
redis-cli ping

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

- name: Build and Test
run: ./gradlew clean test

# Test 후 Report 생성
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
junit_files: '**/build/test-results/test/TEST-*.xml'
119 changes: 119 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
name: Deploy to EC2

on:
push:
branches:
- production

env:
AWS_REGION: ap-northeast-2
AWS_S3_BUCKET: herewe-deploy-bucket
AWS_CODE_DEPLOY_APPLICATION: HEREWE-Application
AWS_CODE_DEPLOY_GROUP: HEREWE-Deployment-Group
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
DOCKER_HUB_ACCESS_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
IMAGE_NAME: herewe/herewe-server

jobs:
deploy:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

services:
redis:
image: redis:latest
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5

steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.ACTIONS_TOKEN }}
submodules: true

- name: Create directories and copy yml files
run: |
cp HERE-WE-SECRET/.env .

mkdir -p src/main/resources
cp HERE-WE-SECRET/main/resources/application.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-prod.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-oauth.yml src/main/resources/
cp HERE-WE-SECRET/main/resources/application-common.yml src/main/resources/

mkdir -p src/test/resources
cp HERE-WE-SECRET/test/resources/application.yml src/test/resources/
cp HERE-WE-SECRET/test/resources/application-test.yml src/test/resources/

echo "Main resources contents:"
ls -la src/main/resources/
echo "Test resources contents:"
ls -la src/test/resources/

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

- name: Test Redis Connection
run: |
sudo apt-get install -y redis-tools
redis-cli ping

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

- name: Build with Gradle and Test
run: ./gradlew clean build

# Docker Hub 로그인
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ env.DOCKER_HUB_USERNAME }}
password: ${{ env.DOCKER_HUB_ACCESS_TOKEN }}

- name: Build and Push Docker Image
run: |
docker build --platform=linux/amd64 -t $IMAGE_NAME .
docker tag $IMAGE_NAME $IMAGE_NAME:latest
docker push $IMAGE_NAME:latest

- name: AWS credential 설정
uses: aws-actions/configure-aws-credentials@v1
with:
aws-region: ${{ env.AWS_REGION }}
aws-access-key-id: ${{ secrets.CICD_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.CICD_SECRET_KEY }}

- name: Copy .env file
run: cp HERE-WE-SECRET/.env .

- name: Package and Upload to S3
run: |
mkdir -p deploy/scripts
cp appspec.yml deploy/
cp docker-compose.yml deploy/
cp HERE-WE-SECRET/.env deploy/
cp HERE-WE-SECRET/main/resources/*.yml deploy/
cp scripts/deploy.sh deploy/scripts/
cd deploy
zip -r deploy.zip .
aws s3 cp deploy.zip s3://$AWS_S3_BUCKET/deploy.zip --region $AWS_REGION

- name: Deploy with CodeDeploy
run: |
aws deploy create-deployment \
--application-name $AWS_CODE_DEPLOY_APPLICATION \
--deployment-group-name $AWS_CODE_DEPLOY_GROUP \
--s3-location bucket=$AWS_S3_BUCKET,bundleType=zip,key=deploy.zip \
--region $AWS_REGION
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ build/
!**/src/test/**/build/

*.yml
.env

### STS ###
.apt_generated
Expand Down Expand Up @@ -42,3 +43,5 @@ out/
### MAC ###
*.DS_Store
src/main/generated/**
/.idea
/mysql_data
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "HERE-WE-SECRET"]
path = HERE-WE-SECRET
url = https://github.com/TeamTheGenius/HERE-WE-SECRET.git
4 changes: 2 additions & 2 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading