third - HJ-Rich/2022-MyRSS GitHub Wiki
- RestDocs와 테스트를 이용해 API 문서를 자동으로 생성하도록 구성
- build.gradle 에 플러그인 추가 및 태스크 설정 추가
- Documentation Test 작성
- build 결과물인 snippet을 조합하는 adoc 작성
- adoc들을 통합하는 adoc 작성
- index.html로 문서 제공
테스트 전략을 수립하고 자동화 테스트 코드를 추가
- Github Actions를 이용해 PR Open, Synchronize, Merge, Push 이벤트 발생 시 CI 수행
- gradle build 기반으로 CI 수행
- 테스트 수행 결과로 생성되는 xml파일을 통해 테스트 커버리지, 테스트 실패 사항을 PR Checks 코멘트로 자동 등록하도록 구성
- Slack Notification 라이브러리를 통해 CI 중 빌드 실패 발생 시 Slack 알림 전송
- 빌드 결과를 SonarQube 서버에 전송하여 PR Decoration 코멘트로 작성해줌
- Jenkins를 이용한 CD에서도 배포 전 gradle build를 수행하기에 테스트 과정이 포함됨
- 빌드 실패시 배포되지 않으며, Slack으로 알림 전송하도록 구성
- Github Actions 를 이용한 CI 테스트 자동화
- Jacoco with Github Action
- logback 을 이용한 로컬, 개발, 운영 환경별 별도 설정 진행
- 로컬 설정
- springframework : INFO 이상
- com.myrssmanager : DEBUG 이상
- 출력 위치 : 콘솔
- 개발 및 운영 설정
- springframework : INFO 이상
- com.myrssmanager : INFO 이상 (개발에선 DEBUG 이상)
- 출력 위치 : 파일 출력
- 파일 출력 상세 설정 :
- RollingFileAppender를 이용해 로그 레벨 별 별도 파일로 출력하도록 구성
- RollingFileAppender를 이용해 날짜별로 구분, 10MB 이상이 될 경우 파일별로도 구분하도록 구성
- RollingFileAppender를 AsyncAppender 로 감싸서 비동기로 출력하게 하여 성능 향상 노림
실 서버 도메인 연결, HTTPS 적용 + WS + WAS 연결을 통해 443포트로 데모
필수 요구사항 전체 보기
⚠️ **GitHub.com Fallback** ⚠️