Перейти к содержанию

CI/CD для Wiki

Цель

Деплой без цирка.

Скрипт деплоя

#!/usr/bin/env bash
set -euo pipefail
SRC="$HOME/mywiki"
DST="/var/www/wiki.axialix.ru"
cd "$SRC"
mkdocs build -d "$DST" --clean
# предсжатие (если есть brotli/zstd/gzip)
if command -v brotli >/dev/null 2>&1 && command -v zstd >/dev/null 2>&1; then
  find "$DST" -type f \( -name "*.html" -o -name "*.css" -o -name "*.js" -o -name "*.svg" -o -name "*.json" \) \
  | while read -r f; do
      brotli -f -q11 "$f" -o "$f.br" || true
      gzip -fk9 "$f" || true
      zstd -f -19 --rm -k "$f" -o "$f.zst" || true
    done
fi
sudo systemctl reload caddy
Запуск

deploy-wiki