diff --git a/dev/contour-transfer-guide.md b/dev/contour-transfer-guide.md index ca4db64..69027ae 100644 --- a/dev/contour-transfer-guide.md +++ b/dev/contour-transfer-guide.md @@ -1,6 +1,7 @@ # Перенос сервисов АРМ КА в контур банка: гайд для разработчика -Разработка ведётся **снаружи** (workspace `awp-ca`, Gitea проекта). В контур банка (Gitea платформы РАИСА и её CI/CD) +Разработка ведётся **снаружи** (workspace `awp-ca`, Gitea проекта). В контур банка (GitLab платформы РАИСА и его CI/CD; +Gitea в контуре нет) уезжают только три сервисных репозитория — `arm-core`, `tabular-parser`, `scan-gateway` — **снимками дерева, без истории**. Репозитории `docs` и `fixtures` в контур не переносятся: решение владельца 06.10.2026. Этот документ — что именно уезжает, чего в платформе нет, как подготовить снимок скриптом и как его положить в контур. @@ -78,7 +79,8 @@ docs/scripts/prepare-contour-snapshot.sh scan-gateway /tmp/contour ## 4. Как положить снимок в контур -Репозитории контура — по одному на сервис, имена как снаружи. Первый перенос и каждый следующий делаются одинаково: +Репозитории контура — проекты GitLab, по одному на сервис, имена как снаружи. Первый перенос и каждый следующий делаются +одинаково (вместо PR в GitLab — merge request, в остальном git тот же): ```bash git clone /arm-core contour-arm-core @@ -87,7 +89,7 @@ rsync -a --delete --exclude .git /tmp/contour/arm-core/ ./ # дерев git status --short # прочитать diff: он должен совпадать с изменениями снаружи git add -A git commit -m "sync: arm-core@1d7f2c8 (2026-10-06)" # хеш и дата — из SNAPSHOT.md -git push -u origin sync/arm-core-1d7f2c8 # дальше PR/мерж по регламенту контура +git push -u origin sync/arm-core-1d7f2c8 # дальше merge request и мерж по регламенту GitLab контура ``` `--delete` обязателен: иначе файлы, удалённые или переименованные снаружи, останутся в контуре. Если в контуре делали @@ -97,7 +99,7 @@ git push -u origin sync/arm-core-1d7f2c8 # дальш его копия схемы должна быть не старше копий сервисов). Если снаружи поднималась версия контракта (`api/contracts/*.json`, `CONTRACT_VERSION` в `api/src/contract/common.py`), переносить все три сервиса одним заходом. -## 5. Проверка в контуре перед PR +## 5. Проверка в контуре перед merge request ```bash make venv # python3.11 -m venv + pip через Nexus (вместо setup/setup.sh; тот ставит только прод-зависимости) @@ -163,7 +165,7 @@ git diff <коммит sync> HEAD -- . ':!SNAPSHOT.md' > /tmp/contour-arm-core.p 2. Правки из контура (раздел 7) возвращены наружу и слиты. 3. `prepare-contour-snapshot.sh` по каждому сервису; скрипт завершился словами «снимок готов». 4. В контуре: клон, ветка, `rsync --delete`, просмотр `git status`, коммит `sync: @ (<дата>)`, `make venv`, - `make check` (пропуски — только из раздела 5), для arm-core `make web-check`, PR по регламенту контура. + `make check` (пропуски — только из раздела 5), для arm-core `make web-check`, merge request по регламенту GitLab контура. 5. Порядок мержа при смене версии контракта: arm-core → tabular-parser → scan-gateway. 6. Снаружи в `context/09-delivery-plan.md` или в issue синхронизации отметить, какие хеши перенесены.