Files
LMS/.gitlab-ci.yml

30 lines
859 B
YAML

# Единый merge gate: тесты, ktlint и detekt.
# Testcontainers поднимает PostgreSQL 18 через Docker-in-Docker, поэтому runner
# должен разрешать privileged-сервисы (docker:dind) и сеть до docker:2375.
stages:
- check
variables:
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
GRADLE_USER_HOME: "$CI_PROJECT_DIR/.gradle"
DOCKER_HOST: "tcp://docker:2375"
DOCKER_TLS_CERTDIR: ""
TESTCONTAINERS_HOST_OVERRIDE: "docker"
check:
stage: check
image: eclipse-temurin:21-jdk
services:
- name: docker:27-dind
alias: docker
cache:
key: "gradle-$CI_COMMIT_REF_SLUG"
paths:
- .gradle/caches
- .gradle/wrapper
script:
- ./gradlew --no-daemon test ktlintCheck detekt
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_COMMIT_BRANCH'