Синхронизация 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` для упрощения навигации по страницам вики.
2.6 KiB
2.6 KiB
Deploy через Actions и Secrets
Эта страница описывает деплой через workflow .github/workflows/deploy-service.yml.
Что делает workflow
- деплоит проект на сервер
192.168.10.14по SSH (ключ) - перед деплоем генерирует
config.jsonиз secrets - копирует архив на сервер, распаковывает в
DEPLOY_PATH - перезапускает systemd-сервис
DEPLOY_SERVICE
Обязательные secrets
Доступ к репозиторию
GIT_TOKEN(илиGITEA_TOKEN)
SSH и деплой
DEPLOY_HOST— должен быть192.168.10.14DEPLOY_PORT— обычно22DEPLOY_USERDEPLOY_SSH_PRIVATE_KEYDEPLOY_PATHDEPLOY_SERVICE
Генерация config.json
CFG_REGRU_USERNAMECFG_REGRU_PASSWORDCFG_EMAILCFG_DOMAINS
CFG_DOMAINS поддерживает два формата:
- JSON-массив:
["dfv24.com", "pages.github.dfv24.com"]
- строка через запятую:
dfv24.com,pages.github.dfv24.com
Если CFG_DOMAIN не указан, в поле domain берётся первый домен из CFG_DOMAINS.
Опциональные secrets
DEPLOY_SSH_KNOWN_HOSTSCFG_DOMAINCFG_WILDCARDCFG_CERT_DIRCFG_LOG_FILECFG_DNS_PROPAGATION_WAITCFG_DNS_CHECK_ATTEMPTSCFG_DNS_CHECK_INTERVALCFG_RENEWAL_DAYSCFG_NPM_ENABLEDCFG_NPM_HOSTCFG_NPM_EMAILCFG_NPM_PASSWORD
Соответствие полей config.json
CFG_REGRU_USERNAME→regru_usernameCFG_REGRU_PASSWORD→regru_passwordCFG_DOMAIN/ первый изCFG_DOMAINS→domainCFG_DOMAINS→domainsCFG_WILDCARD→wildcardCFG_EMAIL→emailCFG_CERT_DIR→cert_dirCFG_LOG_FILE→log_fileCFG_DNS_PROPAGATION_WAIT→dns_propagation_waitCFG_DNS_CHECK_ATTEMPTS→dns_check_attemptsCFG_DNS_CHECK_INTERVAL→dns_check_intervalCFG_RENEWAL_DAYS→renewal_daysCFG_NPM_ENABLED→npm_enabledCFG_NPM_HOST→npm_hostCFG_NPM_EMAIL→npm_emailCFG_NPM_PASSWORD→npm_password
Как запустить деплой
- Откройте Actions
- Запустите workflow
Deploy scripts to remote server - При необходимости задайте
ref(ветка/тег/коммит)
После завершения проверьте статус сервиса на сервере:
sudo systemctl status letsencrypt-regru.service