Files
chatballs/scripts/start.ps1
T
AndreyandClaude Fable 5.1 1a61780dec 🚚 chore!: переименование инфраструктуры CustoCRM/hub → Chatballs с миграцией
- каталог code/custocrm → code/chatballs; CLI custocrm → chatballs; пакеты
  hub_platform → chatballs, hub_backend → chatballs_backend (app labels прежние)
- переменные CUS_* и CUSTOCRM_* → CHATBALLS_*; образы chatballs-*; compose-проект
  и база chatballs (были edevs_hub); роли Postgres chatballs_* (были custocrm_*);
  схема RLS chatballs и GUC chatballs.organization_id; cookie chatballs_*
- CI: APP_DIR code/chatballs, DEPLOY_ROOT /opt/chatballs
- deploy/migrate/rename-to-chatballs.sh — миграция существующей установки без
  потери данных: остановка старого проекта, .env (с резервной копией),
  переименование суперпользователя initdb через временную роль, остальных ролей,
  базы, схемы и функции RLS; проверено на локальном стеке
- dev-стек хранит Postgres в bind-mount data/postgres, как prod (именованный том
  compose.dev был устаревшим снимком и вводил в заблуждение)
- снятие демо удаляет объекты, созданные поверх демо-данных тестировавшим
  (звонки по демо-диалогу), вместо падения на PROTECT
- реальные домены *.custocrm.ru и идентификаторы документов не тронуты

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-05 22:21:12 +03:00

29 lines
895 B
PowerShell

param(
[ValidateSet("Cloud", "SelfHosted")]
[string]$Mode = "Cloud"
)
$ErrorActionPreference = "Stop"
if (-not (Test-Path ".env")) {
Copy-Item ".env.example" ".env"
}
# Dev-контур: canonical compose.yaml + dev override (ADR-HUB-0028).
# Режим поставки задаётся процессу Compose и не переписывает локальный .env.
$deliveryMode = if ($Mode -eq "SelfHosted") { "SELF_HOSTED" } else { "CLOUD" }
$previousDeliveryMode = $env:CHATBALLS_DELIVERY_MODE
$env:CHATBALLS_DELIVERY_MODE = $deliveryMode
try {
docker compose -f compose.yaml -f compose.dev.yaml --env-file .env.example --env-file .env up --build
}
finally {
if ($null -eq $previousDeliveryMode) {
Remove-Item Env:CHATBALLS_DELIVERY_MODE -ErrorAction SilentlyContinue
}
else {
$env:CHATBALLS_DELIVERY_MODE = $previousDeliveryMode
}
}