From d7b886513f33432a87a9fef6803fae190832b6d2 Mon Sep 17 00:00:00 2001 From: Vladislav Kopnin Date: Tue, 27 Oct 2026 20:39:32 +0300 Subject: [PATCH] =?UTF-8?q?chore:=20=D0=BC=D0=B0=D1=80=D1=88=D1=80=D1=83?= =?UTF-8?q?=D1=82=20=D0=B0=D1=83=D0=B4=D0=B8=D1=82=D0=B0,=20=D0=B2=D0=BD?= =?UTF-8?q?=D1=83=D1=82=D1=80=D0=B5=D0=BD=D0=BD=D0=B8=D0=B9=20=D1=82=D0=BE?= =?UTF-8?q?=D0=BA=D0=B5=D0=BD=20academic=20=D0=B8=20CI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ .gitlab-ci.yml | 29 +++++++++++++++++++ docker-compose.prod.yml | 3 +- .../src/main/resources/application.yml | 2 +- 4 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitignore b/.gitignore index bae232f..fd2ce03 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ build/ .env.prod /data/ /backups/ +/exports/ +/texput.log node_modules/ # Локальные сессии Kilo Code — не часть репозитория. .kilo/ diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..4e83ce3 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,29 @@ +# Единый 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' diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index f548893..e01865e 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -54,8 +54,9 @@ services: image: lms-academic:latest restart: unless-stopped environment: - <<: [*db-env, *jwt-env] + <<: [*db-env, *jwt-env, *internal-env] LMS_DB_URL: jdbc:postgresql://postgres:5432/${LMS_DB_NAME:-lms}?currentSchema=academic + LMS_IDENTITY_URI: http://identity:8081 LMS_CONTENT_ASSETS_DIR: /data/content-assets volumes: - lms_assets:/data/content-assets diff --git a/services/gateway/src/main/resources/application.yml b/services/gateway/src/main/resources/application.yml index 0e8acab..9c1e2e0 100644 --- a/services/gateway/src/main/resources/application.yml +++ b/services/gateway/src/main/resources/application.yml @@ -12,7 +12,7 @@ spring: - id: identity uri: ${LMS_IDENTITY_URI:http://localhost:8081} predicates: - - Path=/api/v1/auth/**,/api/v1/accounts/**,/api/v1/groups/**,/api/v1/students/**,/api/v1/teachers/**,/api/v1/promotion/** + - Path=/api/v1/auth/**,/api/v1/accounts/**,/api/v1/groups/**,/api/v1/students/**,/api/v1/teachers/**,/api/v1/promotion/**,/api/v1/audit/** - id: progress-profile uri: ${LMS_PROGRESS_URI:http://localhost:8083} predicates: