diff --git a/docs/verification/run_verification.sh b/docs/verification/run_verification.sh new file mode 100644 index 0000000..bfe226d --- /dev/null +++ b/docs/verification/run_verification.sh @@ -0,0 +1,81 @@ +#!/bin/bash +# 전환 결과 검증 스크립트 +# 사용법: ./run_verification.sh + +set -e + +REPORT_DATE=$(date '+%Y-%m-%d %H:%M:%S') +REPORT_FILE="verification_report_$(date '+%Y%m%d_%H%M%S').txt" + +echo "==========================================" > "$REPORT_FILE" +echo "전환 결과 검증 보고서" >> "$REPORT_FILE" +echo "실행 일시: $REPORT_DATE" >> "$REPORT_FILE" +echo "==========================================" >> "$REPORT_FILE" +echo "" >> "$REPORT_FILE" + +# 1. 산출물 검증 +echo "[1] 산출물 검증" >> "$REPORT_FILE" +echo "----------------------------------------" >> "$REPORT_FILE" + +# 소스 코드 구조 확인 +if [ -d "src/main/java" ]; then + echo "✓ 소스 코드 디렉토리 존재" >> "$REPORT_FILE" +else + echo "✗ 소스 코드 디렉토리 없음" >> "$REPORT_FILE" +fi + +# 의존성 파일 확인 +if [ -f "pom.xml" ] || [ -f "build.gradle" ]; then + echo "✓ 빌드 설정 파일 존재" >> "$REPORT_FILE" +else + echo "✗ 빌드 설정 파일 없음" >> "$REPORT_FILE" +fi + +echo "" >> "$REPORT_FILE" + +# 2. 테스트 검증 +echo "[2] 테스트 검증" >> "$REPORT_FILE" +echo "----------------------------------------" >> "$REPORT_FILE" + +# 테스트 디렉토리 확인 +if [ -d "src/test/java" ]; then + TEST_COUNT=$(find src/test/java -name "*Test.java" 2>/dev/null | wc -l) + echo "✓ 테스트 파일 수: $TEST_COUNT" >> "$REPORT_FILE" +else + echo "✗ 테스트 디렉토리 없음" >> "$REPORT_FILE" +fi + +echo "" >> "$REPORT_FILE" + +# 3. CI/CD 검증 +echo "[3] CI/CD 검증" >> "$REPORT_FILE" +echo "----------------------------------------" >> "$REPORT_FILE" + +# CI 설정 파일 확인 +if [ -f ".github/workflows/ci.yml" ] || [ -f ".gitlab-ci.yml" ] || [ -f "Jenkinsfile" ]; then + echo "✓ CI/CD 설정 파일 존재" >> "$REPORT_FILE" +else + echo "⚠ CI/CD 설정 파일 없음 (수동 검증 필요)" >> "$REPORT_FILE" +fi + +echo "" >> "$REPORT_FILE" + +# 4. 운영 리스크 검증 +echo "[4] 운영 리스크 검증" >> "$REPORT_FILE" +echo "----------------------------------------" >> "$REPORT_FILE" + +# 모니터링 설정 확인 +if [ -d "monitoring" ] || [ -f "prometheus.yml" ] || [ -f "grafana-dashboard.json" ]; then + echo "✓ 모니터링 설정 존재" >> "$REPORT_FILE" +else + echo "⚠ 모니터링 설정 없음 (수동 검증 필요)" >> "$REPORT_FILE" +fi + +echo "" >> "$REPORT_FILE" +echo "==========================================" >> "$REPORT_FILE" +echo "검증 완료" >> "$REPORT_FILE" +echo "==========================================" >> "$REPORT_FILE" + +cat "$REPORT_FILE" +echo "" +echo "상세 보고서: $REPORT_FILE"