From 5bb3166a54843b65313da7122332adad2e55b3ec Mon Sep 17 00:00:00 2001 From: sb Date: Sat, 11 Jul 2026 10:40:46 +0900 Subject: [PATCH] =?UTF-8?q?ci:=20GitLab=20CI=20=ED=8C=8C=EC=9D=B4=ED=94=84?= =?UTF-8?q?=EB=9D=BC=EC=9D=B8=20=EC=B6=94=EA=B0=80=20(dev=20=EC=A0=84?= =?UTF-8?q?=EC=9A=A9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gradle build(H2 테스트 포함) + jar/junit 리포트. dev 브랜치 푸시에서만 실행. Co-Authored-By: Claude Opus 4.8 (1M context) --- .gitlab-ci.yml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..b83562d --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,34 @@ +# GitLab CI — dognation 백엔드 (Spring Boot 3 / Gradle / Java 17) +# dev 브랜치 푸시에서만 실행. 테스트는 인메모리 H2 라 외부 DB 불필요. +image: eclipse-temurin:17-jdk + +variables: + GRADLE_USER_HOME: "$CI_PROJECT_DIR/.gradle" + GRADLE_OPTS: "-Dorg.gradle.daemon=false" + +# Gradle 래퍼/의존성 캐시로 재빌드 가속. +cache: + key: "$CI_COMMIT_REF_SLUG" + paths: + - .gradle/wrapper + - .gradle/caches + +stages: + - build + +build-test: + stage: build + rules: + - if: '$CI_COMMIT_BRANCH == "dev"' + before_script: + - chmod +x ./gradlew + script: + # build = compile + test(H2) + assemble(jar) + - ./gradlew --no-daemon build + artifacts: + when: always + paths: + - build/libs/*.jar + reports: + junit: build/test-results/test/TEST-*.xml + expire_in: 1 week \ No newline at end of file