From d4189a7baa816acc4e3ccfb94f26423601458c8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 01:52:53 +0900 Subject: [PATCH 1/8] =?UTF-8?q?setting:=20=EC=BD=94=EB=93=9C=EB=A0=88?= =?UTF-8?q?=EB=B9=97=20=EC=84=B8=ED=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .coderabbit.yaml diff --git a/.coderabbit.yaml b/.coderabbit.yaml new file mode 100644 index 0000000..46fb367 --- /dev/null +++ b/.coderabbit.yaml @@ -0,0 +1,14 @@ +language: 'ko-KR' +early_access: false +reviews: + profile: 'chill' + request_changes_workflow: false + high_level_summary: true + poem: true + review_status: true + collapse_walkthrough: false + auto_review: + enabled: true + drafts: false +chat: + auto_reply: true From a21dc87efcf1fb8936640c0265e627c10005f892 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 02:07:38 +0900 Subject: [PATCH 2/8] =?UTF-8?q?fix:=20=EC=BD=94=EB=93=9C=EB=A0=88=EB=B9=97?= =?UTF-8?q?=20=EC=84=A4=EC=A0=95=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 46fb367..feb2500 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -1,14 +1,49 @@ language: 'ko-KR' early_access: false + +code_generation_language: 'Korean' + +localization: + default_language: 'Korean' + reviews: - profile: 'chill' + profile: 'balanced' request_changes_workflow: false high_level_summary: true - poem: true + poem: false review_status: true collapse_walkthrough: false + summarize: true + comment_mode: inline + suggestions: true + accessibility_checks: true auto_review: enabled: true drafts: false + chat: auto_reply: true + +base_branches: + - '^main$' + - '^develop$' + - '^feature/.*$' + - '^hotfix/.*$' + +auto_generate: + docstrings: true + unit_tests: false + diagrams: false + +ignored_files: + - '^node_modules/' + - '^public/' + - '.*\\.lock$' + +security: + secrets_detection: true + lint_checks: true + +experimental: + enable_chat_threads: true + proactive_responses: false From fa126aee5e20329ed7068d1e270ab5f4e05c98e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 02:09:10 +0900 Subject: [PATCH 3/8] =?UTF-8?q?fix:=20=EC=97=90=EB=9F=AC=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index feb2500..040ecfb 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -1,3 +1,5 @@ +# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json + language: 'ko-KR' early_access: false @@ -7,10 +9,10 @@ localization: default_language: 'Korean' reviews: - profile: 'balanced' + profile: 'assertive' # ← 가장 중요한 변경! request_changes_workflow: false high_level_summary: true - poem: false + poem: true review_status: true collapse_walkthrough: false summarize: true @@ -28,7 +30,6 @@ base_branches: - '^main$' - '^develop$' - '^feature/.*$' - - '^hotfix/.*$' auto_generate: docstrings: true From 9420baa2b8b413c5ff95c86f90ebcb5b421e5124 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 02:28:46 +0900 Subject: [PATCH 4/8] =?UTF-8?q?fix:=20=EB=81=9D=EC=97=86=EB=8A=94=20?= =?UTF-8?q?=EC=88=98=EC=A0=95....?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 109 +++++++++++++++++++++++++++++------------------ 1 file changed, 68 insertions(+), 41 deletions(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 040ecfb..db1244e 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -1,50 +1,77 @@ -# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json - +# 리뷰 기본 언어 설정 (출력 언어 기준) language: 'ko-KR' -early_access: false - -code_generation_language: 'Korean' -localization: - default_language: 'Korean' +# 얼리 액세스 기능 사용 여부 +early_access: false +# ---------------------------- +# 리뷰 설정 +# ---------------------------- reviews: - profile: 'assertive' # ← 가장 중요한 변경! - request_changes_workflow: false - high_level_summary: true - poem: true - review_status: true - collapse_walkthrough: false - summarize: true - comment_mode: inline - suggestions: true - accessibility_checks: true - auto_review: - enabled: true - drafts: false + profile: 'assertive' # 리뷰 스타일: assertive → 더 많은 지적과 상세 피드백 제공 + request_changes_workflow: false # 리뷰 코멘트가 모두 해결되면 자동 승인 여부 (false = 수동) + high_level_summary: true # PR 상단에 요약 생성 + high_level_summary_in_walkthrough: true # 요약을 워크스루에도 포함 + review_status: true # 리뷰 진행 상태 메시지 표시 + commit_status: true # 리뷰 중이면 커밋 상태를 pending으로 설정 + fail_commit_status: false # 리뷰 실패 시 커밋 상태를 실패로 설정할지 여부 + collapse_walkthrough: false # 워크스루를 접힌 상태로 표시할지 여부 + changed_files_summary: true # 변경된 파일 요약 표시 + sequence_diagrams: true # 시퀀스 다이어그램 생성 + estimate_code_review_effort: true # 코드 리뷰 예상 난이도/시간 추정 + assess_linked_issues: true # 연결된 이슈와 변경사항의 연관도 평가 + related_issues: true # 관련 가능성이 있는 이슈 표시 + related_prs: true # 관련 가능성이 있는 PR 표시 + suggested_labels: true # 라벨 추천 (예: bug, enhancement) + auto_apply_labels: false # 추천 라벨을 자동으로 붙일지 여부 + suggested_reviewers: true # 리뷰어 추천 + auto_assign_reviewers: false # 추천된 리뷰어를 자동 할당할지 여부 + poem: false # 리뷰에 귀여운 시 추가 🐰 시러 + auto_title_placeholder: '@coderabbitai' # 제목에 이 키워드가 있으면 자동 생성됨 + summarize: true # 요약 자동 생성 + comment_mode: inline # 줄 단위 리뷰 코멘트 + suggestions: true # 코드 수정 diff 제안 포함 + accessibility_checks: true # 접근성 관련 리뷰 활성화 + abort_on_close: true # PR이 닫히거나 병합되면 리뷰 중단 + disable_cache: false # 캐시 비활성화 여부 (false = 캐시 사용) -chat: - auto_reply: true - -base_branches: - - '^main$' - - '^develop$' - - '^feature/.*$' + # 자동 리뷰 조건 설정 + auto_review: + enabled: true # 자동 리뷰 기능 활성화 + auto_incremental_review: true # push마다 자동 증분 리뷰 수행 + drafts: false # draft 상태의 PR도 리뷰할지 여부 + base_branches: # 리뷰 대상 브랜치 (기본 브랜치 외) + - '^main$' + - '^develop$' + - '^feature/.*$' -auto_generate: - docstrings: true - unit_tests: false - diagrams: false +# ---------------------------- +# Finishing Touches (자동 생성 요소) +# ---------------------------- +finishing_touches: + docstrings: + enabled: true # 코드에 docstring 자동 생성 + unit_tests: + enabled: false # 유닛 테스트 자동 생성은 비활성화 -ignored_files: - - '^node_modules/' - - '^public/' - - '.*\\.lock$' +# ---------------------------- +# 챗봇 설정 +# ---------------------------- +chat: + auto_reply: true # @태그 없이도 자동 응답 허용 -security: - secrets_detection: true - lint_checks: true +# ---------------------------- +# 코드 생성 설정 +# ---------------------------- +code_generation: + docstrings: + language: 'ko-KR' # Docstring 생성 시 사용할 언어 -experimental: - enable_chat_threads: true - proactive_responses: false +# ---------------------------- +# 리뷰할 경로 필터링 (리뷰 제외할 경로) +# 예: node_modules나 .lock 파일은 리뷰하지 않음 +# ---------------------------- +path_filters: + - '!**/node_modules/**' + - '!**/*.lock' + - '!**/*.snap' From e0db1105e3aeb3201ffaeabcfda901b1b083bc6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 02:36:20 +0900 Subject: [PATCH 5/8] =?UTF-8?q?feat:=20ai=EA=B0=80=20approve=EB=A5=BC..=3F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index db1244e..31893ab 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -9,7 +9,7 @@ early_access: false # ---------------------------- reviews: profile: 'assertive' # 리뷰 스타일: assertive → 더 많은 지적과 상세 피드백 제공 - request_changes_workflow: false # 리뷰 코멘트가 모두 해결되면 자동 승인 여부 (false = 수동) + request_changes_workflow: true # 리뷰 코멘트가 모두 해결되면 자동 승인 여부 (false = 수동) high_level_summary: true # PR 상단에 요약 생성 high_level_summary_in_walkthrough: true # 요약을 워크스루에도 포함 review_status: true # 리뷰 진행 상태 메시지 표시 From 81b418313dc474da67e891007a88c9ee692b0d05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 02:46:21 +0900 Subject: [PATCH 6/8] =?UTF-8?q?feat:=20=ED=86=A4=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 31893ab..31e15a9 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -1,6 +1,6 @@ # 리뷰 기본 언어 설정 (출력 언어 기준) language: 'ko-KR' - +tone_instructions: '모든 설명과 리뷰는 한국어로 작성해 주세요. 말투는 공손하게 적어주세요. 설명과 리뷰는 자세하게 해주세요.' # 얼리 액세스 기능 사용 여부 early_access: false From 3c165226de8823ebc07d16d26e0becee1c8ec0a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 03:06:41 +0900 Subject: [PATCH 7/8] =?UTF-8?q?fix:=20=EC=97=90=EB=9F=AC=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/main.yaml | 104 ++++++++++++++++++++---------------- 1 file changed, 58 insertions(+), 46 deletions(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 94966cc..b196879 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -1,52 +1,64 @@ -name: cicd action +language: 'ko-KR' # 리뷰 언어 설정 (전체 시스템 메시지에 영향) +early_access: false # 얼리엑세스 기능 사용 여부 +tone_instructions: '모든 설명과 리뷰는 공손하고 간결하게, 한국어로 작성해 주세요.' # 리뷰 말투 스타일 요청 -on: - push: - branches: - - main +reviews: + profile: 'assertive' # 리뷰 스타일: chill (최소 피드백) / assertive (꼼꼼한 피드백) + request_changes_workflow: true # 수정 요청이 있으면 자동으로 Request Changes 처리, 없으면 Approve + high_level_summary: true # PR 요약 생성 + high_level_summary_in_walkthrough: true # 워크스루에도 요약 표시 + auto_title_placeholder: '@coderabbitai' # PR 제목 자동 생성을 위한 키워드 + review_status: true # 리뷰 상태 메시지 출력 + commit_status: true # GitHub 상태 체크와 연동 (리뷰 중: pending / 완료: success) + fail_commit_status: false # 리뷰 실패 시 커밋 상태를 failure로 표시할지 여부 + collapse_walkthrough: false # 워크스루 접기 기능 비활성화 (false = 항상 펼쳐짐) + changed_files_summary: true # 변경 파일 요약 표시 + sequence_diagrams: true # 시퀀스 다이어그램 생성 + estimate_code_review_effort: true # 코드 리뷰 난이도/예상 시간 추정 표시 + assess_linked_issues: true # 연결된 이슈 반영 여부 평가 + related_issues: true # 관련 이슈 제안 + related_prs: true # 관련 PR 제안 + suggested_labels: true # 라벨 추천 + auto_apply_labels: false # 추천 라벨 자동 적용 여부 + suggested_reviewers: true # 리뷰어 추천 + auto_assign_reviewers: false # 리뷰어 자동 할당 여부 + poem: false # 리뷰에 시 포함 x + summarize: true # 리뷰 요약 포함 + comment_mode: inline # 줄 단위 코멘트 작성 + suggestions: true # 코드 수정 diff 제안 포함 + accessibility_checks: true # 접근성 리뷰 포함 + abort_on_close: true # PR 닫히면 리뷰 중단 + disable_cache: false # 캐시 사용 (false = 캐시 사용함) -jobs: - build: - runs-on: ubuntu-latest + # 🔍 리뷰 대상 브랜치 및 자동 리뷰 설정 + auto_review: + enabled: true # 자동 리뷰 활성화 + auto_incremental_review: true # push할 때마다 증분 리뷰 수행 + drafts: false # draft 상태 PR은 리뷰 제외 + base_branches: # 기본 브랜치 외 리뷰 대상 브랜치 + - '^main$' + - '^develop$' + - '^feature/.*$' + - '^hotfix/.*$' - steps: - - name: Checkout source code - uses: actions/checkout@v3 + # 🧼 리뷰 제외할 파일/디렉토리 + path_filters: + - '!**/node_modules/**' # node_modules 제외 + - '!**/*.lock' # yarn.lock, package-lock.json 제외 + - '!**/*.snap' # snapshot 파일 제외 - - name: Check Node.js version - run: node -v +# 🧠 Finishing Touches (AI가 자동 생성하는 보조 기능들) +finishing_touches: + docstrings: + enabled: true # 함수에 docstring 자동 생성 + unit_tests: + enabled: false # 유닛 테스트 자동 생성 (false = 비활성화) - - name: Install pnpm - run: npm install -g pnpm +# 💬 챗봇 설정 +chat: + auto_reply: true # @coderabbitai 태그 없이도 자동 응답 - - name: Create .env file - run: | - echo "VITE_API_BASE_URL=${{ secrets.VITE_API_BASE_URL }}" >> .env - - name: Install dependencies - run: pnpm install - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: ${{ secrets.AWS_REGION }} - - - name: Generate build - run: pnpm run build - - - name: Deploy to S3 - run: | - aws s3 cp --recursive --region ap-northeast-2 dist s3://${{ secrets.AWS_BUCKET_NAME }} - - - name: Invalidate CloudFront Cache - run: aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DISTRIBUTION_ID }} --paths "/*" - continue-on-error: true - - - name: Notify Discord - if: success() - run: | - curl -H "Content-Type: application/json" \ - -X POST \ - -d "{\"content\": \"✅ 배포가 완료되었습니다! 🎉 (브랜치: main)\"}" \ - ${{ secrets.DISCORD_WEBHOOK_URL }} +# 🧾 코드 생성 관련 설정 (특히 docstring 생성 언어) +code_generation: + docstrings: + language: 'ko-KR' # Docstring 생성 시 한국어 사용 From aabf27325c4a9cbe5ed88ef018bfe16e47b3a54b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=97=B0=EC=A7=84?= Date: Tue, 5 Aug 2025 03:12:10 +0900 Subject: [PATCH 8/8] =?UTF-8?q?fix:=20=EB=B0=94=EB=B3=B4=EC=A7=93=20?= =?UTF-8?q?=EC=88=98=EC=A0=95..=20=EC=9E=90=EA=B3=A0=EC=8B=9C=ED=8D=BC?= =?UTF-8?q?=EC=9A=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .coderabbit.yaml | 103 ++++++++++++++++------------------- .github/workflows/main.yaml | 104 ++++++++++++++++-------------------- 2 files changed, 91 insertions(+), 116 deletions(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 31e15a9..b196879 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -1,77 +1,64 @@ -# 리뷰 기본 언어 설정 (출력 언어 기준) -language: 'ko-KR' -tone_instructions: '모든 설명과 리뷰는 한국어로 작성해 주세요. 말투는 공손하게 적어주세요. 설명과 리뷰는 자세하게 해주세요.' -# 얼리 액세스 기능 사용 여부 -early_access: false +language: 'ko-KR' # 리뷰 언어 설정 (전체 시스템 메시지에 영향) +early_access: false # 얼리엑세스 기능 사용 여부 +tone_instructions: '모든 설명과 리뷰는 공손하고 간결하게, 한국어로 작성해 주세요.' # 리뷰 말투 스타일 요청 -# ---------------------------- -# 리뷰 설정 -# ---------------------------- reviews: - profile: 'assertive' # 리뷰 스타일: assertive → 더 많은 지적과 상세 피드백 제공 - request_changes_workflow: true # 리뷰 코멘트가 모두 해결되면 자동 승인 여부 (false = 수동) - high_level_summary: true # PR 상단에 요약 생성 - high_level_summary_in_walkthrough: true # 요약을 워크스루에도 포함 - review_status: true # 리뷰 진행 상태 메시지 표시 - commit_status: true # 리뷰 중이면 커밋 상태를 pending으로 설정 - fail_commit_status: false # 리뷰 실패 시 커밋 상태를 실패로 설정할지 여부 - collapse_walkthrough: false # 워크스루를 접힌 상태로 표시할지 여부 - changed_files_summary: true # 변경된 파일 요약 표시 + profile: 'assertive' # 리뷰 스타일: chill (최소 피드백) / assertive (꼼꼼한 피드백) + request_changes_workflow: true # 수정 요청이 있으면 자동으로 Request Changes 처리, 없으면 Approve + high_level_summary: true # PR 요약 생성 + high_level_summary_in_walkthrough: true # 워크스루에도 요약 표시 + auto_title_placeholder: '@coderabbitai' # PR 제목 자동 생성을 위한 키워드 + review_status: true # 리뷰 상태 메시지 출력 + commit_status: true # GitHub 상태 체크와 연동 (리뷰 중: pending / 완료: success) + fail_commit_status: false # 리뷰 실패 시 커밋 상태를 failure로 표시할지 여부 + collapse_walkthrough: false # 워크스루 접기 기능 비활성화 (false = 항상 펼쳐짐) + changed_files_summary: true # 변경 파일 요약 표시 sequence_diagrams: true # 시퀀스 다이어그램 생성 - estimate_code_review_effort: true # 코드 리뷰 예상 난이도/시간 추정 - assess_linked_issues: true # 연결된 이슈와 변경사항의 연관도 평가 - related_issues: true # 관련 가능성이 있는 이슈 표시 - related_prs: true # 관련 가능성이 있는 PR 표시 - suggested_labels: true # 라벨 추천 (예: bug, enhancement) - auto_apply_labels: false # 추천 라벨을 자동으로 붙일지 여부 + estimate_code_review_effort: true # 코드 리뷰 난이도/예상 시간 추정 표시 + assess_linked_issues: true # 연결된 이슈 반영 여부 평가 + related_issues: true # 관련 이슈 제안 + related_prs: true # 관련 PR 제안 + suggested_labels: true # 라벨 추천 + auto_apply_labels: false # 추천 라벨 자동 적용 여부 suggested_reviewers: true # 리뷰어 추천 - auto_assign_reviewers: false # 추천된 리뷰어를 자동 할당할지 여부 - poem: false # 리뷰에 귀여운 시 추가 🐰 시러 - auto_title_placeholder: '@coderabbitai' # 제목에 이 키워드가 있으면 자동 생성됨 - summarize: true # 요약 자동 생성 - comment_mode: inline # 줄 단위 리뷰 코멘트 + auto_assign_reviewers: false # 리뷰어 자동 할당 여부 + poem: false # 리뷰에 시 포함 x + summarize: true # 리뷰 요약 포함 + comment_mode: inline # 줄 단위 코멘트 작성 suggestions: true # 코드 수정 diff 제안 포함 - accessibility_checks: true # 접근성 관련 리뷰 활성화 - abort_on_close: true # PR이 닫히거나 병합되면 리뷰 중단 - disable_cache: false # 캐시 비활성화 여부 (false = 캐시 사용) + accessibility_checks: true # 접근성 리뷰 포함 + abort_on_close: true # PR 닫히면 리뷰 중단 + disable_cache: false # 캐시 사용 (false = 캐시 사용함) - # 자동 리뷰 조건 설정 + # 🔍 리뷰 대상 브랜치 및 자동 리뷰 설정 auto_review: - enabled: true # 자동 리뷰 기능 활성화 - auto_incremental_review: true # push마다 자동 증분 리뷰 수행 - drafts: false # draft 상태의 PR도 리뷰할지 여부 - base_branches: # 리뷰 대상 브랜치 (기본 브랜치 외) + enabled: true # 자동 리뷰 활성화 + auto_incremental_review: true # push할 때마다 증분 리뷰 수행 + drafts: false # draft 상태 PR은 리뷰 제외 + base_branches: # 기본 브랜치 외 리뷰 대상 브랜치 - '^main$' - '^develop$' - '^feature/.*$' + - '^hotfix/.*$' -# ---------------------------- -# Finishing Touches (자동 생성 요소) -# ---------------------------- + # 🧼 리뷰 제외할 파일/디렉토리 + path_filters: + - '!**/node_modules/**' # node_modules 제외 + - '!**/*.lock' # yarn.lock, package-lock.json 제외 + - '!**/*.snap' # snapshot 파일 제외 + +# 🧠 Finishing Touches (AI가 자동 생성하는 보조 기능들) finishing_touches: docstrings: - enabled: true # 코드에 docstring 자동 생성 + enabled: true # 함수에 docstring 자동 생성 unit_tests: - enabled: false # 유닛 테스트 자동 생성은 비활성화 + enabled: false # 유닛 테스트 자동 생성 (false = 비활성화) -# ---------------------------- -# 챗봇 설정 -# ---------------------------- +# 💬 챗봇 설정 chat: - auto_reply: true # @태그 없이도 자동 응답 허용 + auto_reply: true # @coderabbitai 태그 없이도 자동 응답 -# ---------------------------- -# 코드 생성 설정 -# ---------------------------- +# 🧾 코드 생성 관련 설정 (특히 docstring 생성 언어) code_generation: docstrings: - language: 'ko-KR' # Docstring 생성 시 사용할 언어 - -# ---------------------------- -# 리뷰할 경로 필터링 (리뷰 제외할 경로) -# 예: node_modules나 .lock 파일은 리뷰하지 않음 -# ---------------------------- -path_filters: - - '!**/node_modules/**' - - '!**/*.lock' - - '!**/*.snap' + language: 'ko-KR' # Docstring 생성 시 한국어 사용 diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index b196879..94966cc 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -1,64 +1,52 @@ -language: 'ko-KR' # 리뷰 언어 설정 (전체 시스템 메시지에 영향) -early_access: false # 얼리엑세스 기능 사용 여부 -tone_instructions: '모든 설명과 리뷰는 공손하고 간결하게, 한국어로 작성해 주세요.' # 리뷰 말투 스타일 요청 +name: cicd action -reviews: - profile: 'assertive' # 리뷰 스타일: chill (최소 피드백) / assertive (꼼꼼한 피드백) - request_changes_workflow: true # 수정 요청이 있으면 자동으로 Request Changes 처리, 없으면 Approve - high_level_summary: true # PR 요약 생성 - high_level_summary_in_walkthrough: true # 워크스루에도 요약 표시 - auto_title_placeholder: '@coderabbitai' # PR 제목 자동 생성을 위한 키워드 - review_status: true # 리뷰 상태 메시지 출력 - commit_status: true # GitHub 상태 체크와 연동 (리뷰 중: pending / 완료: success) - fail_commit_status: false # 리뷰 실패 시 커밋 상태를 failure로 표시할지 여부 - collapse_walkthrough: false # 워크스루 접기 기능 비활성화 (false = 항상 펼쳐짐) - changed_files_summary: true # 변경 파일 요약 표시 - sequence_diagrams: true # 시퀀스 다이어그램 생성 - estimate_code_review_effort: true # 코드 리뷰 난이도/예상 시간 추정 표시 - assess_linked_issues: true # 연결된 이슈 반영 여부 평가 - related_issues: true # 관련 이슈 제안 - related_prs: true # 관련 PR 제안 - suggested_labels: true # 라벨 추천 - auto_apply_labels: false # 추천 라벨 자동 적용 여부 - suggested_reviewers: true # 리뷰어 추천 - auto_assign_reviewers: false # 리뷰어 자동 할당 여부 - poem: false # 리뷰에 시 포함 x - summarize: true # 리뷰 요약 포함 - comment_mode: inline # 줄 단위 코멘트 작성 - suggestions: true # 코드 수정 diff 제안 포함 - accessibility_checks: true # 접근성 리뷰 포함 - abort_on_close: true # PR 닫히면 리뷰 중단 - disable_cache: false # 캐시 사용 (false = 캐시 사용함) +on: + push: + branches: + - main - # 🔍 리뷰 대상 브랜치 및 자동 리뷰 설정 - auto_review: - enabled: true # 자동 리뷰 활성화 - auto_incremental_review: true # push할 때마다 증분 리뷰 수행 - drafts: false # draft 상태 PR은 리뷰 제외 - base_branches: # 기본 브랜치 외 리뷰 대상 브랜치 - - '^main$' - - '^develop$' - - '^feature/.*$' - - '^hotfix/.*$' +jobs: + build: + runs-on: ubuntu-latest - # 🧼 리뷰 제외할 파일/디렉토리 - path_filters: - - '!**/node_modules/**' # node_modules 제외 - - '!**/*.lock' # yarn.lock, package-lock.json 제외 - - '!**/*.snap' # snapshot 파일 제외 + steps: + - name: Checkout source code + uses: actions/checkout@v3 -# 🧠 Finishing Touches (AI가 자동 생성하는 보조 기능들) -finishing_touches: - docstrings: - enabled: true # 함수에 docstring 자동 생성 - unit_tests: - enabled: false # 유닛 테스트 자동 생성 (false = 비활성화) + - name: Check Node.js version + run: node -v -# 💬 챗봇 설정 -chat: - auto_reply: true # @coderabbitai 태그 없이도 자동 응답 + - name: Install pnpm + run: npm install -g pnpm -# 🧾 코드 생성 관련 설정 (특히 docstring 생성 언어) -code_generation: - docstrings: - language: 'ko-KR' # Docstring 생성 시 한국어 사용 + - name: Create .env file + run: | + echo "VITE_API_BASE_URL=${{ secrets.VITE_API_BASE_URL }}" >> .env + - name: Install dependencies + run: pnpm install + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ secrets.AWS_REGION }} + + - name: Generate build + run: pnpm run build + + - name: Deploy to S3 + run: | + aws s3 cp --recursive --region ap-northeast-2 dist s3://${{ secrets.AWS_BUCKET_NAME }} + + - name: Invalidate CloudFront Cache + run: aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DISTRIBUTION_ID }} --paths "/*" + continue-on-error: true + + - name: Notify Discord + if: success() + run: | + curl -H "Content-Type: application/json" \ + -X POST \ + -d "{\"content\": \"✅ 배포가 완료되었습니다! 🎉 (브랜치: main)\"}" \ + ${{ secrets.DISCORD_WEBHOOK_URL }}