From e552e317d69c4db2645e59609313f08a5c58b0fc Mon Sep 17 00:00:00 2001 From: DongHyeonka Date: Thu, 13 Aug 2026 20:32:52 +0900 Subject: [PATCH] chore: initialize tech log backend --- README.md | 6 +++++- docker-compose.yml | 4 ++-- docs/registries/env-keys.yaml | 2 +- src/.env | 4 ++-- src/Dockerfile | 4 ++-- .../src/main/resources/application-local.yml | 6 +++--- src/app-bootstrap/src/main/resources/logback-spring.xml | 4 ++-- src/settings.gradle | 2 +- template.lock.json | 8 ++++++++ 9 files changed, 26 insertions(+), 14 deletions(-) create mode 100644 template.lock.json diff --git a/README.md b/README.md index 0a1a8d6..e8574ac 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,8 @@ -# ca-skeleton — Clean Architecture Spring Boot 템플릿 +# Tech Log Backend + +Initialized from `clean-architecture-backend-template` revision +`0a6dd0e419620683de48f69b5c6d22d9964b6f44` as a tracked snapshot. Template +updates are applied explicitly and recorded in `template.lock.json`. ca-skeleton은 Java 21, Spring Boot 4.0.0, Gradle 멀티모듈 기반의 Clean Architecture 백엔드 템플릿입니다. fork해서 도메인·패키지·엔티티·유스케이스만 교체하면 새 서비스를 시작할 수 있고, 모듈 경계와 의존 방향은 그대로 유지합니다. 기본 패키지는 `dev.caskeleton`이며, 예시 도메인은 production 모듈이 아니라 `sample-portfolio` 모듈(WorkLog 작업 기록 게시판)에 격리합니다. diff --git a/docker-compose.yml b/docker-compose.yml index 82928a9..0abeba5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -32,8 +32,8 @@ services: RELEASE_VERSION: "${RELEASE_VERSION:-0.0.1}" BUILD_VERSION: "${BUILD_VERSION:-0.0.1+0000000}" GIT_SHA: "${GIT_SHA:-0000000}" - SOURCE_URL: "${SOURCE_URL:-https://example.invalid/ca-tmpl}" - image: caskeleton:${BUILD_VERSION:-0.0.1_local_0000000} + SOURCE_URL: "${SOURCE_URL:-https://git.learn.hyeonworks.com/donghyeon.kang/tech-log-backend}" + image: tech-log-backend:${BUILD_VERSION:-0.0.1_local_0000000} ports: - "${APP_SERVER_PORT:-8080}:8080" - "9001:9001" diff --git a/docs/registries/env-keys.yaml b/docs/registries/env-keys.yaml index 11fe5ec..e631fb0 100644 --- a/docs/registries/env-keys.yaml +++ b/docs/registries/env-keys.yaml @@ -632,7 +632,7 @@ env_keys: - name: APP_LOG_FILE_PATH # source: feature-log-management-contract — file path (relative to bootRun cwd or absolute) type: string - default: logs/ca-skeleton.json + default: logs/tech-log-backend.json allowed_values: null classification: public-config required: false diff --git a/src/.env b/src/.env index 02f1bb1..dd4c846 100644 --- a/src/.env +++ b/src/.env @@ -4,7 +4,7 @@ # ---------------------------------------------------------------------------- # ----- App identity ----- -APP_NAME=ca-skeleton +APP_NAME=tech-log-backend SPRING_PROFILES_ACTIVE=local # ----- Runtime safety (StartupSafetyValidator, D8) ----- @@ -51,7 +51,7 @@ APP_LOG_LEVEL_SQL=WARN # ----- Logging: file output + rolling ----- APP_LOG_FILE_ENABLED=false -APP_LOG_FILE_PATH=logs/ca-skeleton.json +APP_LOG_FILE_PATH=logs/tech-log-backend.json APP_LOG_FILE_MAX_SIZE=100MB APP_LOG_FILE_MAX_HISTORY=14 APP_LOG_FILE_TOTAL_SIZE_CAP=3GB diff --git a/src/Dockerfile b/src/Dockerfile index 786ea06..036ed71 100644 --- a/src/Dockerfile +++ b/src/Dockerfile @@ -3,7 +3,7 @@ # feature-container-runtime-contract — multi-stage image build # # Build requirements: -# docker build -f src/Dockerfile src/ -t caskeleton:local \ +# docker build -f src/Dockerfile src/ -t tech-log-backend:local \ # --build-arg RELEASE_VERSION=1.2.3 \ # --build-arg BUILD_VERSION=1.2.3+a1b2c3d4e5f6 \ # --build-arg GIT_SHA=a1b2c3d4e5f6 \ @@ -64,7 +64,7 @@ ARG GIT_SHA ARG SOURCE_URL # OCI image labels (build-arg placeholders — supply at docker build time). -LABEL org.opencontainers.image.title="caskeleton" \ +LABEL org.opencontainers.image.title="tech-log-backend" \ org.opencontainers.image.source="${SOURCE_URL}" \ org.opencontainers.image.revision="${GIT_SHA}" \ org.opencontainers.image.version="${BUILD_VERSION}" diff --git a/src/app-bootstrap/src/main/resources/application-local.yml b/src/app-bootstrap/src/main/resources/application-local.yml index dfc54bf..6bce536 100644 --- a/src/app-bootstrap/src/main/resources/application-local.yml +++ b/src/app-bootstrap/src/main/resources/application-local.yml @@ -25,7 +25,7 @@ spring: application: - name: ca-skeleton + name: tech-log-backend web: error: include-stacktrace: never @@ -125,7 +125,7 @@ ca-skeleton: # rows and timeout guards differ per vendor even though the ports do not. vendor: h2 bootstrap: - app-name: ca-skeleton + app-name: tech-log-backend presentation: # Pinned even though application.yml has an inline default, because the default is /v1 and # src/.env says /api. Everything that names a URL in this repository — SECURITY_PUBLIC_PATHS, @@ -156,7 +156,7 @@ ca-skeleton: # Console only. A local run should not quietly grow a logs/ directory in the working # directory, which differs between a Gradle run and an IDE run. enabled: false - path: logs/ca-skeleton.json + path: logs/tech-log-backend.json max-size: 100MB max-history: 14 total-size-cap: 3GB diff --git a/src/app-bootstrap/src/main/resources/logback-spring.xml b/src/app-bootstrap/src/main/resources/logback-spring.xml index cdf865b..cd4ebb6 100644 --- a/src/app-bootstrap/src/main/resources/logback-spring.xml +++ b/src/app-bootstrap/src/main/resources/logback-spring.xml @@ -4,14 +4,14 @@ + source="APP_NAME" defaultValue="tech-log-backend"/> + source="APP_LOG_FILE_PATH" defaultValue="logs/tech-log-backend.json"/>