#!/usr/bin/env bash # check-pride.sh — проверка шаблонов GtS на ЛГБТ-символику (🏳️🌈, 🏳️⚧️ и т.п.) # Запускать ПОСЛЕ обновления образа gotosocial (перед/после docker compose up -d). # При обнаружении эмодзи в шаблонах — ненулевой код + пути файлов. # # Использование: # ./scripts/check-pride.sh # проверить шаблоны в текущем контейнере gotosocial # IMAGE=superseriousbusiness/gotosocial:0.23.0 ./scripts/check-pride.sh # проверить образ ДО запуска set -u DIR="$(cd "$(dirname "$0")" && pwd)" TMP="$(mktemp -d)" trap 'rm -rf "$TMP"' EXIT if [ -n "${IMAGE:-}" ]; then echo "Проверка образа $IMAGE ..." CID="$(docker create "$IMAGE" 2>/dev/null)" || { echo "ОШИБКА: не удалось создать контейнер из $IMAGE (образ не скачан?)"; exit 2; } docker cp "$CID:/gotosocial/web/template" "$TMP/templates" >/dev/null 2>&1 docker rm "$CID" >/dev/null 2>&1 D="$TMP/templates" else echo "Проверка шаблонов в контейнере gotosocial ..." docker cp gotosocial:/gotosocial/web/template "$TMP/templates" >/dev/null 2>&1 D="$TMP/templates" fi python3 "$DIR/check-pride.py" "$D" rc=$? if [ "$rc" -ne 0 ]; then echo echo "Найдены флаги — обновите /opt/gotosocial/web/template/page_footer.tmpl" echo "и перезапустите: docker compose up -d gotosocial" fi exit "$rc"