34 lines
954 B
YAML
34 lines
954 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 evidenceCheck
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- build/reports/evidence/index.md
|
|
rules:
|
|
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
|
- if: '$CI_COMMIT_BRANCH'
|