fix+docs: classifier/publisher правки, sources.yaml расширен, глоссарий CONTEXT.md + docs/agents, backup.sh; openspec post-translate/rewrite-as-author/rich-repost-card/selected-layout-stay

This commit is contained in:
kpa39l
2026-09-22 17:39:23 +00:00
parent a10ab9fa3c
commit c8ccd7e187
8 changed files with 302 additions and 94 deletions
+19 -12
View File
@@ -15,15 +15,15 @@ mkdir -p ${BACKUP_DIR}
echo "🔄 [$(date)] Начинаем резервное копирование VESTI..."
# Проверяем, примонтирован ли Яндекс.Диск
if ! mountpoint -q ${YADISK_MOUNT}; then
echo " ❌ ОШИБКА: Яндекс.Диск не примонтирован!"
exit 1
# Проверяем, примонтирован ли Яндекс.Диск (не падаем, если нет — копия локально)
if timeout 10 mountpoint -q ${YADISK_MOUNT}; then
YADISK_UP=1
mkdir -p ${YADISK_TARGET} 2>/dev/null
else
echo " ⚠️ Яндекс.Диск не примонтирован — копия только локально"
YADISK_UP=0
fi
# Создаём папку для бэкапов на Яндекс.Диске (если её нет)
mkdir -p ${YADISK_TARGET} 2>/dev/null
# 1. Бэкап проекта одним архивом
ARCHIVE="${BACKUP_DIR}/vesti_${DATE}.tar.gz"
echo " → Архив проекта..."
@@ -31,9 +31,14 @@ tar czf ${ARCHIVE} -C ${PROJECT_DIR} ${INCLUDE} 2>/dev/null
if [ -s "${ARCHIVE}" ]; then
echo " ✅ Архив: $(du -h ${ARCHIVE} | cut -f1)"
echo " ☁️ Копирование на Яндекс.Диск..."
cp ${ARCHIVE} ${YADISK_TARGET}/
echo " ✅ скопирован на ЯД (${YADISK_TARGET}/)"
# Копирование на ЯД только если архив <= 2GiB (больше — вешает davfs/systemd1)
archive_size=$(stat -c %s "${ARCHIVE}" 2>/dev/null || echo 0)
if [ "${YADISK_UP}" = "1" ] && [ "${archive_size}" -le $((2 * 1024 * 1024 * 1024)) ]; then
echo " ☁️ Копирование на Яндекс.Диск..."
timeout 3600 cp ${ARCHIVE} ${YADISK_TARGET}/ && echo " ✅ скопирован на ЯД (${YADISK_TARGET}/)"
else
echo " 📦 архив ${archive_size}B — НЕ копирую на ЯД (>2GiB или ЯД офлайн), остаётся локально"
fi
else
echo " ❌ Ошибка создания архива!"
fi
@@ -42,8 +47,10 @@ fi
# Локально: оставляем 7 дней
find ${BACKUP_DIR} -type f -name "vesti_*" -mtime +7 -delete 2>/dev/null
# На Яндекс.Диске: оставляем 30 дней
find ${YADISK_TARGET} -type f -name "vesti_*" -mtime +30 -delete 2>/dev/null
# На Яндекс.Диске: оставляем 30 дней (только если смонтирован)
if [ "${YADISK_UP}" = "1" ]; then
timeout 60 find ${YADISK_TARGET} -type f -name "vesti_*" -mtime +30 -delete 2>/dev/null
fi
echo "✅ [$(date)] Резервное копирование завершено!"