-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #10 from kakao-tech-campus-2nd-step3/Master
- Loading branch information
Showing
29 changed files
with
1,029 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
--- | ||
name: Feature request | ||
about: 기능 추가 이슈 템플릿 | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
## **Issue** | ||
|
||
### ✨ 기능 리스트 | ||
- [ ] 구현한 기능 | ||
- [ ] 구현한 기능 | ||
--- | ||
|
||
### ✏ 사용 이유 | ||
|
||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
## **PR** | ||
|
||
### ✨ 작업 내용 | ||
- | ||
--- | ||
|
||
### ✨ 참고 사항 | ||
- 팀원들에게 알려야하는 사항들을 적어주세요 | ||
--- | ||
|
||
### ⏰ 현재 버그 | ||
- 해결해야할 버그를 기재해주세요 | ||
--- | ||
|
||
### ✏ Git Close |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
name: Java CI | ||
|
||
on: | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- 'Master' | ||
|
||
jobs: | ||
ci-pipeline: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
|
||
- name: Set up JDK 21 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: 'adopt' | ||
java-version: '21' | ||
|
||
- name: Create application.yaml | ||
run: | | ||
mkdir -p src/main/resources | ||
echo "${{ secrets.APPLICATION_YAML }}" > src/main/resources/application.yaml | ||
cat src/main/resources/application.yaml | ||
shell: bash | ||
|
||
- name: Grant execute permission for Gradle Wrapper | ||
run: chmod +x ./gradlew | ||
|
||
- name: Build with Gradle | ||
run: ./gradlew build | ||
|
||
- name: Test with Gradle | ||
run: ./gradlew test | ||
|
||
# 경로 확인 | ||
- name: Verify JAR file | ||
run: ls build/libs/*.jar | ||
|
||
# Docker 로그인 | ||
- name: Docker Login | ||
uses: docker/[email protected] | ||
with: # 도커 로그인에 필요한 입력값 | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_PASSWORD }} | ||
# 위 과정을 통해 후속 단계에서 이미지를 푸시할 수 있는 권한 얻음 | ||
|
||
# Docker 이미지 빌드 및 푸시 | ||
- name: image build and push docker images | ||
uses: docker/[email protected] | ||
with: | ||
context: . # 빌드할 도커 파일이 있는 디렉토리 | ||
push: true # 이미지 빌드 후 Docker Hub 에 이미지 푸시 여부 | ||
tags: ${{ secrets.DOCKER_USERNAME }}/katecam-backend:latest # Docker Hub 사용자 이름, 리포지토리 이름, 빌드된 이미지에 붙일 태그 | ||
no-cache: true # 이미지 빌드 시 캐시 사용 여부 | ||
|
||
# EC2 인스턴스에 Docker 이미지 배포 | ||
- name: Deploy to AWS EC2 | ||
uses: appleboy/[email protected] | ||
with: | ||
host: ${{ secrets.AWS_HOST_IP }} # 인스턴스 IP | ||
username: ${{ secrets.REMOTE_USER }} # 우분투 ID | ||
key: ${{ secrets.AWS_EC2_PRIVATE_KEY }} # EC2 인스턴스 pem key | ||
port: ${{ secrets.REMOTE_SSH_PORT }} # 접속 포트(생략 시 22번 기본 사용) | ||
script: | | ||
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} | ||
docker pull ${{ secrets.DOCKER_USERNAME }}/katecam-backend:latest | ||
docker stop katecam-backend | ||
docker rm $(docker ps --filter 'status=exited' -a -q) | ||
docker run -d --name katecam-backend --network katecam-backend --log-driver=syslog -p 8080:8080 ${{ secrets.DOCKER_USERNAME }}/katecam-backend:latest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
HELP.md | ||
.gradle | ||
build/ | ||
!gradle/wrapper/gradle-wrapper.jar | ||
!**/src/main/**/build/ | ||
!**/src/test/**/build/ | ||
|
||
### STS ### | ||
.apt_generated | ||
.classpath | ||
.factorypath | ||
.project | ||
.settings | ||
.springBeans | ||
.sts4-cache | ||
bin/ | ||
!**/src/main/**/bin/ | ||
!**/src/test/**/bin/ | ||
|
||
### IntelliJ IDEA ### | ||
.idea | ||
*.iws | ||
*.iml | ||
*.ipr | ||
out/ | ||
!**/src/main/**/out/ | ||
!**/src/test/**/out/ | ||
|
||
### NetBeans ### | ||
/nbproject/private/ | ||
/nbbuild/ | ||
/dist/ | ||
/nbdist/ | ||
/.nb-gradle/ | ||
|
||
### VS Code ### | ||
.vscode/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# 도커 이미지를 빌드할 때 필요한 커맨드를 가짐 | ||
|
||
# jdk21 image start | ||
FROM openjdk:21 | ||
|
||
# 인자 설정 - JAR_File | ||
ARG JAR_FILE=build/libs/*.jar | ||
|
||
# jar 파일 복제 | ||
COPY ${JAR_FILE} app.jar | ||
|
||
# 실행 명령어 | ||
ENTRYPOINT ["java", "-jar", "app.jar"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,20 @@ | ||
# Team9_BE | ||
9조 백엔드 | ||
|
||
## 백엔드 역할 분담 | ||
|
||
1. 검색 - 심규민 | ||
2. 로그인 및 회원 가입 + 작가 + 팔로우 - 윤재용 | ||
3. 채팅 + 파일 - 박한솔 | ||
4. 상품(피드), 좋아요, 감상평 - 주보경 | ||
5. 인프라(ci/cd, https, 모니터링) - 김동현 | ||
|
||
## 진행상황 | ||
1. ERD 설계에 따라 Entity 구현. 세부 구현사항이 남아있음 | ||
2. RULE.md에 각종 프로젝트 규칙 정의 | ||
3. 매주 월요일 정기회의 | ||
4. 다음주까지 각자 1차 구현 후, 회의를 통해 step 3 조별 멘토링을 통해 추가 피드백을 통해 수정. | ||
|
||
|
||
## 리뷰사항 | ||
연휴 이후 다음주 부터 본격적인 개발에 들어가려 합니다. 열심히하겠습니다! 감사합니다. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
## Pull Reqeust 규칙 | ||
|
||
## 브랜치 규칙 | ||
0. **조장/테크리더가 Weekly 브랜치 생성** | ||
- 4주차부터는 이전 주차 Master 브랜치를 클론 | ||
|
||
1. **각자 배정받은 기능 목표한 날짜까지 구현** | ||
- 구현한 기능은 Weekly 브랜치에 commit | ||
1. **기능별 브랜치 생성** | ||
- 포크 없이 프로젝트에 브랜치 생성시 브랜치 이름은 `feature/#이슈넘버-기능으로 생성 | ||
- ex) docs/#1-README.md | ||
2. **프로젝트 리뷰 미팅을 통해 오류 해결 및 보고서 작성** | ||
- 조장/테크리더는 이후 Weekly에서 Develop으로 conflict 해결 및 merge | ||
|
||
## 커밋 규칙 | ||
|
||
- 커밋 메시지는 크게 **제목**, **본문**의 두 파트로 구분한다. | ||
- 각 파트는 **빈 줄**로 구별한다. | ||
``` | ||
type(옵션): [#issueNumber] subject // -> 제목 | ||
body(옵션) // -> 본문 | ||
예시: docs:[#1]-ADD | ||
RULE.md 작성 | ||
``` | ||
|
||
|
||
### type 종류 | ||
| `feat` | 새로운 기능 추가 | **기능** | | ||
| --- | --- | --- | | ||
| `fix` | 버그 수정 | **기능** | | ||
| `design` | CSS/UI 변경 | **기능** | | ||
| `style` | 코드 포맷팅 (코드에 논리적 변경사항이 없는 경우) | **개선** | | ||
| `refactor` | 코드 리팩토링. 새로운 기능이나 버그 수정 없이 현재 구현을 개선 | **개선** | | ||
| `comment` | 필요한 주석 추가 및 변경 | **개선** | | ||
| `establish` | 초기 환경설정 / 설정 파일 추가 | 기타 | | ||
| `docs` | 문서 수정 | 기타 | | ||
| `test` | 테스트 코드 추가 | 기타 | | ||
| `chore` | 빌드 업무, 패키지 매니저 수정 | 기타 | | ||
| `remove` / `rename` | 파일 삭제 / 파일명 변경 | 기타 | | ||
| `!HOTFIX` | 긴급한 버그 수정 (핫픽스) | 기타 | | ||
|
||
### 제목 작성법 | ||
|
||
--- | ||
제목은 코드 변경 사항에 대한 짧은 요약으로, 다음과 같은 규칙을 가짐 | ||
동사 원형으로 시작한다. | ||
``` | ||
커밋 메시지 템플릿 추가 (X) | ||
추가 - 커밋 메시지 템플릿 (O) | ||
``` | ||
**커밋 제목에 사용되는 영단어 예시** | ||
|
||
| **Fix** | 올바르지 않은 동작을 수정 | | ||
| --- | --- | | ||
| **Add** | 코드, 예제, 문서 추가 | | ||
| **Remove** | 코드 삭제 | | ||
| **Update** | 원래도 정상적으로 동작하던 것을 수정, 추가, 보완 | | ||
| **Simplify** | 복잡한 코드를 단순화 (약한 Refactor) | | ||
| **Refactor** | 코드의 전면 수정 | | ||
| **Improve** | 호환성, 테스트 커버리지, 성능의 향상 | | ||
| **Implement** | 구현체 완성 | | ||
| **Correct** | 문법 오류나 타입의 수정 | | ||
|
||
### 본문 작성법 | ||
가독성을 위해 한 줄당 75자 이내로 제한하지만, 전체 내용은 **양에 상관없이 최대한 상세하게 작성.** | ||
|
||
## 코드 컨벤션 | ||
구글 자바 스타일 가이드에 따라 작성. | ||
https://google.github.io/styleguide/javaguide.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
plugins { | ||
id 'java' | ||
id 'org.springframework.boot' version '3.3.3' | ||
id 'io.spring.dependency-management' version '1.1.6' | ||
} | ||
|
||
group = 'com.helpmeCookies' | ||
version = '0.0.1-SNAPSHOT' | ||
|
||
java { | ||
toolchain { | ||
languageVersion = JavaLanguageVersion.of(21) | ||
} | ||
} | ||
|
||
configurations { | ||
compileOnly { | ||
extendsFrom annotationProcessor | ||
} | ||
} | ||
|
||
repositories { | ||
mavenCentral() | ||
} | ||
|
||
dependencies { | ||
implementation 'org.springframework.boot:spring-boot-starter-data-jpa' | ||
implementation 'org.springframework.boot:spring-boot-starter-web' | ||
compileOnly 'org.projectlombok:lombok' | ||
runtimeOnly 'com.mysql:mysql-connector-j' | ||
annotationProcessor 'org.projectlombok:lombok' | ||
runtimeOnly 'com.h2database:h2' | ||
testImplementation 'org.springframework.boot:spring-boot-starter-test' | ||
testRuntimeOnly 'org.junit.platform:junit-platform-launcher' | ||
|
||
// Spring docs | ||
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.6.0' | ||
} | ||
|
||
tasks.named('test') { | ||
useJUnitPlatform() | ||
} |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
distributionBase=GRADLE_USER_HOME | ||
distributionPath=wrapper/dists | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip | ||
networkTimeout=10000 | ||
validateDistributionUrl=true | ||
zipStoreBase=GRADLE_USER_HOME | ||
zipStorePath=wrapper/dists |
Oops, something went wrong.