From 2ca453f89e20d884dfa70eb2b319e723cf194a49 Mon Sep 17 00:00:00 2001 From: merrycoral Date: Tue, 28 Oct 2025 13:33:00 +0900 Subject: [PATCH] =?UTF-8?q?event=20=EC=84=9C=EB=B9=84=EC=8A=A4=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=ED=8C=8C=EC=9D=BC=20=EC=B6=A9=EB=8F=8C=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 --- .../deploy-actions-cicd-guide-back.md | 14 + .../deploy-actions-cicd-guide-front.md | 15 + .claude/commands/deploy-build-image-back.md | 6 + .claude/commands/deploy-build-image-front.md | 6 + .claude/commands/deploy-help.md | 81 ++ .../deploy-jenkins-cicd-guide-back.md | 14 + .../deploy-jenkins-cicd-guide-front.md | 15 + .claude/commands/deploy-k8s-guide-back.md | 16 + .claude/commands/deploy-k8s-guide-front.md | 18 + .../deploy-run-container-guide-back.md | 15 + .../deploy-run-container-guide-front.md | 16 + .claude/commands/design-api.md | 5 +- .claude/commands/design-class.md | 5 +- .claude/commands/design-data.md | 5 +- .claude/commands/design-fix-prototype.md | 5 +- .claude/commands/design-front.md | 5 +- .claude/commands/design-high-level.md | 5 +- .claude/commands/design-improve-prototype.md | 5 +- .claude/commands/design-improve-userstory.md | 5 +- .claude/commands/design-logical.md | 5 +- .claude/commands/design-pattern.md | 5 +- .claude/commands/design-physical.md | 5 +- .claude/commands/design-prototype.md | 5 +- .claude/commands/design-seq-inner.md | 5 +- .claude/commands/design-seq-outer.md | 5 +- .claude/commands/design-test-prototype.md | 5 +- .claude/commands/design-uiux.md | 5 +- .claude/commands/design-update-uiux.md | 5 +- .claude/commands/think-help.md | 3 + .claude/commands/think-planning.md | 3 + .claude/commands/think-userstory.md | 6 + .claude/settings.local.json | 5 + .gitignore | 16 + .run/ParticipationServiceApplication.run.xml | 2 +- ai-service/build.gradle | 20 +- .../java/com/kt/ai/AiServiceApplication.java | 24 + .../circuitbreaker/CircuitBreakerManager.java | 87 +++ .../fallback/AIServiceFallback.java | 130 ++++ .../com/kt/ai/client/ClaudeApiClient.java | 39 + .../ai/client/config/FeignClientConfig.java | 57 ++ .../com/kt/ai/client/dto/ClaudeRequest.java | 67 ++ .../com/kt/ai/client/dto/ClaudeResponse.java | 108 +++ .../kt/ai/config/CircuitBreakerConfig.java | 71 ++ .../java/com/kt/ai/config/JacksonConfig.java | 25 + .../com/kt/ai/config/KafkaConsumerConfig.java | 76 ++ .../java/com/kt/ai/config/RedisConfig.java | 120 +++ .../java/com/kt/ai/config/SecurityConfig.java | 67 ++ .../java/com/kt/ai/config/SwaggerConfig.java | 64 ++ .../kt/ai/controller/HealthController.java | 91 +++ .../ai/controller/InternalJobController.java | 92 +++ .../InternalRecommendationController.java | 264 +++++++ .../kt/ai/exception/AIServiceException.java | 25 + .../CircuitBreakerOpenException.java | 13 + .../ai/exception/GlobalExceptionHandler.java | 131 ++++ .../kt/ai/exception/JobNotFoundException.java | 13 + .../RecommendationNotFoundException.java | 13 + .../kt/ai/kafka/consumer/AIJobConsumer.java | 60 ++ .../com/kt/ai/kafka/message/AIJobMessage.java | 71 ++ .../dto/response/AIRecommendationResult.java | 54 ++ .../ai/model/dto/response/ErrorResponse.java | 41 ++ .../dto/response/EventRecommendation.java | 139 ++++ .../model/dto/response/ExpectedMetrics.java | 74 ++ .../dto/response/HealthCheckResponse.java | 72 ++ .../model/dto/response/JobStatusResponse.java | 83 +++ .../ai/model/dto/response/TrendAnalysis.java | 59 ++ .../com/kt/ai/model/enums/AIProvider.java | 19 + .../ai/model/enums/CircuitBreakerState.java | 24 + .../kt/ai/model/enums/EventMechanicsType.java | 39 + .../java/com/kt/ai/model/enums/JobStatus.java | 29 + .../com/kt/ai/model/enums/ServiceStatus.java | 29 + .../ai/service/AIRecommendationService.java | 418 +++++++++++ .../java/com/kt/ai/service/CacheService.java | 134 ++++ .../com/kt/ai/service/JobStatusService.java | 63 ++ .../kt/ai/service/TrendAnalysisService.java | 222 ++++++ ai-service/src/main/resources/application.yml | 174 +++++ .../kafka/AIJobConsumerIntegrationTest.java | 127 ++++ .../integration/kafka/KafkaTestProducer.java | 92 +++ .../kt/ai/test/manual/KafkaManualTest.java | 114 +++ .../InternalJobControllerUnitTest.java | 177 +++++ .../unit/service/CacheServiceUnitTest.java | 268 +++++++ .../service/JobStatusServiceUnitTest.java | 205 ++++++ .../src/test/resources/application-test.yml | 69 ++ .../.run/analytics-service.run.xml | 84 +++ .../AnalyticsServiceApplication.java | 29 + .../batch/AnalyticsBatchScheduler.java | 116 +++ .../analytics/config/KafkaConsumerConfig.java | 50 ++ .../analytics/config/KafkaTopicConfig.java | 53 ++ .../event/analytics/config/RedisConfig.java | 35 + .../analytics/config/Resilience4jConfig.java | 27 + .../analytics/config/SampleDataLoader.java | 366 +++++++++ .../analytics/config/SecurityConfig.java | 79 ++ .../event/analytics/config/SwaggerConfig.java | 63 ++ .../AnalyticsDashboardController.java | 71 ++ .../ChannelAnalyticsController.java | 73 ++ .../controller/RoiAnalyticsController.java | 54 ++ .../TimelineAnalyticsController.java | 82 +++ .../response/AnalyticsDashboardResponse.java | 59 ++ .../dto/response/AnalyticsSummary.java | 51 ++ .../dto/response/ChannelAnalytics.java | 46 ++ .../response/ChannelAnalyticsResponse.java | 39 + .../dto/response/ChannelComparison.java | 28 + .../analytics/dto/response/ChannelCosts.java | 43 ++ .../dto/response/ChannelMetrics.java | 51 ++ .../dto/response/ChannelPerformance.java | 41 ++ .../dto/response/ChannelSummary.java | 46 ++ .../dto/response/CostEfficiency.java | 36 + .../dto/response/InvestmentDetails.java | 45 ++ .../analytics/dto/response/PeakTimeInfo.java | 38 + .../analytics/dto/response/PeriodInfo.java | 33 + .../dto/response/RevenueDetails.java | 38 + .../dto/response/RevenueProjection.java | 38 + .../dto/response/RoiAnalyticsResponse.java | 53 ++ .../dto/response/RoiCalculation.java | 39 + .../analytics/dto/response/RoiSummary.java | 43 ++ .../dto/response/SocialInteractionStats.java | 31 + .../response/TimelineAnalyticsResponse.java | 49 ++ .../dto/response/TimelineDataPoint.java | 48 ++ .../analytics/dto/response/TrendAnalysis.java | 36 + .../dto/response/VoiceCallStats.java | 36 + .../event/analytics/entity/ChannelStats.java | 128 ++++ .../kt/event/analytics/entity/EventStats.java | 106 +++ .../event/analytics/entity/TimelineData.java | 75 ++ .../DistributionCompletedConsumer.java | 149 ++++ .../consumer/EventCreatedConsumer.java | 85 +++ .../ParticipantRegisteredConsumer.java | 85 +++ .../event/DistributionCompletedEvent.java | 66 ++ .../messaging/event/EventCreatedEvent.java | 43 ++ .../event/ParticipantRegisteredEvent.java | 31 + .../repository/ChannelStatsRepository.java | 32 + .../repository/EventStatsRepository.java | 49 ++ .../repository/TimelineDataRepository.java | 40 + .../analytics/service/AnalyticsService.java | 216 ++++++ .../service/ChannelAnalyticsService.java | 241 ++++++ .../service/ExternalChannelService.java | 142 ++++ .../analytics/service/ROICalculator.java | 202 +++++ .../service/RoiAnalyticsService.java | 53 ++ .../service/TimelineAnalyticsService.java | 206 ++++++ .../src/main/resources/application.yml | 158 ++++ claude/build-image-back.md | 82 +++ claude/design-prompt.md | 220 ++++++ claude/dev-backend.md | 7 +- claude/develop-prompt.md | 180 +++++ claude/make-run-profile.md | 7 +- claude/think-prompt.md | 41 ++ common/build.gradle | 3 + .../common/security/JwtTokenProvider.java | 10 +- .../event/common/security/UserPrincipal.java | 4 +- content-service/build.gradle | 5 + .../event/content/biz/dto/ContentCommand.java | 16 + .../service/HuggingFaceImageGenerator.java | 288 ++++++++ .../StableDiffusionImageGenerator.java | 398 ++++++++++ .../mock/MockGenerateImagesService.java | 4 +- .../content/infra/ContentApplication.java | 2 + .../infra/config/Resilience4jConfig.java | 128 ++++ .../client/AzureBlobStorageUploader.java | 149 ++++ .../gateway/client/HuggingFaceApiClient.java | 53 ++ .../gateway/client/ReplicateApiClient.java | 46 ++ .../gateway/client/ReplicateApiConfig.java | 40 + .../client/dto/HuggingFaceRequest.java | 59 ++ .../gateway/client/dto/ReplicateRequest.java | 92 +++ .../gateway/client/dto/ReplicateResponse.java | 101 +++ .../src/main/resources/application-dev.yml | 11 + .../src/main/resources/application.yml | 5 + deployment/container/Dockerfile-backend | 25 + deployment/container/build-and-run.sh | 67 ++ deployment/container/build-image.md | 287 ++++++++ deployment/container/docker-compose.yml | 58 ++ .../container/run-container-guide-back.md | 502 +++++++++++++ design/backend/api/API_CONVENTION.md | 2 +- design/backend/api/analytics-service-api.yaml | 2 +- .../backend/logical/logical-architecture.md | 2 +- develop/dev/api-mapping-ai-service.md | 485 ++++++++++++ develop/dev/api-mapping-analytics.md | 445 +++++++++++ develop/dev/dev-backend-ai-service.md | 274 +++++++ develop/dev/dev-backend-analytics.md | 697 ++++++++++++++++++ develop/dev/package-structure-ai-service.md | 152 ++++ develop/dev/package-structure-analytics.md | 153 ++++ develop/dev/sample-data-analytics.md | 561 ++++++++++++++ .../kafka-redis-integration-test-report.md | 389 ++++++++++ .../.run/participation-service.run.xml | 6 +- participation-service/fix-indexes.sql | 14 + .../participation/domain/draw/DrawLog.java | 2 +- .../domain/participant/Participant.java | 5 +- .../infrastructure/config/SecurityConfig.java | 2 + .../src/main/resources/application.yml | 18 +- tools/check-kafka-messages.ps1 | 63 ++ tools/kafka-comprehensive-test.bat | 101 +++ tools/kafka-manual-test.bat | 37 + .../impl/AuthenticationServiceImpl.java | 18 +- .../user/service/impl/UserServiceImpl.java | 1 + 190 files changed, 15315 insertions(+), 49 deletions(-) create mode 100644 .claude/commands/deploy-actions-cicd-guide-back.md create mode 100644 .claude/commands/deploy-actions-cicd-guide-front.md create mode 100644 .claude/commands/deploy-build-image-back.md create mode 100644 .claude/commands/deploy-build-image-front.md create mode 100644 .claude/commands/deploy-help.md create mode 100644 .claude/commands/deploy-jenkins-cicd-guide-back.md create mode 100644 .claude/commands/deploy-jenkins-cicd-guide-front.md create mode 100644 .claude/commands/deploy-k8s-guide-back.md create mode 100644 .claude/commands/deploy-k8s-guide-front.md create mode 100644 .claude/commands/deploy-run-container-guide-back.md create mode 100644 .claude/commands/deploy-run-container-guide-front.md create mode 100644 ai-service/src/main/java/com/kt/ai/AiServiceApplication.java create mode 100644 ai-service/src/main/java/com/kt/ai/circuitbreaker/CircuitBreakerManager.java create mode 100644 ai-service/src/main/java/com/kt/ai/circuitbreaker/fallback/AIServiceFallback.java create mode 100644 ai-service/src/main/java/com/kt/ai/client/ClaudeApiClient.java create mode 100644 ai-service/src/main/java/com/kt/ai/client/config/FeignClientConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/client/dto/ClaudeRequest.java create mode 100644 ai-service/src/main/java/com/kt/ai/client/dto/ClaudeResponse.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/CircuitBreakerConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/JacksonConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/KafkaConsumerConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/RedisConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/SecurityConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/config/SwaggerConfig.java create mode 100644 ai-service/src/main/java/com/kt/ai/controller/HealthController.java create mode 100644 ai-service/src/main/java/com/kt/ai/controller/InternalJobController.java create mode 100644 ai-service/src/main/java/com/kt/ai/controller/InternalRecommendationController.java create mode 100644 ai-service/src/main/java/com/kt/ai/exception/AIServiceException.java create mode 100644 ai-service/src/main/java/com/kt/ai/exception/CircuitBreakerOpenException.java create mode 100644 ai-service/src/main/java/com/kt/ai/exception/GlobalExceptionHandler.java create mode 100644 ai-service/src/main/java/com/kt/ai/exception/JobNotFoundException.java create mode 100644 ai-service/src/main/java/com/kt/ai/exception/RecommendationNotFoundException.java create mode 100644 ai-service/src/main/java/com/kt/ai/kafka/consumer/AIJobConsumer.java create mode 100644 ai-service/src/main/java/com/kt/ai/kafka/message/AIJobMessage.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/AIRecommendationResult.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/ErrorResponse.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/EventRecommendation.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/ExpectedMetrics.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/HealthCheckResponse.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/JobStatusResponse.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/dto/response/TrendAnalysis.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/enums/AIProvider.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/enums/CircuitBreakerState.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/enums/EventMechanicsType.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/enums/JobStatus.java create mode 100644 ai-service/src/main/java/com/kt/ai/model/enums/ServiceStatus.java create mode 100644 ai-service/src/main/java/com/kt/ai/service/AIRecommendationService.java create mode 100644 ai-service/src/main/java/com/kt/ai/service/CacheService.java create mode 100644 ai-service/src/main/java/com/kt/ai/service/JobStatusService.java create mode 100644 ai-service/src/main/java/com/kt/ai/service/TrendAnalysisService.java create mode 100644 ai-service/src/main/resources/application.yml create mode 100644 ai-service/src/test/java/com/kt/ai/test/integration/kafka/AIJobConsumerIntegrationTest.java create mode 100644 ai-service/src/test/java/com/kt/ai/test/integration/kafka/KafkaTestProducer.java create mode 100644 ai-service/src/test/java/com/kt/ai/test/manual/KafkaManualTest.java create mode 100644 ai-service/src/test/java/com/kt/ai/test/unit/controller/InternalJobControllerUnitTest.java create mode 100644 ai-service/src/test/java/com/kt/ai/test/unit/service/CacheServiceUnitTest.java create mode 100644 ai-service/src/test/java/com/kt/ai/test/unit/service/JobStatusServiceUnitTest.java create mode 100644 ai-service/src/test/resources/application-test.yml create mode 100644 analytics-service/.run/analytics-service.run.xml create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/AnalyticsServiceApplication.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/batch/AnalyticsBatchScheduler.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/KafkaConsumerConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/KafkaTopicConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/RedisConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/Resilience4jConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/SampleDataLoader.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/SecurityConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/config/SwaggerConfig.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/controller/AnalyticsDashboardController.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/controller/ChannelAnalyticsController.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/controller/RoiAnalyticsController.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/controller/TimelineAnalyticsController.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/AnalyticsDashboardResponse.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/AnalyticsSummary.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelAnalytics.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelAnalyticsResponse.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelComparison.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelCosts.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelMetrics.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelPerformance.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/ChannelSummary.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/CostEfficiency.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/InvestmentDetails.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/PeakTimeInfo.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/PeriodInfo.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/RevenueDetails.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/RevenueProjection.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/RoiAnalyticsResponse.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/RoiCalculation.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/RoiSummary.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/SocialInteractionStats.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/TimelineAnalyticsResponse.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/TimelineDataPoint.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/TrendAnalysis.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/dto/response/VoiceCallStats.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/entity/ChannelStats.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/entity/EventStats.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/entity/TimelineData.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/consumer/DistributionCompletedConsumer.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/consumer/EventCreatedConsumer.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/consumer/ParticipantRegisteredConsumer.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/event/DistributionCompletedEvent.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/event/EventCreatedEvent.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/messaging/event/ParticipantRegisteredEvent.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/repository/ChannelStatsRepository.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/repository/EventStatsRepository.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/repository/TimelineDataRepository.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/AnalyticsService.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/ChannelAnalyticsService.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/ExternalChannelService.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/ROICalculator.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/RoiAnalyticsService.java create mode 100644 analytics-service/src/main/java/com/kt/event/analytics/service/TimelineAnalyticsService.java create mode 100644 analytics-service/src/main/resources/application.yml create mode 100644 claude/build-image-back.md create mode 100644 claude/design-prompt.md create mode 100644 claude/develop-prompt.md create mode 100644 claude/think-prompt.md create mode 100644 content-service/src/main/java/com/kt/event/content/biz/service/HuggingFaceImageGenerator.java create mode 100644 content-service/src/main/java/com/kt/event/content/biz/service/StableDiffusionImageGenerator.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/config/Resilience4jConfig.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/AzureBlobStorageUploader.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/HuggingFaceApiClient.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/ReplicateApiClient.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/ReplicateApiConfig.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/dto/HuggingFaceRequest.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/dto/ReplicateRequest.java create mode 100644 content-service/src/main/java/com/kt/event/content/infra/gateway/client/dto/ReplicateResponse.java create mode 100644 deployment/container/Dockerfile-backend create mode 100755 deployment/container/build-and-run.sh create mode 100644 deployment/container/build-image.md create mode 100644 deployment/container/docker-compose.yml create mode 100644 deployment/container/run-container-guide-back.md create mode 100644 develop/dev/api-mapping-ai-service.md create mode 100644 develop/dev/api-mapping-analytics.md create mode 100644 develop/dev/dev-backend-ai-service.md create mode 100644 develop/dev/dev-backend-analytics.md create mode 100644 develop/dev/package-structure-ai-service.md create mode 100644 develop/dev/package-structure-analytics.md create mode 100644 develop/dev/sample-data-analytics.md create mode 100644 develop/test/kafka-redis-integration-test-report.md create mode 100644 participation-service/fix-indexes.sql create mode 100644 tools/check-kafka-messages.ps1 create mode 100644 tools/kafka-comprehensive-test.bat create mode 100644 tools/kafka-manual-test.bat diff --git a/.claude/commands/deploy-actions-cicd-guide-back.md b/.claude/commands/deploy-actions-cicd-guide-back.md new file mode 100644 index 0000000..0ec39e4 --- /dev/null +++ b/.claude/commands/deploy-actions-cicd-guide-back.md @@ -0,0 +1,14 @@ +--- +command: "/deploy-actions-cicd-guide-back" +--- + +@cicd +'백엔드GitHubActions파이프라인작성가이드'에 따라 GitHub Actions를 이용한 CI/CD 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- ACR_NAME: acrdigitalgarage01 +- RESOURCE_GROUP: rg-digitalgarage-01 +- AKS_CLUSTER: aks-digitalgarage-01 +- NAMESPACE: phonebill-dg0500 diff --git a/.claude/commands/deploy-actions-cicd-guide-front.md b/.claude/commands/deploy-actions-cicd-guide-front.md new file mode 100644 index 0000000..0975422 --- /dev/null +++ b/.claude/commands/deploy-actions-cicd-guide-front.md @@ -0,0 +1,15 @@ +--- +command: "/deploy-actions-cicd-guide-front" +--- + +@cicd +'프론트엔드GitHubActions파이프라인작성가이드'에 따라 GitHub Actions를 이용한 CI/CD 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- SYSTEM_NAME: phonebill +- ACR_NAME: acrdigitalgarage01 +- RESOURCE_GROUP: rg-digitalgarage-01 +- AKS_CLUSTER: aks-digitalgarage-01 +- NAMESPACE: phonebill-dg0500 diff --git a/.claude/commands/deploy-build-image-back.md b/.claude/commands/deploy-build-image-back.md new file mode 100644 index 0000000..5305a1b --- /dev/null +++ b/.claude/commands/deploy-build-image-back.md @@ -0,0 +1,6 @@ +--- +command: "/deploy-build-image-back" +--- + +@cicd +'백엔드컨테이너이미지작성가이드'에 따라 컨테이너 이미지를 작성해 주세요. diff --git a/.claude/commands/deploy-build-image-front.md b/.claude/commands/deploy-build-image-front.md new file mode 100644 index 0000000..1cfe9d1 --- /dev/null +++ b/.claude/commands/deploy-build-image-front.md @@ -0,0 +1,6 @@ +--- +command: "/deploy-build-image-front" +--- + +@cicd +'프론트엔드컨테이너이미지작성가이드'에 따라 컨테이너 이미지를 작성해 주세요. diff --git a/.claude/commands/deploy-help.md b/.claude/commands/deploy-help.md new file mode 100644 index 0000000..d6ec88f --- /dev/null +++ b/.claude/commands/deploy-help.md @@ -0,0 +1,81 @@ +--- +command: "/deploy-help" +--- + +# 배포 작업 순서 + +## 1단계: 컨테이너 이미지 작성 +### 백엔드 +``` +/deploy-build-image-back +``` +- 백엔드컨테이너이미지작성가이드를 참고하여 컨테이너 이미지를 빌드합니다 + +### 프론트엔드 +``` +/deploy-build-image-front +``` +- 프론트엔드컨테이너이미지작성가이드를 참고하여 컨테이너 이미지를 빌드합니다 + +## 2단계: 컨테이너 실행 가이드 작성 +### 백엔드 +``` +/deploy-run-container-guide-back +``` +- 백엔드컨테이너실행방법가이드를 참고하여 컨테이너 실행 방법을 작성합니다 +- 실행정보(ACR명, VM정보)가 필요합니다 + +### 프론트엔드 +``` +/deploy-run-container-guide-front +``` +- 프론트엔드컨테이너실행방법가이드를 참고하여 컨테이너 실행 방법을 작성합니다 +- 실행정보(시스템명, ACR명, VM정보)가 필요합니다 + +## 3단계: Kubernetes 배포 가이드 작성 +### 백엔드 +``` +/deploy-k8s-guide-back +``` +- 백엔드배포가이드를 참고하여 쿠버네티스 배포 방법을 작성합니다 +- 실행정보(ACR명, k8s명, 네임스페이스, 리소스 설정)가 필요합니다 + +### 프론트엔드 +``` +/deploy-k8s-guide-front +``` +- 프론트엔드배포가이드를 참고하여 쿠버네티스 배포 방법을 작성합니다 +- 실행정보(시스템명, ACR명, k8s명, 네임스페이스, Gateway Host, 리소스 설정)가 필요합니다 + +## 4단계: CI/CD 파이프라인 구성 + +### Jenkins 사용 시 +#### 백엔드 +``` +/deploy-jenkins-cicd-guide-back +``` +- 백엔드Jenkins파이프라인작성가이드를 참고하여 Jenkins CI/CD 파이프라인을 구성합니다 + +#### 프론트엔드 +``` +/deploy-jenkins-cicd-guide-front +``` +- 프론트엔드Jenkins파이프라인작성가이드를 참고하여 Jenkins CI/CD 파이프라인을 구성합니다 + +### GitHub Actions 사용 시 +#### 백엔드 +``` +/deploy-actions-cicd-guide-back +``` +- 백엔드GitHubActions파이프라인작성가이드를 참고하여 GitHub Actions CI/CD 파이프라인을 구성합니다 + +#### 프론트엔드 +``` +/deploy-actions-cicd-guide-front +``` +- 프론트엔드GitHubActions파이프라인작성가이드를 참고하여 GitHub Actions CI/CD 파이프라인을 구성합니다 + +## 참고사항 +- 각 명령 실행 전 필요한 실행정보를 프롬프트에 포함해야 합니다 +- 실행정보가 없으면 안내 메시지가 표시되며 작업이 중단됩니다 +- CI/CD 도구는 Jenkins 또는 GitHub Actions 중 선택하여 사용합니다 diff --git a/.claude/commands/deploy-jenkins-cicd-guide-back.md b/.claude/commands/deploy-jenkins-cicd-guide-back.md new file mode 100644 index 0000000..dbd3e8b --- /dev/null +++ b/.claude/commands/deploy-jenkins-cicd-guide-back.md @@ -0,0 +1,14 @@ +--- +command: "/deploy-jenkins-cicd-guide-back" +--- + +@cicd +'백엔드Jenkins파이프라인작성가이드'에 따라 Jenkins를 이용한 CI/CD 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- ACR_NAME: acrdigitalgarage01 +- RESOURCE_GROUP: rg-digitalgarage-01 +- AKS_CLUSTER: aks-digitalgarage-01 +- NAMESPACE: phonebill-dg0500 diff --git a/.claude/commands/deploy-jenkins-cicd-guide-front.md b/.claude/commands/deploy-jenkins-cicd-guide-front.md new file mode 100644 index 0000000..5df6fad --- /dev/null +++ b/.claude/commands/deploy-jenkins-cicd-guide-front.md @@ -0,0 +1,15 @@ +--- +command: "/deploy-jenkins-cicd-guide-front" +--- + +@cicd +'프론트엔드Jenkins파이프라인작성가이드'에 따라 Jenkins를 이용한 CI/CD 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- SYSTEM_NAME: phonebill +- ACR_NAME: acrdigitalgarage01 +- RESOURCE_GROUP: rg-digitalgarage-01 +- AKS_CLUSTER: aks-digitalgarage-01 +- NAMESPACE: phonebill-dg0500 diff --git a/.claude/commands/deploy-k8s-guide-back.md b/.claude/commands/deploy-k8s-guide-back.md new file mode 100644 index 0000000..8fccb04 --- /dev/null +++ b/.claude/commands/deploy-k8s-guide-back.md @@ -0,0 +1,16 @@ +--- +command: "/deploy-k8s-guide-back" +--- + +@cicd +'백엔드배포가이드'에 따라 백엔드 서비스 배포 방법을 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- ACR명: acrdigitalgarage01 +- k8s명: aks-digitalgarage-01 +- 네임스페이스: tripgen +- 파드수: 2 +- 리소스(CPU): 256m/1024m +- 리소스(메모리): 256Mi/1024Mi diff --git a/.claude/commands/deploy-k8s-guide-front.md b/.claude/commands/deploy-k8s-guide-front.md new file mode 100644 index 0000000..54a069d --- /dev/null +++ b/.claude/commands/deploy-k8s-guide-front.md @@ -0,0 +1,18 @@ +--- +command: "/deploy-k8s-guide-front" +--- + +@cicd +'프론트엔드배포가이드'에 따라 프론트엔드 서비스 배포 방법을 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- 시스템명: tripgen +- ACR명: acrdigitalgarage01 +- k8s명: aks-digitalgarage-01 +- 네임스페이스: tripgen +- 파드수: 2 +- 리소스(CPU): 256m/1024m +- 리소스(메모리): 256Mi/1024Mi +- Gateway Host: http://tripgen-api.20.214.196.128.nip.io diff --git a/.claude/commands/deploy-run-container-guide-back.md b/.claude/commands/deploy-run-container-guide-back.md new file mode 100644 index 0000000..c93388f --- /dev/null +++ b/.claude/commands/deploy-run-container-guide-back.md @@ -0,0 +1,15 @@ +--- +command: "/deploy-run-container-guide-back" +--- + +@cicd +'백엔드컨테이너실행방법가이드'에 따라 컨테이너 실행 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- ACR명: acrdigitalgarage01 +- VM + - KEY파일: ~/home/bastion-dg0500 + - USERID: azureuser + - IP: 4.230.5.6 diff --git a/.claude/commands/deploy-run-container-guide-front.md b/.claude/commands/deploy-run-container-guide-front.md new file mode 100644 index 0000000..eb68f9a --- /dev/null +++ b/.claude/commands/deploy-run-container-guide-front.md @@ -0,0 +1,16 @@ +--- +command: "/deploy-run-container-guide-front" +--- + +@cicd +'프론트엔드컨테이너실행방법가이드'에 따라 컨테이너 실행 가이드를 작성해 주세요. +프롬프트에 '[실행정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시해 주세요. +{안내메시지} +'[실행정보]'섹션 하위에 아래 예와 같이 필요한 정보를 제시해 주세요. +[실행정보] +- 시스템명: tripgen +- ACR명: acrdigitalgarage01 +- VM + - KEY파일: ~/home/bastion-dg0500 + - USERID: azureuser + - IP: 4.230.5.6 diff --git a/.claude/commands/design-api.md b/.claude/commands/design-api.md index 5375bf7..750eae3 100644 --- a/.claude/commands/design-api.md +++ b/.claude/commands/design-api.md @@ -1,3 +1,6 @@ +--- +command: "/design-api" +--- @architecture API를 설계해 주세요: -- '공통설계원칙'과 'API설계가이드'를 준용하여 설계 +- '공통설계원칙'과 'API설계가이드'를 준용하여 설계 \ No newline at end of file diff --git a/.claude/commands/design-class.md b/.claude/commands/design-class.md index dc76da9..178bdb1 100644 --- a/.claude/commands/design-class.md +++ b/.claude/commands/design-class.md @@ -1,3 +1,6 @@ +--- +command: "/design-class" +--- @architecture '공통설계원칙'과 '클래스설계가이드'를 준용하여 클래스를 설계해 주세요. 프롬프트에 '[클래스설계 정보]'항목이 없으면 수행을 중단하고 안내 메시지를 표시합니다. @@ -9,4 +12,4 @@ - User: Layered - Trip: Clean - Location: Layered - - AI: Layered + - AI: Layered \ No newline at end of file diff --git a/.claude/commands/design-data.md b/.claude/commands/design-data.md index 8d9fd77..b5ff1dd 100644 --- a/.claude/commands/design-data.md +++ b/.claude/commands/design-data.md @@ -1,3 +1,6 @@ +--- +command: "/design-data" +--- @architecture 데이터 설계를 해주세요: -- '공통설계원칙'과 '데이터설계가이드'를 준용하여 설계 +- '공통설계원칙'과 '데이터설계가이드'를 준용하여 설계 \ No newline at end of file diff --git a/.claude/commands/design-fix-prototype.md b/.claude/commands/design-fix-prototype.md index d1ddb8a..5cc1890 100644 --- a/.claude/commands/design-fix-prototype.md +++ b/.claude/commands/design-fix-prototype.md @@ -1,5 +1,8 @@ +--- +command: "/design-fix-prototype" +--- @fix as @front '[오류내용]'섹션에 제공된 오류를 해결해 주세요. 프롬프트에 '[오류내용]'섹션이 없으면 수행 중단하고 안내 메시지 표시 {안내메시지} -'[오류내용]'섹션 하위에 오류 내용을 제공 +'[오류내용]'섹션 하위에 오류 내용을 제공 \ No newline at end of file diff --git a/.claude/commands/design-front.md b/.claude/commands/design-front.md index 67bc0a5..8dd99c9 100644 --- a/.claude/commands/design-front.md +++ b/.claude/commands/design-front.md @@ -1,3 +1,6 @@ +--- +command: "/design-front" +--- @plan as @front '프론트엔드설계가이드'를 준용하여 **프론트엔드설계서**를 작성해 주세요. 프롬프트에 '[백엔드시스템]'항목이 없으면 수행을 중단하고 안내 메시지를 표시합니다. @@ -13,4 +16,4 @@ - ai service: http://localhost:8084/v3/api-docs [요구사항] - 각 화면에 Back 아이콘 버튼과 화면 타이틀 표시 -- 하단 네비게이션 바 아이콘화: 홈, 새여행, 주변장소검색, 여행보기 +- 하단 네비게이션 바 아이콘화: 홈, 새여행, 주변장소검색, 여행보기 \ No newline at end of file diff --git a/.claude/commands/design-high-level.md b/.claude/commands/design-high-level.md index d7028b1..0debc5e 100644 --- a/.claude/commands/design-high-level.md +++ b/.claude/commands/design-high-level.md @@ -1,6 +1,9 @@ +--- +command: "/design-high-level" +--- @architecture 'HighLevel아키텍처정의가이드'를 준용하여 High Level 아키텍처 정의서를 작성해 주세요. 'CLOUD' 정보가 없으면 수행을 중단하고 안내메시지를 표시하세요. {안내메시지} 아래 예와 같이 CLOUD 제공자를 Azure, AWS, Google과 같이 제공하세요. -- CLOUD: Azure +- CLOUD: Azure \ No newline at end of file diff --git a/.claude/commands/design-improve-prototype.md b/.claude/commands/design-improve-prototype.md index 0d1b31b..22bc079 100644 --- a/.claude/commands/design-improve-prototype.md +++ b/.claude/commands/design-improve-prototype.md @@ -1,5 +1,8 @@ +--- +command: "/design-improve-prototype" +--- @improve as @front '[개선내용]'섹션에 있는 내용을 개선해 주세요. 프롬프트에 '[개선내용]'항목이 없으면 수행을 중단하고 안내 메시지 표시 {안내메시지} -'[개선내용]'섹션 하위에 개선할 내용을 제공 +'[개선내용]'섹션 하위에 개선할 내용을 제공 \ No newline at end of file diff --git a/.claude/commands/design-improve-userstory.md b/.claude/commands/design-improve-userstory.md index a1055f2..73fd453 100644 --- a/.claude/commands/design-improve-userstory.md +++ b/.claude/commands/design-improve-userstory.md @@ -1,2 +1,5 @@ +--- +command: "/design-improve-userstory" +--- @analyze as @front 프로토타입을 웹브라우저에서 분석한 후, -@document as @scribe 수정된 프로토타입에 따라 유저스토리를 업데이트 해주십시오. +@document as @scribe 수정된 프로토타입에 따라 유저스토리를 업데이트 해주십시오. \ No newline at end of file diff --git a/.claude/commands/design-logical.md b/.claude/commands/design-logical.md index 28f15e9..3d50c8f 100644 --- a/.claude/commands/design-logical.md +++ b/.claude/commands/design-logical.md @@ -1,3 +1,6 @@ +--- +command: "/design-logical" +--- @architecture 논리 아키텍처를 설계해 주세요: -- '공통설계원칙'과 '논리아키텍처 설계 가이드'를 준용하여 설계 +- '공통설계원칙'과 '논리아키텍처 설계 가이드'를 준용하여 설계 \ No newline at end of file diff --git a/.claude/commands/design-pattern.md b/.claude/commands/design-pattern.md index 06ed88d..decb145 100644 --- a/.claude/commands/design-pattern.md +++ b/.claude/commands/design-pattern.md @@ -1,3 +1,6 @@ +--- +command: "/design-pattern" +--- @design-pattern 클라우드 아키텍처 패턴 적용 방안을 작성해 주세요: -- '클라우드아키텍처패턴선정가이드'를 준용하여 작성 +- '클라우드아키텍처패턴선정가이드'를 준용하여 작성 \ No newline at end of file diff --git a/.claude/commands/design-physical.md b/.claude/commands/design-physical.md index 2dc8a51..7df5bca 100644 --- a/.claude/commands/design-physical.md +++ b/.claude/commands/design-physical.md @@ -1,6 +1,9 @@ +--- +command: "/design-physical" +--- @architecture '물리아키텍처설계가이드'를 준용하여 물리아키텍처를 설계해 주세요. 'CLOUD' 정보가 없으면 수행을 중단하고 안내메시지를 표시하세요. {안내메시지} 아래 예와 같이 CLOUD 제공자를 Azure, AWS, Google과 같이 제공하세요. -- CLOUD: Azure +- CLOUD: Azure \ No newline at end of file diff --git a/.claude/commands/design-prototype.md b/.claude/commands/design-prototype.md index f43547f..dbd24a0 100644 --- a/.claude/commands/design-prototype.md +++ b/.claude/commands/design-prototype.md @@ -1,3 +1,6 @@ +--- +command: "/design-prototype" +--- @prototype 프로토타입을 작성해 주세요: -- '프로토타입작성가이드'를 준용하여 작성 +- '프로토타입작성가이드'를 준용하여 작성 \ No newline at end of file diff --git a/.claude/commands/design-seq-inner.md b/.claude/commands/design-seq-inner.md index 5583610..d2bc4ac 100644 --- a/.claude/commands/design-seq-inner.md +++ b/.claude/commands/design-seq-inner.md @@ -1,3 +1,6 @@ +--- +command: "/design-seq-inner" +--- @architecture 내부 시퀀스 설계를 해 주세요: -- '공통설계원칙'과 '내부시퀀스설계 가이드'를 준용하여 설계 +- '공통설계원칙'과 '내부시퀀스설계 가이드'를 준용하여 설계 \ No newline at end of file diff --git a/.claude/commands/design-seq-outer.md b/.claude/commands/design-seq-outer.md index 0546370..8e05435 100644 --- a/.claude/commands/design-seq-outer.md +++ b/.claude/commands/design-seq-outer.md @@ -1,3 +1,6 @@ +--- +command: "/design-seq-outer" +--- @architecture 외부 시퀀스 설계를 해 주세요: -- '공통설계원칙'과 '외부시퀀스설계가이드'를 준용하여 설계 +- '공통설계원칙'과 '외부시퀀스설계가이드'를 준용하여 설계 \ No newline at end of file diff --git a/.claude/commands/design-test-prototype.md b/.claude/commands/design-test-prototype.md index bd45346..350788a 100644 --- a/.claude/commands/design-test-prototype.md +++ b/.claude/commands/design-test-prototype.md @@ -1,2 +1,5 @@ +--- +command: "/design-test-prototype" +--- @test-front -프로토타입을 테스트 해 주세요. +프로토타입을 테스트 해 주세요. \ No newline at end of file diff --git a/.claude/commands/design-uiux.md b/.claude/commands/design-uiux.md index 2b1c387..d68d857 100644 --- a/.claude/commands/design-uiux.md +++ b/.claude/commands/design-uiux.md @@ -1,3 +1,6 @@ +--- +command: "/design-uiux" +--- @uiux UI/UX 설계를 해주세요: -- 'UI/UX설계가이드'를 준용하여 작성 +- 'UI/UX설계가이드'를 준용하여 작성 \ No newline at end of file diff --git a/.claude/commands/design-update-uiux.md b/.claude/commands/design-update-uiux.md index 6994cd9..afd7cf9 100644 --- a/.claude/commands/design-update-uiux.md +++ b/.claude/commands/design-update-uiux.md @@ -1,2 +1,5 @@ +--- +command: "/design-update-uiux" +--- @document @front -현재 프로토타입과 유저스토리를 기준으로 UI/UX설계서와 스타일가이드를 수정해 주세요. +현재 프로토타입과 유저스토리를 기준으로 UI/UX설계서와 스타일가이드를 수정해 주세요. \ No newline at end of file diff --git a/.claude/commands/think-help.md b/.claude/commands/think-help.md index 49bc697..17ad05a 100644 --- a/.claude/commands/think-help.md +++ b/.claude/commands/think-help.md @@ -1,3 +1,6 @@ +--- +command: "/think-help" +--- 기획 작업 순서 1단계: 서비스 기획 diff --git a/.claude/commands/think-planning.md b/.claude/commands/think-planning.md index c40eaec..beec938 100644 --- a/.claude/commands/think-planning.md +++ b/.claude/commands/think-planning.md @@ -1,3 +1,6 @@ +--- +command: "/think-planning" +--- 아래 내용을 터미널에 표시만 하고 수행을 하지는 않습니다. ``` 아래 가이드를 참고하여 서비스 기획을 수행합니다. diff --git a/.claude/commands/think-userstory.md b/.claude/commands/think-userstory.md index abdcb97..a002c30 100644 --- a/.claude/commands/think-userstory.md +++ b/.claude/commands/think-userstory.md @@ -1,3 +1,7 @@ +--- +command: "/think-userstory" +--- +``` @document 유저스토리를 작성하세요. 프롬프트에 '[요구사항]'섹션이 없으면 수행을 중단하고 안내 메시지를 표시합니다. @@ -16,3 +20,5 @@ Case 2) 다른 방법으로 이벤트스토밍을 한 경우는 요구사항을 2. 유저스토리 작성 - '유저스토리작성방법'과 '유저스토리예제'를 참고하여 유저스토리를 작성 - 결과파일은 'design/userstory.md'에 생성 + +``` diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 0c539cf..f0a5018 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -16,6 +16,11 @@ "Bash(git commit:*)", "Bash(git push)", "Bash(git pull:*)", + "Bash(netstat:*)", + "Bash(findstr:*)", + "Bash(./gradlew analytics-service:compileJava:*)", + "Bash(python -m json.tool:*)", + "Bash(powershell:*)" "Bash(./gradlew participation-service:compileJava:*)", "Bash(find:*)", "Bash(netstat:*)", diff --git a/.gitignore b/.gitignore index 1a93c5a..9f987d9 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ yarn-error.log* # IDE .idea/ .vscode/ +.run/ *.swp *.swo *~ @@ -23,6 +24,21 @@ build/ .gradle/ logs/ +# Gradle +.gradle/ +!gradle/wrapper/gradle-wrapper.jar + +# Logs +logs/ +*.log + +# Gradle +.gradle/ +gradle-app.setting +!gradle-wrapper.jar +!gradle-wrapper.properties +.gradletasknamecache + # Environment .env .env.local diff --git a/.run/ParticipationServiceApplication.run.xml b/.run/ParticipationServiceApplication.run.xml index a323100..8102290 100644 --- a/.run/ParticipationServiceApplication.run.xml +++ b/.run/ParticipationServiceApplication.run.xml @@ -43,7 +43,7 @@