diff --git a/Makefile b/Makefile deleted file mode 100644 index 7b38afb..0000000 --- a/Makefile +++ /dev/null @@ -1,69 +0,0 @@ -# Определяем операционную систему -ifeq ($(OS),Windows_NT) - PLATFORM = Windows - # На Windows используем WinSCP.com для SFTP - WINSCP_PATH = "C:\Program Files (x86)\WinSCP\WinSCP.com" - DEPLOY_CMD = $(WINSCP_PATH) /script=winscp_script.txt - DRYRUN_CMD = echo "Windows: проверка SFTP-соединения..." -else - PLATFORM = Unix - # На Unix используем paramiko (SFTP). Аккаунт Jino — SFTP-only: rsync/ssh-exec - # запрещены ("exec request failed on channel 0"), поэтому deploy через - # tools/deploy_sftp.py (рекурсивный mirror + удаление лишнего). - # Венв .venv создаётся автоматически таргетом venv (нужен paramiko). - DEPLOY_CMD = .venv/bin/python tools/deploy_sftp.py - DRYRUN_CMD = .venv/bin/python tools/deploy_sftp.py --dry-run - # Пароль берётся из переменной окружения SSHPASS (см. README.md / docs/DEPLOY_INSTRUCTIONS.md) -endif -.PHONY: build deploy deploy-dry-run clean rebuild help venv - -build: - hugo --minify - @echo "Сайт успешно собран в папку public/" - -# ЕДИНСТВЕННЫЙ способ деплоя — через make deploy. -# Никогда не заменять на rsync/ssh-exec напрямую: на Jino аккаунт SFTP-only. -deploy: build venv -ifeq ($(PLATFORM),Windows) - $(DEPLOY_CMD) -else - @test -n "$$SSHPASS" || (echo "ОШИБКА: переменная SSHPASS (пароль SFTP) не задана. См. README.md / docs/DEPLOY_INSTRUCTIONS.md"; exit 1) - $(DEPLOY_CMD) -endif - -deploy-dry-run: build venv -ifeq ($(PLATFORM),Windows) - @echo "Выполняем проверку соединения с сервером..." - $(DRYRUN_CMD) -else - @test -n "$$SSHPASS" || (echo "ОШИБКА: переменная SSHPASS (пароль SFTP) не задана. См. README.md / docs/DEPLOY_INSTRUCTIONS.md"; exit 1) - $(DRYRUN_CMD) -endif - -# Создаёт venv с paramiko для Unix-деплоя (единожды) -venv: - @if [ ! -x .venv/bin/python ]; then \ - echo "Создаю .venv и ставлю paramiko..."; \ - python3 -m venv .venv && .venv/bin/pip install -q paramiko; \ - fi -clean: -ifeq ($(OS),Windows_NT) - del /q /s public\/ -else - rm -rf public/ -endif - @echo "Папка public удалена" - -rebuild: clean deploy - -help: - @echo "Доступные команды:" - @echo " make build - собрать сайт" - @echo " make deploy - собрать и задеплоить сайт (SFTP через lftp, требуется SSHPASS)" - @echo " make deploy-dry-run - симуляция деплоя (требуется SSHPASS)" - @echo " make clean - удалить папку public" - @echo " make rebuild - полная пересборка сайта" - @echo " make help - показать это сообщение" - @echo "" - @echo "Деплой: export SSHPASS='<пароль SFTP>'; make deploy" - @echo "Пароль хранится в docs/DEPLOY_INSTRUCTIONS.md (winscp_script.txt для Windows)." \ No newline at end of file