Remove a lot of TG domainsm, rewrite scripts
All checks were successful
Deploy DNS Configuration / deploy (push) Successful in 2m15s

This commit is contained in:
Kirill Kodanev 2025-09-12 15:30:31 +03:00
parent 72bbdc2457
commit 5f0e287b98
5 changed files with 61 additions and 139 deletions

View file

@ -2,27 +2,33 @@
set -euo pipefail
# ==============================
# Конфигурация через переменные
# Конфигурация через переменные окружения
# ==============================
TARGET_DIR="${TARGET_DIR:-/opt/appdata/pihole/etc/dnsmasq.d}"
IPSET_CONF="${IPSET_CONF:-91-ipset-bbrkn.conf}"
RESOLVE_CONF="${RESOLVE_CONF:-92-resolve-bbrkn.conf}"
IPSET_CONF="${IPSET_CONF:-/tmp/91-ipset-bbrkn.conf}"
RESOLVE_CONF="${RESOLVE_CONF:-/tmp/92-resolve-bbrkn.conf}"
DOCKER_CONTAINER="${DOCKER_CONTAINER:-pihole}"
echo "Deploying configuration files to $TARGET_DIR"
# Бэкап существующих файлов
if [ -f "$TARGET_DIR/$IPSET_CONF" ]; then
cp "$TARGET_DIR/$IPSET_CONF" "$TARGET_DIR/$IPSET_CONF.backup.$(date +%Y%m%d-%H%M%S)"
# Проверка существования сгенерированных файлов
if [ ! -f "$IPSET_CONF" ] || [ ! -f "$RESOLVE_CONF" ]; then
echo "Error: one or both config files not found!"
exit 1
fi
if [ -f "$TARGET_DIR/$RESOLVE_CONF" ]; then
cp "$TARGET_DIR/$RESOLVE_CONF" "$TARGET_DIR/$RESOLVE_CONF.backup.$(date +%Y%m%d-%H%M%S)"
# Бэкап существующих файлов
if [ -f "$TARGET_DIR/$(basename "$IPSET_CONF")" ]; then
cp "$TARGET_DIR/$(basename "$IPSET_CONF")" "$TARGET_DIR/$(basename "$IPSET_CONF").backup.$(date +%Y%m%d-%H%M%S)"
fi
if [ -f "$TARGET_DIR/$(basename "$RESOLVE_CONF")" ]; then
cp "$TARGET_DIR/$(basename "$RESOLVE_CONF")" "$TARGET_DIR/$(basename "$RESOLVE_CONF").backup.$(date +%Y%m%d-%H%M%S)"
fi
# Копирование новых файлов
cp "/tmp/$IPSET_CONF" "$TARGET_DIR/$IPSET_CONF"
cp "/tmp/$RESOLVE_CONF" "$TARGET_DIR/$RESOLVE_CONF"
cp "$IPSET_CONF" "$TARGET_DIR/"
cp "$RESOLVE_CONF" "$TARGET_DIR/"
# Перезапуск контейнера
echo "Restarting $DOCKER_CONTAINER container..."
@ -35,5 +41,5 @@ if ! docker ps | grep -q "$DOCKER_CONTAINER"; then
fi
echo "Deployment completed successfully"
DOMAIN_COUNT=$(grep -c '^ipset=' "$TARGET_DIR/$IPSET_CONF" || echo "0")
DOMAIN_COUNT=$(grep -c '^ipset=' "$TARGET_DIR/$(basename "$IPSET_CONF")" || echo "0")
echo "Applied configuration for $DOMAIN_COUNT domains"

View file

@ -2,14 +2,14 @@
set -euo pipefail
# ==============================
# Конфигурация через переменные
# Конфигурация через переменные окружения
# ==============================
INPUT_FILE="${INPUT_FILE:-domains.txt}"
INPUT_FILE="${DOMAINS_FILE:-domains.txt}"
IPSET_CONF="${IPSET_CONF:-/tmp/91-ipset-bbrkn.conf}"
RESOLVE_CONF="${RESOLVE_CONF:-/tmp/92-resolve-bbrkn.conf}"
API_URL="${API_URL:-http://10.100.1.2:3000/domains?domain=}"
API_URL="${CHROME_SERVER:-http://127.0.0.1:3000}/domains?domain="
DNS_SERVER="${DNS_SERVER:-8.8.8.8}"
DRY_RUN=false