40 Commits

Author SHA1 Message Date
Dmitriy Fofanov
c4c5b6da25 fix(release): Gitea 1.22 API использует name/body вместо title/note
Релиз: архив исходников / Упаковка и публикация релиза (push) Successful in 4s
Корневая причина всех пустых релизов: Gitea 1.22.1 API
принимает поля 'name'/'body' для POST и PATCH,
а 'title'/'note' молча игнорируются.

- POST CreateRelease: title/note  name/body
- PATCH EditRelease: title/note  name/body
- Добавлено логирование ответа PATCH для диагностики
- concurrency group предотвращает параллельные run'ы
v1.0.4
2026-02-25 16:52:34 +03:00
Dmitriy Fofanov
6b900ccd9e fix(release): всегда PATCH title+note и concurrency для дедупликации
Релиз: архив исходников / Упаковка и публикация релиза (push) Successful in 2s
Корневая причина пустых релизов: при workflow_dispatch + push тега
запускались 2 параллельных run'а, один перезатирал body другого.

- Всегда делаем PATCH после создания/нахождения релиза
- concurrency group: release-{tag} с cancel-in-progress: true
- Гарантирует что body будет записан независимо от race condition
v0.0.2-test v0.0.1-test
2026-02-25 16:42:59 +03:00
Dmitriy Fofanov
0276aff656 fix(release): обновление существующего релиза (PATCH title+note) и увеличение глубины клона
Релиз: архив исходников / Упаковка и публикация релиза (push) Successful in 2s
- При существующем релизе (auto-created из push тега)  PATCH обновляет title и note
- Глубина клона 50->200 + deepen=500 для корректного git describe (поиск prev_tag)
- Заголовок релиза: TAG вместо 'Release TAG'
2026-02-25 16:31:16 +03:00
Dmitriy Fofanov
c087c8abf2 fix: add retry with exponential backoff for reg.ru API availability check
test_api_access() now retries 3 times with 10s/20s/40s backoff
instead of failing immediately on transient errors like 503
2026-02-25 13:07:17 +03:00
Dmitriy Fofanov
8c31201b51 fix: wait for public DNS resolvers before returning from verify_dns
Previously verify_dns_record_external returned True as soon as the TXT
record was found on authoritative NS (ns1/ns2.reg.ru). But Let's Encrypt
validates through recursive resolvers (like 8.8.8.8) which may have
cached the old DNS response. For wildcard+base domain certs, the second
challenge token was invisible to LE due to stale cache on recursive DNS.

Now the function requires the record to be visible on at least one
public recursive resolver (1.1.1.1/8.8.8.8/9.9.9.9) before returning
success, ensuring Let's Encrypt can verify the challenge.
2026-02-25 13:02:28 +03:00
Dmitriy Fofanov
3cc3a9876e fix: use POST /upload endpoint for updating NPM certificates
NPM returns 404 on PUT /api/nginx/certificates/{id} with multipart data.
The correct endpoint for uploading certificate files is:
POST /api/nginx/certificates/{id}/upload

Also removed unnecessary 'provider' data field from the upload request.
2026-02-25 10:13:17 +03:00
Dmitriy Fofanov
fa8fbc6323 Улучшена обработка загрузки и обновления сертификатов: добавлена детекция стабильного состояния, улучшена подготовка файлов сертификата для загрузки. 2026-02-25 09:31:23 +03:00
Dmitriy Fofanov
6717d23199 Обновлена логика обработки файла CHANGELOG.md и изменены заголовки релиза для улучшения совместимости и читаемости.
Релиз: архив исходников / Упаковка и публикация релиза (push) Successful in 2s
v1.0.3
2026-02-25 09:04:57 +03:00
Dmitriy Fofanov
3a3a5be790 Увеличены значения параметров ожидания и проверки DNS в конфигурации и документации
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
2026-02-25 08:49:21 +03:00
Dmitriy Fofanov
df2a6192f5 Добавлено определение актуальной директории сертификата и улучшена обработка имен сертификатов в классе LetsEncryptManager
Релиз: архив исходников / Упаковка и публикация релиза (push) Successful in 2s
v1.0.2
2026-02-25 08:06:28 +03:00
Dmitriy Fofanov
491db2d5bf Исправлены опечатки и улучшена читаемость документации
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
2026-02-25 07:54:18 +03:00
Dmitriy Fofanov
81e1186691 Исправлены опечатки и улучшена читаемость документации по сборке, командам, конфигурации, деплою, синхронизации Gitea и тестированию.
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
2026-02-25 02:15:48 +03:00
Dmitriy Fofanov
528822df6c Исправлена опечатка в описании использования wildcard сертификата для поддоменов в документации Nginx Proxy Manager.
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 1s
2026-02-25 02:10:00 +03:00
Dmitriy Fofanov
3f48fbb63b Улучшение процесса выпуска релизов: поддержка динамической ветки по умолчанию и улучшенная обработка тегов. 2026-02-25 02:07:28 +03:00
Dmitriy Fofanov
c6588a63ed Update documentation for Let's Encrypt workflow and Nginx Proxy Manager integration
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
Релиз: архив исходников / Упаковка и публикация релиза (push) Failing after 2s
- Enhanced the Let's Encrypt Workflow documentation with detailed steps for creating and renewing wildcard SSL certificates using Nginx Proxy Manager.
- Added troubleshooting tips for API issues with reg.ru, including common errors and their resolutions.
- Expanded the Testing documentation to include comprehensive guides on using test certificates, automation scripts, and transitioning to production certificates.
- Revised Project Structure documentation to reflect the current organization of files and scripts.
- Improved clarity and formatting across all documentation sections for better readability and user guidance.
v1.0.1
2026-02-25 01:51:45 +03:00
Dmitriy Fofanov
44f7ab1f5c Добавлены новые документы и инструкции по автоматизации SSL сертификатов Let's Encrypt для reg.ru, включая:
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 3s
- Структура проекта и основные скрипты (PROJECT_STRUCTURE.md)
- Быстрый старт сборки исполняемых файлов (QUICKSTART_BUILD.md)
- Автоматические релизы через GitHub и Gitea (RELEASE_GUIDE.md)
- Подробная инструкция по использованию скриптов (SSL_SCRIPTS_README.md)
- Руководство по тестированию SSL сертификатов (TESTING_GUIDE.md)
- Инструкции по настройке Nginx Proxy Manager с SSL (Настройке Nginx Manager с SSL .md)
- Создание и продление wildcard сертификата в Nginx Proxy Manager (Создание и продление SSL сертификата.md)
2026-02-25 01:42:29 +03:00
Dmitriy Fofanov
f3dd4a7d49 Улучшение перезапуска службы: добавлено использование флага --no-block и увеличено время ожидания 2026-02-25 01:29:18 +03:00
Dmitriy Fofanov
6aeea3156e Удалено автоматическое срабатывание развертывания при пуше в ветку master 2026-02-25 01:27:18 +03:00
Dmitriy Fofanov
adc7882ede Улучшение развертывания: добавлено создание виртуального окружения и установка зависимостей Python при развертывании
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Has been cancelled
2026-02-25 01:25:17 +03:00
Dmitriy Fofanov
1257fa2665 Обновление пути к конфигурационному файлу: изменен путь по умолчанию для config.json на /etc/letsencrypt-regru/config.json
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Successful in 8s
2026-02-25 01:00:53 +03:00
Dmitriy Fofanov
71a50704d7 Улучшение развертывания службы: добавлено управление статусом и журналом службы после перезапуска
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Successful in 7s
2026-02-25 00:57:54 +03:00
Dmitriy Fofanov
cf186ea3fa Улучшение обработки доменов: добавлено извлечение первого не-wildcard домена из первой SAN группы
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 4s
2026-02-25 00:56:13 +03:00
Dmitriy Fofanov
72a01af63f Добавлено развертывание конфигурационного файла: добавлен путь к config.json и соответствующие команды для его копирования и установки прав
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Successful in 6s
2026-02-25 00:43:46 +03:00
Dmitriy Fofanov
3377065e19 Исправление обработки статуса службы: добавлено игнорирование ошибок при выводе статуса службы
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Successful in 6s
2026-02-25 00:34:37 +03:00
Dmitriy Fofanov
09ba709998 Улучшение процесса развертывания: замена rsync на cp для копирования файлов и добавление удаления содержимого целевой директории перед копированием
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 10s
2026-02-25 00:33:21 +03:00
Dmitriy Fofanov
8a91d7be84 Улучшение конфигурации SSH: сохранение приватного ключа с точным форматированием и добавлена проверка ключа
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 3s
2026-02-25 00:31:47 +03:00
Dmitriy Fofanov
661e96b30c Улучшение конфигурации SSH: добавлены параметры таймаута и проверки соединения
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 1s
2026-02-25 00:29:52 +03:00
Dmitriy Fofanov
6978ff5620 Улучшение конфигурации SSH: добавлено сканирование ключей хоста и обновление known_hosts
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Has been cancelled
2026-02-25 00:18:44 +03:00
Dmitriy Fofanov
cc5e79f96a Улучшение конфигурации SSH: добавлено управление режимом проверки ключей хоста
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 2s
2026-02-25 00:16:00 +03:00
Dmitriy Fofanov
dd4090cde4 Упрощение кода: улучшена читаемость и форматирование скрипта создания конфигурации для деплоя
Deploy scripts to remote server / Upload and deploy on 192.168.10.14 (push) Failing after 1s
2026-02-25 00:14:40 +03:00
Dmitriy Fofanov
a01e8452ca Добавлено условие проверки существования тега перед клонированием и создание тега через API, если он отсутствует на удаленном сервере 2026-02-25 00:11:56 +03:00
Dmitriy Fofanov
5d5cda44c7 Добавлены улучшения для определения целевого коммита и обработки ошибок при создании релиза 2026-02-25 00:05:17 +03:00
Dmitriy Fofanov
d3ebd3b675 Улучшение обработки коммитов: добавлена проверка на наличие .git и соответствующие сообщения
Релиз: архив исходников / Упаковка и публикация релиза (push) Failing after 1s
v1.0.0
2026-02-25 00:03:05 +03:00
Dmitriy Fofanov
8bdd842efa Упрощение кода: улучшена читаемость скрипта создания архивов исходного кода 2026-02-25 00:01:26 +03:00
Dmitriy Fofanov
8b92f0d28b Упрощение кода: реорганизованы импорты и отступы в скрипте создания архивов исходного кода 2026-02-24 23:55:34 +03:00
Dmitriy Fofanov
f9b9c20f54 Добавлены новые файлы и обновлены триггеры для workflow деплоя, включая поддержку запуска через Makefile и улучшение документации по CI.
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
2026-02-24 23:50:12 +03:00
Dmitriy Fofanov
90966663bf Добавлены улучшения для управления сертификатами и синхронизации Wiki
- Обновлены скрипты для поддержки групп сертификатов (SAN) в конфигурации.
- Добавлен новый скрипт для запуска GitHub Actions workflows.
- Обновлены Makefile и документация для отражения новых возможностей.
- Улучшена обработка доменов в коде и конфигурации.
2026-02-24 23:07:36 +03:00
Dmitriy Fofanov
3aacf626a3 Функция: Добавлен рабочий процесс GitHub Actions для синхронизации вики
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
- Реализован новый рабочий процесс в `.github/workflows/wiki-sync.yml` для синхронизации вики с основным репозиторием при отправке изменений в ветку master.

- Рабочий процесс включает шаги клонирования репозитория, проверки наличия папки wiki и синхронизации содержимого вики с вики DFGit.

Документация: Создание описания секретов для развертывания и конфигурации

- Добавлен файл `secrets_description.md`, подробно описывающий необходимые секреты для развертывания и настройки проекта `configure_nginx_manager`.

Документация: Добавление документации по сборке и релизам

- Создан файл `Build_and_Release.md`, описывающий процесс сборки с использованием PyInstaller и этапы упаковки релиза.

Документация: Введение журнала изменений для отслеживания версий

- Добавлен файл `Changelog.md` для краткого описания основных версий и изменений, внесенных в проект.

Документация: Документирование команд и скриптов, доступных в проекте

- Создан файл `Commands.md` для перечисления команд CLI и команд Makefile для удобства пользователей.

Документация: Предоставление подробной информации о конфигурации проекта

- Добавлен файл `Configuration.md` для объяснения структуры конфигурации JSON и параметров.

Документация: Описание действий развертывания и необходимых секретов

- Создан файл `Deploy_Actions_Secrets.md` для описания секретов, необходимых для развертывания через GitHub Actions.

Документация: Объяснение методов синхронизации Gitea с GitHub

- Добавлен файл `Gitea_Sync.md` для описания различных методов синхронизации репозиториев из Gitea в GitHub.

Документация: Создание домашней страницы для вики проекта

- Создан файл `Home.md`, который служит основной точкой входа для вики проекта.

Документация: Описание процедур установки проекта

- Добавлен файл `Installation.md` с подробным описанием методов и требований к установке.

Документация: Описание рабочего процесса Let's Encrypt для управления сертификатами

- Создан файл `LetsEncrypt_Workflow.md` для объяснения процесса получения и обновления SSL-сертификатов.

Документация: Интеграция с документацией Nginx Proxy Manager

- Добавлен файл `Nginx_Proxy_Manager.md` для объяснения синхронизации сертификатов с NPM.

Документация: Определение структуры проекта для лучшего понимания

- Создан файл `Project_Structure.md` для описания ключевых файлов и скриптов проекта.

Документация: Устранение распространенных проблем с API reg.ru

- Добавлен файл `RegRu_API_Troubleshooting.md` для помощи пользователям в диагностике и устранении проблем, связанных с API.

Документация: Предоставить рекомендации по тестированию проекта

- Создан файл `Testing.md`, описывающий стратегии тестирования и ограничения, связанные с Let's Encrypt.

Документация: Добавить боковую панель навигации для вики

- Создан файл `_Sidebar.md` для упрощения навигации по страницам вики.
2026-02-24 22:27:34 +03:00
Dmitriy Fofanov
073288f09e Дополнение: Добавлен скрипт управления DNS-сервером Let's Encrypt RegRu и связанные с ним службы systemd
- Реализован скрипт letsencrypt_regru_dns.sh для автоматического управления SSL-сертификатами с использованием проверки DNS-01 через API reg.ru.

- Создан скрипт nginxproxymanager.sh для управления установкой и обновлениями Nginx Proxy Manager.

- Добавлен файл requirements.txt с необходимыми зависимостями Python.

- Внедрена служба systemd и таймер для автоматического обновления сертификатов Let's Encrypt.

- Разработан скрипт test_certificate.sh для генерации самоподписанных SSL-сертификатов в целях тестирования.
2026-02-24 21:25:36 +03:00
0d86b8eb47 Initial commit 2026-02-22 22:45:35 +03:00