42 helper
- 42helper는 도움을 원하는 카뎃과 도움을 줄 수 있는 카뎃을 이어주는 플랫폼 입니다.
Running local server
Java 설치
JDK 1.8 버전을 사용합니다.
DB 설치
- 로컬에서 실행하기 위한 별도의 DB설정이 필요 없습니다. (H2 Database 사용)
- 서버 실행 후
http://localhost:8080/h2-console
로 데이터베이스를 관리 할 수 있습니다.
API 키 발급
export SECRET42={발급받은 UID}
export SECRET42={발급받은 SECRET}
- 42 api 발급 방법은 api 발급 가이드 를 참고하세요
- 42api를 발급받고
[application.properties](http://application.properties)
에서 사용할 UID42
와 SECRET42
환경변수 등록이 필요합니다.
Mail 연동
export HELPER42_MAIL_ADDRESS={전송 메일 주소}
export HELPER42_MAIL_PASSWORD=전송 메일 계정 비밀번호}
- 해당 프로젝트는 gmail 을 통해서 메일 알람을 전송합니다.
- 설정을 변경하실 경우 application-mail.yaml 를 참고해주세요. (단 PR 이 거부될 수 있습니다.)
run spring-boot server
./mvnw spring-boot:run
- 개발 도구에서 Maven프로젝트로 불러오기를 하거나, 위의 Maven wrapper명령어를 통해 실행할 수 있습니다.
- 실행 후
http://localhost:8080
으로 접속할 수 있습니다.
Server deployment
- 아래 사항을 따라 실제 서버를 기동할 수 있습니다.
- 사전에 준비되어있지
않다면 인스턴스 셋업 가이드를
참고할 수 있습니다.
Database setup
- 10.4.20 MariaDB Server 혹은 호환되는 MariaDB버전을 사용할 수 있습니다.
Setup scheme
- DB가 있다면 미리 준비된 스키마로 쉽게 셋업할 수 있습니다.
mysql -u [YOUR_USERNAME] -p [YOUR_DATABASE] < src/main/resources/db/mariadb/schema.sql
Environment Setup
- export명령 등을 통해 아래의 환경변수를 미리 지정해야 합니다.
UID42
SECRET42
HELPER42_DB_USERNAME_RELEASE
HELPER42_DB_PASSWORD_RELEASE
HELPER42_DB_NAME_RELEASE
UID42
: 발급 받은 42 API ID
SECRET42
: 발급 받은 42 API Secret
HELPER42_DB_USERNAME_RELEASE
: DB 계정 이름
HELPER42_DB_PASSWORD_RELEASE
: DB 계정 패스워드
HELPER42_DB_NAME_RELEASE
: DB 이름
Run server
Java
Start server
- 내장된 maven wrapper로 빌드한 뒤 실행합니다.
./mvnw package
cd ./target
java -jar helper-0.0.1-SNAPSHOT.jar --spring.config.location=classpath:/application.properties --spring.profiles.active=release
deploy script
- 지속적인 실행이 필요한 경우 deploy 스크립트를 제공하고 있습니다. 환경에 맞게끔 수정 후 사용하세요.
- 위치 :
/script/deploy.sh
Contribution guidess
- issues를 통해서 버그 리포트나 기능 제안 또는 요청을 할 수 있습니다.
- 직접 코드 Pull request를 위해 checkstyle을 통해 코드 컨벤션을 쉽게 맞출 수 있습니다. 우리 프로젝트의 checkstyle
코드컨벤션 파일은 아래 경로에 위치합니다.
/checkstyle/checkstyle.xml
- 더 자세한 내용은 컨트리뷰터 가이드 문서
를 참고해주세요.
License
42 helper는 MIT 라이센스를
따릅니다.