From f0e2e626421b3ea03cd6982e99e12ca896ef3498 Mon Sep 17 00:00:00 2001 From: pricelees Date: Fri, 27 Jun 2025 19:44:25 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20run.sh=20=EC=8A=A4=ED=81=AC?= =?UTF-8?q?=EB=A6=BD=ED=8A=B8=EC=97=90=EC=84=9C=EC=9D=98=20=ED=85=8C?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20=EC=88=9C=EC=84=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- run.sh | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/run.sh b/run.sh index 9283e16..bd20829 100755 --- a/run.sh +++ b/run.sh @@ -3,13 +3,7 @@ echo "0. 실행 중인 모든 컨테이너 종료" find docker/ -name 'docker-compose*.yml' -exec docker compose -f {} down --remove-orphans \; echo "0. SSL 인증서 생성" -if command -v keytool &> /dev/null -then - echo "keytool이 설치되어 있습니다. keytool을 실행합니다..." - ./keygen.sh -else - echo "keytool이 설치되어 있지 않습니다. 업로드된 파일을 그대로 사용합니다." -fi +./keygen.sh echo " " echo "======================" @@ -43,44 +37,49 @@ echo "======================" echo " " echo "4. 애플리케이션 실행 및 테스트" - echo "[4-1] PLAINTEXT 모드" +echo "[4-1] 토픽 초기화 및 초기 레코드 추가" +./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.deleteAllExistTopics" +./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.produceRecords" + rm docker/.env echo "RUN_ENVIRONMENT=docker" > docker/.env echo "CONSUMER_PROTOCOL=plaintext" >> docker/.env +echo "[4-1] 애플리케이션 실행" docker compose -f docker/docker-compose-application.yml up -d -echo "[4-1] 실행 후 30초 대기..." -sleep 30 -echo "[4-1] 테스트 시작" -./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.produceRecords" -echo "[4-1] 테스트 완료. SSL 모드 실행 전 2분 대기.." -sleep 120 -echo "[4-1] 토픽 초기화.." -./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.deleteAllExistTopics" +echo "[4-1] 2분 대기후 애플리케이션 종료" +sleep 120 +docker logs client-app > app-plaintext.log + +docker compose -f docker/docker-compose-application.yml down + +echo "카프카 브로커 재시작 후 30초 대기.." +docker compose -f docker/docker-compose-kafka-cluster.yml down +docker compose -f docker/docker-compose-kafka-cluster.yml up -d +sleep 30 echo " " echo "---------------------" echo " " echo "[4-2] SSL 모드" +echo "[4-2] 토픽 초기화 및 초기 레코드 추가" +./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.deleteAllExistTopics" +./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.produceRecords" + rm docker/.env echo "RUN_ENVIRONMENT=docker" > docker/.env echo "CONSUMER_PROTOCOL=ssl" >> docker/.env -echo "[4-2] 애플리케이션 재시작" +echo "[4-2] 애플리케이션 실행" docker compose -f docker/docker-compose-application.yml down docker compose -f docker/docker-compose-application.yml up -d -echo "[4-2] 실행 후 30초 대기..." -sleep 30 - -echo "[4-2] 테스트 시작" -./gradlew clean test --tests "com.sangdol.consumer.test.TestUtils.produceRecords" - -echo "[4-2] 이전과 동일하게 2분 대기 후 애플리케이션 종료.." +echo "[4-2] 2분 대기 후 애플리케이션 종료" sleep 120 +docker logs client-app > app-ssl.log docker compose -f docker/docker-compose-application.yml down echo " " @@ -92,4 +91,6 @@ echo "ID: admin / PW: admin" echo "Consumer: http://localhost:3000/d/-C-IEldWk2/redpanda-kafka-java-consumer" echo "Springboot: http://localhost:3000/d/spring_boot_21/spring-boot-2-1-system-monitor" echo "Kafka UI: http://localhost:8000" + +echo "애플리케이션 로그는 동일 경로의 app-plaintext.log, app-ssl.log 파일에서 확인할 수 있습니다." echo "확인이 끝났다면 ./close-all.sh 를 실행하여 초기화 가능합니다." \ No newline at end of file