33 lines
1.8 KiB
Bash
Executable File
33 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# SuperSam — прод-деплой фронта.
|
|
# Реальная схема: /opt/deployer (порт 9900) на push в main пересобирает образ
|
|
# из compose-контекста (/opt/supersam-dev, ветка dev) и пересоздаёт контейнер.
|
|
# Поэтому docker cp в контейнер ЖИВЁТ ДО ПЕРВОГО ПЕРЕСОЗДАНИЯ — правки должны
|
|
# попадать в git (ветка dev) и собираться в образ.
|
|
set -e
|
|
SRC=/opt/supersam-dev
|
|
echo "── 1. подтянуть dev ──"
|
|
cd "$SRC"
|
|
git fetch gitea-public dev
|
|
git merge --ff-only gitea-public/dev
|
|
git log --oneline -1
|
|
|
|
echo "── 2. пересобрать образ и пересоздать контейнер ──"
|
|
cd /opt/supersam
|
|
docker compose -f docker-compose.app.yml up -d --build
|
|
|
|
echo "── 3. проверка ──"
|
|
IDX=$(docker exec supersam-app sh -c 'grep -o "assets/index-[A-Za-z0-9_.-]*\.js" /usr/share/caddy/index.html | head -1')
|
|
DP=$(docker exec supersam-app sh -c "grep -o 'DashboardPage-[A-Za-z0-9_-]*\.js' /usr/share/caddy/$IDX | sort -u | head -1")
|
|
echo "index=$IDX dashboard=$DP"
|
|
echo -n "маркер «Автодозвон»: "
|
|
docker exec supersam-app sh -c "grep -c Автодозвон /usr/share/caddy/assets/$DP" || true
|
|
echo -n "маркер «шаблоны самовывоза»: "
|
|
docker exec supersam-app sh -c "grep -rl sms_text_template_pickup /usr/share/caddy/assets/*.js | wc -l"
|
|
echo -n "SW: "
|
|
docker exec supersam-app grep -o 'construction-delivery-static-v[0-9]*' /usr/share/caddy/service-worker.js
|
|
|
|
echo "── 4. бэкап кода в S3 ──"
|
|
/opt/supersam/scripts/backup-code-s3.sh >> /var/log/supersam-backup-code.log 2>&1 && echo "backup ok" || echo "backup WARN"
|
|
echo "Deploy completed at $(date)"
|