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

v1.0.0 #182

Merged
merged 76 commits into from
Jan 19, 2024
Merged

v1.0.0 #182

merged 76 commits into from
Jan 19, 2024

Conversation

kdomo
Copy link
Member

@kdomo kdomo commented Jan 19, 2024

v1.0.0

kdomo and others added 30 commits November 22, 2023 21:44
* chore: .editorconfig 추가

* chore: codeowners 추가

* docs: 이슈 템플릿 추가

* docs: PR 템플릿 추가

* refactor: 대소문자 수정

* refactor: class명 대소문자 수정

* test: health check

* docs: PR 템플릿 수정

* chore: checkstyle plugin 적용

* chore: develop Branch Pull Request Workflow 적용

* chore: application.properties를 .yml로 변경

---------

Co-authored-by: uwoobeat <[email protected]>
Co-authored-by: ybchar <[email protected]>
* refactor: gradle build action 및 lifecycle 추가

* refactor: build.gradle test 의존성 삭제
* chore: Dockerfile 생성

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* chore: plain jar 생성 안되도록 설정

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* chore: CI/CD workflow 작성

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* fix: cicd전용 계정 생성하여 password 필드 제거

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

---------

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>
* fix: ssh 접속 계정명 변경과 패스워드 필드 제거

* fix: docker 명령어에 registry 값 추가
* fix: CI/CD outputs 변수명 변경

* remove: on pullrequest 제거
* feat: 에러 코드 구현

* feat: 커스텀 예외 구현

* feat: 예외 응답 구현
* fix: 테스트 파일 이름 수정

* chore: 액추에이터 의존성 추가

* chore: 액추에이터 보안 관련 설정
* chore: Swagger 기본 설정

* chore: Swagger 객체 파싱 직렬화

* chore: swagger Server url 추가
* remove: checkstyle 제거

* chore: spotless 플러그인 추가하고 설정

* style: spotless

* chore: git pre-commit spotless check script 생성

* style: 주석 추가

* style: spotless

* style: spotless

* fix: pre-commit script 파일 생성, gradle copy task 생성

* style: 주석 제거
* chore: jacoco 기본 설정

* chore: jacoco 커버리지 임시 주석

* chore: jacoco excludes constant화 및 buildDir 수정

* chore: checkstyle remove
* chore: 워크플로 테스트 트리거 추가

* chore: 서버로 컴포즈 파일을 전송하는 스텝 추가

* chore: 빌드 시 자바 이미지 eclipse-temurin으로 변경

* chore: 컴포즈 파일 작성

* chore: 컴포즈 파일에 사용할 환경변수 설정

* chore: 시크릿을 사용하도록 변경

* fix: 권한 문제 수정

* chore: 도커 컴포즈를 실행하도록 변경

* fix: scp action의 버전을 고정하도록 변경

* fix: 오타 수정

* fix: 유저네임 변경

* fix: 쉘에서 환경변수 전달하도록 수정

* fix: 사용할 환경변수 지정

* chore: 도커 미사용 리소스 삭제 명령어 추가

* fix: 이미지만 삭제하도록 수정

* fix: 환경변수 수정

* chore: 호스트 모드 사용 시 포트 바인딩 옵션 제거

* chore: 컴포즈가 전역 컨텍스트의 환경변수를 직접 참조하도록 수정 테스트

* fix: 주석 수정

* Revert "fix: 주석 수정"

This reverts commit 0e8f426.

* Revert "chore: 컴포즈가 전역 컨텍스트의 환경변수를 직접 참조하도록 수정 테스트"

This reverts commit b910404.

* docs: 주석 추가

* chore: 주석 처리한 명령어 제거

* chore: 워크플로 테스트 트리거 롤백

* chore: 배포 전용 워크플로에 변경사항 적용
* chore: 프로젝트 패키지 구성

* rename: 패키지명 오타 수정

* rename: repository -> dao로 패키지명 변경
* chore: 성공 응답 공통 처리 어드바이스 생성

* remove: Getter 제거
* chore: 빌드 스캔 활성화

* chore: 워크플로 테스트

* chore: CI 환경변수 테스트 제거

* chore: 슬랙 전송 워크플로 작성

* chore: 슬랙 전송 스텝을 빌드 잡으로 통합

* chore: 테스트 트리거 및 문자열 제거
* chore: PR 추가 후 status를 변경하는 워크플로우 추가

* fix: 스크립트 줄바꿈 제거
* style: 개행 제거

* docs: PR 템플릿 수정

* style: 개행 제거
* chore: lifeCycle remove 1

* chore: Sonar test
* chore: 워크플로 이름 수정

* refactor: 파일명 변경

* chore: PR이 closed 될 때 merged 라벨 추가하는 워크플로 작성

* chore: 테스트용 트리거 추가

* chore: 권한 설정 변경

* chore: 테스트 트리거 재설정

* chore: 테스트 트리거 롤백

* chore: 프로젝트 워크플로 테스트 트리거 활성화

* �chore: 코드 정적 분석 SonarCloud 설정 (#38)

* �chore: 코드 정적 분석 SonarCloud 설정 (#38)

* chore: pending 워크플로우의 쿼리 수정

* fix: pending 상태 id 값 직접 삽입

* fix: 쿼리 전 인자값을 미리 선언하도록 지정

* chore: 테스트 트리거 롤백

* chore: 잡 이름 변경

* chore: 워크플로 이름 변경

---------

Co-authored-by: yb__char <[email protected]>
Co-authored-by: ybchar <[email protected]>
* feat: BaseTimeEntity 생성

* feat: jacoco exclusions 수정

* feat: jacoco QType exclusions 추가

* feat: BaseTime exclusions Test

* feat: Entity exclusions Test
* chore: 테스트 트리거 활성화

* chore: set-output 대신 github env를 사용하도록 개선

* chore: 환경변수 이름 변경

* chore: 테스트 명령어 추가

* chore: 환경변수 출력 테스트

* chore: 환경변수를 전역 컨텍스트로 선언

* chore: 전역 환경변수가 미리 평가되도록 변경

* chore: 환경변수를 잡의 아웃풋으로 전달하도록 수정

* fix: 신택스 오류 수정

* fix: 같은 잡 내에서는 스텝 아웃풋 사용하도록 수정

* chore: NCP 유저네임 시크릿 처리

* chore: 테스트 스크립트 제거

* chore: 테스트 트리거 롤백

* chore: NCP 유저네임 시크릿 처리
* fix: error 패키지 sonarcloud 테스트 제외

* fix: lombok.config로 lombok annotation scope exclusions

* fix: Error 파일명 sonarcloud 테스트 제외

* fix: config 경로 sonarcloud 테스트 제외
* refactor: 도메인 이름을 user에서 member로 변경

* feat: 회원 도메인 구현

* test: 회원 테스트 작성

* refactor: `.gitkeep` 삭제

* chore: 시큐리티 의존성 추가

* feat: 시큐리티 설정 추가

* fix: 전역 응답객체와 호환되기 위해 String에서 임시 응답객체로 변경

* feat: 멤버 레포지터리 추가

* feat: 임시 UserDetail 추가

* refactor: 시큐리티 패키지로 이동

* feat: PrincipalDetails 구현

* fix: 에러코드 생성자 수정

* feat: 멤버 레포지터리 추가

* style: 포매팅 적용

* feat: 시큐리티 유틸리티 구현

* feat: 멤버 유틸리티 구현

* refactor: gitkeep 삭제

* feat: 에러코드 추가

* fix: 미수정 코드 제거

* test: 멤버 유틸리티 테스트 추가

* style: 포매팅 적용

* fix: 오타 수정

* test: 임시 회원 삽입 테스트

* style: 포매팅 수정

* refactor: gitkeep 삭제

* refactor: 빌더를 사용하도록 변경

* fix: 빌더 접근제어 설정 추가

* refactor: 기본 생성자 접근제어 수정

* docs: TODO 추가

* style: 포매팅 수정

* docs: 주석 수정
* feat: SpringEnvironmentHelper 생성

* test: SpringEnvironmentHelper 테스트코드 추가

* rename: Util로 클래스명 변경

* fix: 문자열 상수 public static으로 변경

* refactor: SpringEnvironmentUtil 로직 Stream으로 개선

* style: spotless

* refactor: 운영환경에 따라 허용되는 도메인 달라지도록 개선

* fix: 문자열 상수 public static final로 변경

* test: DisplayName 어노테이션 제거

* fix: cors origin pattern vite port 삭제

* refactor: SpringEnvironmentUtilTest 문자열 배열 상수로 관리

* style: spotless

* refactor: WebSecurityConfig에 RequiredArgsConstructor 어노테이션 사용

* style: spotless
* feat: querydsl 환경

* feat: Member Profile record compile 이슈로 class로 변경

* fix: spotlessApply

* fix: Profile NoArgsConstructor Access Level remove

* feat: build.gradle Querydsl 설정

* fix: DS_Stroe -> DS_Store 수정

* fix: Querydsl 설정 삭제

* fix: ignore main/generated 경로 추가
* feat: mission domain 추가

* feat: mission repository 추가 및 spotless 적용

* feat: missionRecord domain 추가

* feat: mission DomainTest 작성

* fix: Mission DomainTest 수정

* fix: Comment Annotation 활용 및 Spotless Apply

* fix: Spotless Apply

* fix: sonar --no-daemon test

* fix: mission 도메인 수정 반영

* fix: spotlessApply

* feat: MissionVisibility 값 추가

* fix: spotlessApply

* fix: 도메인 테스트 MissionVisibility 수정

* feat: Mission Sort 값 파라미터 전달로 수정

* feat: Mission Sort 값 파라미터 전달로 수정

* fix: spotlessApply

* feat: service gitkeep

* feat: sonar New Code Test

* feat: sonar New Code Test

* feat: sonar New Code Test

* feat: sonar New Code Test

* feat: sonar BuildDir test

* fix: set_pending 주석

* fix: set_pending 주석 해제

* fix: sonar down

* fix: sonar up

* fix: sonar down

* fix: sonar up

* fix: set-pending test

* feat: mission Domain 추가 사항 적용

* feat: 미션, 미션 기록 수정사항 반영

* feat: 미션, 미션 기록 column 수정

* fix: spotlessApply

* fix: mission 도메인 column 수정 반영

* fix: spotlessApply

* fix: mission 도메인 column 수정 반영

* fix: 엔티티 column 순서 변경

* fix: mission content nullable true
* chore: Global Exception Handler 설정

* fix: Override 추가와 BindException 제거

* style: spotless

* style: 주석제거
* chore: 공통 상수 enum 생성

* refactor: 공통 상수 값 사용하도록 변경

* refactor: 공통 상수 관심사에 맞도록 분리
* chore: application yml 환경별로 분리

* chore: datasource MySQL 방언 제거

* style: spotless

* style: spotless

* remove: actuator 환경변수 제거

* feat: 파일에 env_file 사용하도록 명시
kdomo and others added 26 commits January 12, 2024 01:10
* refactor: MissionRecordCreateResponse 생성

* refactor: 미션 기록 생성 응답 값 response 객체로 Wrapping

* test: MissionRecordCreateResponse로 응답되도록 테스트 수정
* hotfix: CORS AllowedOrigins 환경 분리

* hotfix: CORS AllowedOrigins url 범위 변경
* fix: 미션 기록 일지 수정

* fix: spotlessApply

* feat: 미션 기록 소유권 검증

* fix: 미션, 미션 기록 수정 API return 객체 정적 팩토리 메서드로 변경

* fix: updateMissionRecord 인자 변경

* fix: MissionVisibility 검증 부분 수정

* fix: spotlessApply

* fix: spotlessApply

* fix: update return 타입 변경 및 변수 할당

* fix: 미션 수정도 동일한 response 형식

* fix: 수정 API 변경으로 인한 테스트 코드 수정

* fix: spotlessApply
* chore: 시큐리티 form 로그인 및 세션 등 비활성화 처리

* chore: oauth 의존성 추가

* chore: 시큐리티 yml 파일 작성

* feat: OAuth 정보로 조회하는 메서드 추가

* feat: OAuth 정보 필드를 멤버 엔티티에 추가

* feat: 게스트 멤버 유저 생성 메서드 구현

* chore: 공통 프로파일 분리

* chore: jwt 의존성 추가

* chore: 시큐리티 전용 설정 파일 분리

* feat: 시큐리티 yml에 만료시간 및 발급자 추가

* feat: JwtProperties 추가

* feat: JwtTokenProvider 구현

* feat: 에러코드 추가

* feat: 리프레시 토큰 및 레포지터리 임시 구현

* feat: OIDC 유저 서비스 구현

* feat: 성공 핸들러 임시 추가

* feat: 엑세스 토큰 DTO 추가

* feat: 시큐리티 OAuth 설정 반영

* fix: MemberRole이 게스트 상태를 가지도록 수정

* feat: 게스트 역할 여부 확인을 위한 커스텀 OIDC 유저 구현

* feat: 표준 스코프 스펙과 관계없이 userinfo를 가져오도록 빈 스코프로 설정

* refactor: OIDC 유저 서비스가 OidcUser 인터페이스에 의존하도록 변경

* feat: 시큐리티 관련 상수 클래스 추가

* feat: OIDC 로그인 성공 핸들러 구현

* refactor: 상수 클래스로 대체

* docs: 주석 변경

* fix: 토큰 키가 필요한 시점에 초기화되도록 수정

* fix: 오타 및 포매팅 수정

* refactor: 테스트 시 JPA 관련 빈 로딩 제외를 위해 설정 클래스 분리

* refactor: 리프레시 토큰의 ttl을 인자로 받도록 수정

* test: 리프레시 토큰 레포지터리 테스트 작성

* refactor: token 패키지를 auth 패키지로 변경

* feat: 마지막 로그인 시간 업데이트 기능 구현

* feat: 게스트 멤버 회원가입 구현

* test: 멤버 도메인 유닛 테스트 변경 및 회원가입 테스트 작성

* feat: 회원가입 서비스 및 컨트롤러 구현

* refactor: 필터와 토큰 간 결합도 낮추기 위해 프로바이더와 서비스 분리

* refactor: 리다이렉트 경로 및 상수 수정

* feat: JWT 인증 필터 구현

* feat: 토큰 재발급 로직 구현

* feat: 멤버 가입 DTO 추가

* feat: 토큰 만료 여부 확인 메서드 구현

* style: spotlessApply

* fix: 토큰이 있는 경우에만 체크하도록 수정

* refactor: 로컬 환경에서는 디비 스키마 항상 새로 생성

* refactor: 프론트 회원가입 페이지 url 반영

* feat: 허용된 URL 외에는 인증 수행하도록 변경

* feat: JWT 인증 필터 추가

* refactor: 회원가입 필요 여부는 헤더에 담아서 응답하도록 변경

* feat: atk, rtk 둘 다 만료 아닌 경우 rtk 재발급하는 로직 추가

* refactor: 커스텀 헤더 이름 변경

* refactor: 상수 클래스의 인스턴스화 막기

* refactor: 에러코드 위치 변경

* style: 포매팅 수정

* docs: 인증 API 스웨거 태그 추가

* chore: 환경변수 디폴트값 지정

* fix: 누락된 쉼표 추가

* style: 개행 추가

* fix: 컨트롤러 테스트에서 시큐리티 설정 제외

* feat: 애플 키파일로 시크릿 만드는 로직 임시 구현

* chore: 애플 프로바이더 및 클라이언트 정보 추가

* feat: 애플 요청 엔티티 컨버터 구현

* feat: 애플 요청 엔티티 컨버터 V2 구현

* feat: 애플 프로퍼티 로드하는 로직 구현

* docs: TODO 추가

* feat: 에러코드 추가

* feat: OIDC 로그인 실패 핸들러 추가

* feat: 커스텀 OAuth 엑세스 토큰 클라이언트 구현

* refactor: 한 라인에 한번의 작업만 수행하도록 개선

* fix: 오타 수정

* feat: 컨트롤러 테스트 임시 비활성화 처리

* refactor: 컴포넌트 추가

* feat: 시큐리티 설정 추가

* style: spotless 적용

* chore: 엑세스 토큰 시간 변경

* fix: OAuth 관련 설정 비활성화

* fix: OAuth 관련 환경변수 디폴트값 설정

* fix: 필터 모킹 추가

* docs: 주석 수정

* style: spotless 적용
* chore: service 패키지를 application으로 변경

* fix: long casting 이슈 해결
* refactor: 패키지 이동

* feat: 시큐리티 설정 변경

* refactor: 패키지 이동 경로 변경

* feat: 임시 회원가입 및 로그인 컨트롤러

* feat: 멤버 도메인에 아이디 및 비밀번호 추가

* feat: 임시 회원가입 구현

* refactor: 리퀘스트 패키지로 이동

* refactor: response 패키지로 이동

* feat: 아이디 유효성 검증 및 Transactional 추가

* feat: 임시 회원가입 및 로그인 인가 설정

* style: spotless

* feat: 가입 후 id 반환하도록 구현

* refactor: 사용하지 않는 의존성 제거

* feat: 시큐리티 http basic, form login 비활성화

* feat: 로그인 컨트롤러 구현

* feat: 로그인 및 토큰 발급 로직 구현

* fix: 비밀번호 일치 로직 수정

* feat: 로그인 시 게스트 멤버가 아닌지 검증

* fix: 에러 수정

* style: spotless 적용

* refactor: 임시 회원가입 후에도 토큰 발행하도록 수정

* style: spotless

* feat: 아이디 중복 체크 구현

* feat: readOnly = true 옵션 추가

* style: spotless
* refactor: MissionRecordTtl 클래스명 변경과 Key를 Long 타입으로 변경

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* refactor: MissionRecord create시 ttlFinishedAt 추가

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* feat: Mission 리스트 조회 시 사용되는 MissionStatus와 Reponse class 생성

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* refactor: QueryDsl findAllMission 쿼리메소드 로직과 네이밍 변경

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* feat: 미션 목록 조회시 MissionStatus도 반환하는 기능

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* style: 사용하지 않는 싱수 제거

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* test: Mission 리스트 조회 로직 변경으로 테스트 코드 수정

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* style: 미션 리스트 조회 Swagger Operation 변경

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* style: 출력문 제거

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

* style: spotless

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>

---------

Co-authored-by: uiurihappy <[email protected]>
Co-authored-by: uwoobeat <[email protected]>
* feat: missionId로 해당미션에 오늘 작성된 기록이 있는지 판별하는 existsByMissionIdAndToday 메소드 추가

* feat: 미션 기록 생성 시 오늘 기록된건이 존재하는지 validate 추가

* style: 주석제거

* style: 코드 포메팅 수정

* refactor: 오늘 등록한 미션 일지가 있는지 확인하는 queryDsl 메소드명 변경
* fix: 픽스처 삽입 로직 제거

* fix: 시큐리티 mock 인증 삽입 로직 제거

* fix: 테스트 코드 BeforeEach 멤버 생성 로직 추가

---------

Co-authored-by: uwoobeat <[email protected]>
Co-authored-by: ybchar <[email protected]>
* feat: 진행중인 미션 제거하는 기능

* fix: 이미 진행중인 미션 삭제에서 예외 제거

* fix: Transactional read only 제거

* move: 이미 진행중인 미션기록들 삭제 MissionRecord로 이동

* refactor: member final 키워드 추가

* remove: 사용하지 않는 의존성 제거
* feat: 회원 탈퇴 로직 구현

* feat: @kdomo 리뷰 반영

* fix: 마지막 로그인 시간 테스트 코드 삭제
* feat: member profile presigned URL 생성

* refactor: Profile Embeddable 객체 정적팩토리 메서드 적용

* refactor: OauthInfo Embeddable 객체 정적팩토리 메서드 적용

* feat: member profile 이미지 업로드 완료처리와 닉네임 변경

* style: spotless

* remove: 사용하지 않는 메소드 제거 (updateMemberStatus)

* style: swagger 응답 예시 값 추가

* refactor: 중복 ImageUrl 생성 코드 중복 제거
* feat: 회원 정보 조회 API

* style: spotless
* fix: 진행중인 미션기록 삭제할 때 QueryDsl 메소드 사용하도록 변경

* feat: Member final 키워드 추가
* hotfix: develop 서버 CORS 모든 요청 허용으로 변경

* style: spotless
* fix: imageFileExtension nullable 처리

* fix: 닉네임 Notnull 처리

* fix: 이미지 null로 넘어왔을 경우 닉네임만 수정

* style: spotless
* fix: 토큰 만료기간 env로 관리

* fix: 토큰 만료기간 env로 관리

* fix: 토큰 만료기간 default 설정
* feat: Mission 리스트 조회 시 응답값에 MissionRecordId 필드 추가

* feat: 인증 필요인 경우 missionRecordId 값 추가

* style: spotless

* test: MissionFindAllResponse 필드 추가로 test 수정

* style: spotless
* refactor: 고아 객체 사용하도록 개선

* feat: 현재 진행중인 미션기록 삭제 테스트

* style: spotless

* refactor: 엔티티 매니저 제거

* style: spotless

* refactor: 테스트 트랜잭션 제거 및 픽스쳐 분리

* fix: 오타 수정
* feat: 쿠키 유틸리티 구현

* feat: 토큰 재발급 로직 구현

* feat: CORS 설정에 헤더 추가

* feat: 기존 컨트롤러 쿠키에 토큰 추가

* fix: 임시 회원가입 API로 다시 호출하여 토큰 받을 수 있게 수정

* fix: 오타 수정
* chore: production build and deploy script 작성

* rafactor: key 대신 password로 변경

* rafactor: password 사용안하여 key로 변경

* chore: 트리거 릴리즈 태그로 변경

* chore: 이미지 태그 설정 부분 릴리즈 태그 값으로 변경

* chore: production deploy용 워크플로 생성
@kdomo kdomo merged commit 2faedc0 into main Jan 19, 2024
3 checks passed
@github-actions github-actions bot added the merged 머지된 PR label Jan 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged 머지된 PR
Projects
Status: 완료
Development

Successfully merging this pull request may close these issues.

3 participants