-
Notifications
You must be signed in to change notification settings - Fork 2
[FEAT] api-user BFF 전환 #73
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
Changes from all commits
9fb5eb4
9c57681
53e60a2
5b8d3f8
62493a8
f5c5787
f0add28
a18a8bd
16f21c1
706c1a4
1acd9b3
37b1edd
f462148
a2faf97
051e6ad
84bd7b4
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,20 +19,58 @@ jobs: | |
| TEST_REPORT: true | ||
|
|
||
| services: | ||
| mysql: | ||
| mysql-reservation: | ||
| image: mysql:8.0 | ||
| env: | ||
| MYSQL_ROOT_PASSWORD: "" | ||
| MYSQL_ALLOW_EMPTY_PASSWORD: "yes" | ||
| MYSQL_DATABASE: test | ||
| MYSQL_DATABASE: wellmeet_reservation | ||
| MYSQL_ROOT_PASSWORD: password | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 보안: 하드코딩된 비밀번호를 GitHub Secrets로 변경하세요. CI 환경이지만, 모든 MySQL 서비스에 동일한 평문 비밀번호( - MYSQL_ROOT_PASSWORD: password
+ MYSQL_ROOT_PASSWORD: ${{ secrets.MYSQL_ROOT_PASSWORD || 'test-password' }}또는 모든 서비스에서 일관성 있게: - MYSQL_ROOT_PASSWORD: password
+ MYSQL_ROOT_PASSWORD: test-passwordAlso applies to: 39-39, 52-52, 65-65 🤖 Prompt for AI Agents |
||
| ports: | ||
| - 3306:3306 | ||
| options: >- | ||
| --health-cmd="mysqladmin ping" | ||
| --health-cmd="mysqladmin ping -ppassword" | ||
| --health-interval=10s | ||
| --health-timeout=5s | ||
| --health-retries=3 | ||
|
|
||
|
|
||
| mysql-member: | ||
| image: mysql:8.0 | ||
| env: | ||
| MYSQL_DATABASE: wellmeet_member | ||
| MYSQL_ROOT_PASSWORD: password | ||
| ports: | ||
| - 3307:3306 | ||
| options: >- | ||
| --health-cmd="mysqladmin ping -ppassword" | ||
| --health-interval=10s | ||
| --health-timeout=5s | ||
| --health-retries=3 | ||
|
|
||
| mysql-owner: | ||
| image: mysql:8.0 | ||
| env: | ||
| MYSQL_DATABASE: wellmeet_owner | ||
| MYSQL_ROOT_PASSWORD: password | ||
| ports: | ||
| - 3308:3306 | ||
| options: >- | ||
| --health-cmd="mysqladmin ping -ppassword" | ||
| --health-interval=10s | ||
| --health-timeout=5s | ||
| --health-retries=3 | ||
|
|
||
| mysql-restaurant: | ||
| image: mysql:8.0 | ||
| env: | ||
| MYSQL_DATABASE: wellmeet_restaurant | ||
| MYSQL_ROOT_PASSWORD: password | ||
| ports: | ||
| - 3309:3306 | ||
| options: >- | ||
| --health-cmd="mysqladmin ping -ppassword" | ||
| --health-interval=10s | ||
| --health-timeout=5s | ||
| --health-retries=3 | ||
|
|
||
| redis: | ||
| image: redis:7-alpine | ||
| ports: | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,78 @@ | ||
| name: dev-discovery-cd | ||
|
|
||
| on: | ||
| push: | ||
| branches: | ||
| - "develop" | ||
| paths: | ||
| - 'discovery-server/**' | ||
| - 'build.gradle' | ||
| - 'settings.gradle' | ||
| - '.github/workflows/Dev_Discovery_CD.yml' | ||
|
|
||
| permissions: | ||
| contents: read | ||
| checks: write | ||
| actions: read | ||
| pull-requests: write | ||
|
|
||
| jobs: | ||
| test: | ||
| uses: ./.github/workflows/Dev_CI.yml | ||
|
|
||
| build: | ||
| needs: test | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Checkout Code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up JDK 21 | ||
| uses: actions/setup-java@v4 | ||
| with: | ||
| distribution: 'temurin' | ||
| java-version: '21' | ||
|
|
||
| - name: Make gradlew executable | ||
| run: chmod +x gradlew | ||
|
|
||
| - name: bootJar with Gradle | ||
| run: ./gradlew :discovery-server:bootJar --info | ||
|
|
||
| - name: Change artifact file name | ||
| run: mv discovery-server/build/libs/*.jar discovery-server/build/libs/app.jar | ||
|
|
||
| - name: Upload artifact file | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ./discovery-server/build/libs/app.jar | ||
| if-no-files-found: error | ||
|
|
||
| - name: Upload deploy scripts | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ./scripts/dev/ | ||
| if-no-files-found: error | ||
|
|
||
| deploy: | ||
| needs: build | ||
| runs-on: dev-discovery-server | ||
|
|
||
| steps: | ||
| - name: Download artifact file | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ~/app | ||
|
|
||
| - name: Download deploy scripts | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ~/app/scripts | ||
|
|
||
| - name: Replace application to latest | ||
| run: sudo sh ~/app/scripts/replace-new-version.sh | ||
|
Comment on lines
+77
to
+78
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain배포 단계의 sudo 사용 검토 Line 78에서
🏁 Script executed: #!/bin/bash
# Description: Check the deployment script for security and error handling
# Check if the deployment script exists in the repository
if [ -f "scripts/dev/replace-new-version.sh" ]; then
echo "=== Deployment script found ==="
echo "Script content:"
cat scripts/dev/replace-new-version.sh
echo ""
echo "=== Script permissions ==="
ls -la scripts/dev/replace-new-version.sh
else
echo "Warning: Deployment script scripts/dev/replace-new-version.sh not found in repository"
fiLength of output: 1042 배포 스크립트의 보안 및 에러 처리 검증 완료 검증 결과, 원래 리뷰 의견의 우려사항이 부분적으로 확인되었습니다: 확인된 문제점:
권장사항:
🤖 Prompt for AI Agents |
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,79 @@ | ||
| name: dev-member-cd | ||
|
|
||
| on: | ||
| push: | ||
| branches: | ||
| - "develop" | ||
| paths: | ||
| - 'domain-member/**' | ||
| - 'domain-common/**' | ||
| - 'build.gradle' | ||
| - 'settings.gradle' | ||
| - 'Dev_Domain_Member_CD.yml' | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 트리거 경로 설정 수정 필요 line 12의 경로는 수정 권장사항: - - 'Dev_Domain_Member_CD.yml'
+ - '.github/workflows/Dev_Domain_Member_CD.yml'Also applies to: 12-12 🤖 Prompt for AI Agents |
||
|
|
||
| permissions: | ||
| contents: read | ||
| checks: write | ||
| actions: read | ||
| pull-requests: write | ||
|
|
||
| jobs: | ||
| test: | ||
| uses: ./.github/workflows/Dev_CI.yml | ||
|
|
||
| build: | ||
| needs: test | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Checkout Code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up JDK 21 | ||
| uses: actions/setup-java@v4 | ||
| with: | ||
| distribution: 'temurin' | ||
| java-version: '21' | ||
|
|
||
| - name: Make gradlew executable | ||
| run: chmod +x gradlew | ||
|
|
||
| - name: bootJar with Gradle | ||
| run: ./gradlew :domain-member:bootJar --info | ||
|
|
||
| - name: Change artifact file name | ||
| run: mv domain-member/build/libs/*.jar domain-member/build/libs/app.jar | ||
|
|
||
| - name: Upload artifact file | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ./domain-member/build/libs/app.jar | ||
| if-no-files-found: error | ||
|
|
||
| - name: Upload deploy scripts | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ./scripts/dev/ | ||
| if-no-files-found: error | ||
|
|
||
| deploy: | ||
| needs: build | ||
| runs-on: dev-domain-member | ||
|
|
||
| steps: | ||
| - name: Download artifact file | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ~/app | ||
|
|
||
| - name: Download deploy scripts | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ~/app/scripts | ||
|
|
||
| - name: Replace application to latest | ||
| run: sudo sh ~/app/scripts/replace-new-version.sh | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,79 @@ | ||
| name: dev-owner-domain-cd | ||
|
|
||
| on: | ||
| push: | ||
| branches: | ||
| - "develop" | ||
| paths: | ||
| - 'domain-owner/**' | ||
| - 'domain-common/**' | ||
| - 'build.gradle' | ||
| - 'settings.gradle' | ||
| - 'Dev_Domain_Owner_CD.yml' | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 트리거 경로 설정 수정 필요 line 12의 경로는 수정 권장사항: - - 'Dev_Domain_Owner_CD.yml'
+ - '.github/workflows/Dev_Domain_Owner_CD.yml'Also applies to: 12-12 🤖 Prompt for AI Agents |
||
|
|
||
| permissions: | ||
| contents: read | ||
| checks: write | ||
| actions: read | ||
| pull-requests: write | ||
|
|
||
| jobs: | ||
| test: | ||
| uses: ./.github/workflows/Dev_CI.yml | ||
|
|
||
| build: | ||
| needs: test | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Checkout Code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up JDK 21 | ||
| uses: actions/setup-java@v4 | ||
| with: | ||
| distribution: 'temurin' | ||
| java-version: '21' | ||
|
|
||
| - name: Make gradlew executable | ||
| run: chmod +x gradlew | ||
|
|
||
| - name: bootJar with Gradle | ||
| run: ./gradlew :domain-owner:bootJar --info | ||
|
|
||
| - name: Change artifact file name | ||
| run: mv domain-owner/build/libs/*.jar domain-owner/build/libs/app.jar | ||
|
|
||
| - name: Upload artifact file | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ./domain-owner/build/libs/app.jar | ||
| if-no-files-found: error | ||
|
|
||
| - name: Upload deploy scripts | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ./scripts/dev/ | ||
| if-no-files-found: error | ||
|
|
||
| deploy: | ||
| needs: build | ||
| runs-on: dev-domain-owner | ||
|
|
||
| steps: | ||
| - name: Download artifact file | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: app-artifact | ||
| path: ~/app | ||
|
|
||
| - name: Download deploy scripts | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: deploy-scripts | ||
| path: ~/app/scripts | ||
|
|
||
| - name: Replace application to latest | ||
| run: sudo sh ~/app/scripts/replace-new-version.sh | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
경로 트리거 변경이 실제 모듈 의존성과 일치하는지 확인이 필요합니다.
워크플로우 트리거가
domain/**및domain-redis/**패턴에서domain-common/**,infra-redis/**,infra-kafka/**로 변경되었습니다. BFF 전환에 따른 변경으로 보이지만, 다음을 확인해 주세요:domain/**모듈(예: domain-user, domain-restaurant 등)에 대한 의존성이 완전히 제거되었는지다음 스크립트로 모듈 구조와 의존성을 확인해 주세요:
[/request_verification]
🏁 Script executed:
Length of output: 668
I need to check the actual dependencies in
api-user/build.gradleto verify if the workflow trigger change is appropriate.[/run_scripts]
🏁 Script executed:
Length of output: 784
workflow 트리거에
domain-common/**을 포함하는 것은 제거하세요.검증 결과,
api-user/build.gradle의 실제 의존성은 infra-redis와 infra-kafka만 포함합니다. 어떤 domain 모듈도 의존하지 않습니다.현재 설정:
올바른 설정:
domain-common/**은 실제 의존성이 없으므로 제거하세요.🤖 Prompt for AI Agents