
AutoUpdatePlugins
Плагин для автоматического обновления других плагинов на сервере Minecraft. Поддерживает GitHub, Modrinth, SpigotMC, CurseForge и другие источники. Настраивается под каждый файл отдельно.
AutoUpdatePlugins - автоматическое обновление плагинов на сервере Майнкрафт
Если ты админишь сервер Minecraft, то знаешь эту боль: плагины выходят с обновлениями, а ты сидишь и вручную качаешь каждый, перезагружаешь сервер, проверяешь совместимость. AutoUpdatePlugins решает эту проблему раз и навсегда.
Этот плагин сам проверяет наличие новых версий для твоих плагинов, скачивает их и устанавливает. Поддерживает кучу источников: GitHub, Jenkins, SpigotMC, Modrinth, Bukkit, CurseForge, MineBBS и даже Ghost Chop Build Station v2. В общем, почти всё, что может понадобиться.
Команды
/aup- информация о плагине/aup reload- перезагрузить конфиг/aup update- запустить обновление вручную/aup log- посмотреть полный лог/aup stop- остановить текущее обновление
Что умеет
- Автоматически находит ссылки на скачивание по странице релиза плагина
- Поддерживает скачивание пре-релизов с GitHub
- Умеет качать файлы из GitHub Actions (через nightly.link)
- Для Modrinth можно указать конкретную платформу (loader)
- Подбирает нужный файл среди нескольких в одном релизе (GitHub, Jenkins, Modrinth)
- Проверяет целостность .jar и .zip файлов
- Кэширует последние обновления - не качает одно и то же дважды
- Не устанавливает дубликаты
- Если что-то пошло не так - перезапрашивает
- Каждую задачу можно настроить отдельно
- Есть проверка SSL-сертификатов (можно отключить)
- Настраиваемый уровень логов
- Мультиязычность (сообщения можно менять в конфиге)
Как это выглядит в логах
Настройка конфига (config.yml)
Конфиг довольно гибкий. Вот основные параметры:
# Задержка перед первым запуском после старта сервера (сек)
startupDelay: 64
# Частота повторных проверок (сек), после изменения нужен рестарт
startupCycle: 14400 # 4 часа
# Путь к папке обновлений (как в bukkit.yml)
updatePath: './plugins/update/'
# Временная папка для скачивания
tempPath: './plugins/AutoUpdatePlugins/temp/'
# Папка с работающими плагинами (для проверки хэшей)
filePath: './plugins/'
# Включить запись последнего обновления (temp.yml)
enablePreviousUpdate: true
# Проверка целостности .jar/.zip файлов (пытается открыть как zip)
zipFileCheck: true
zipFileCheckList: '\.(?:jar|zip)$'
# Не перемещать в update, если хэш совпадает с уже установленным файлом (MD5)
ignoreDuplicates: true
# Включить проверку SSL (лучше не выключать)
sslVerify: true
# Количество повторов при ошибке сети
fetchErrRetry: 4
fetchErrRetryDelay: 5 # начальная задержка, +2 сек с каждым повтором
# Прокси (если нужно)
proxy:
type: DIRECT # DIRECT | HTTP | SOCKS
host: '127.0.0.1'
port: 7890
reqApi: true
reqDownload: true
Примеры настройки списка плагинов (list)
Вот как можно настроить обновление для разных источников:
list:
# GitHub - обычный релиз
- file: 'EssentialsX.jar'
url: https://github.com/EssentialsX/Essentials
get: 'EssentialsX-.*\.jar' # если несколько файлов - выбираем нужный по регулярке
# GitHub Actions - скачивание артефактов сборки
- file: 'TrPlugins.jar'
url: https://github.com/TrPlugins/TrChat/actions
get: 'TrChat Artifacts'
zipGet: 'TrChat-[-\.\d]+\.jar' # распаковка и выбор файла внутри архива
# SpigotMC - просто ссылка на ресурс, плагин сам найдёт файл
- file: 'test.jar'
url: https://www.spigotmc.org/resources/invsee.82342/
zipGet: 'InvSee\+\+\.jar'
# Modrinth - можно указать платформу (loader)
- file: 'simple-voice-chat.jar'
url: /plugins/simple-voice-chat
loader: paper # paper, purpur, fabric и т.д.
Важно знать
- Если в конфиге указать путь к файлу с подпапкой (например
./serverConfig.yml), тоpathпереопределитupdatePathиfilePathдля этого файла. - Для GitHub можно включить скачивание пре-релизов через
getPreRelease: true. - Если не указывать
get, плагин скачает первый попавшийся файл из релиза. - Лучше не ставить
startupCycleслишком маленьким - будет нагрузка на сеть и сервер. - Если используешь прокси, убедись что он работает и доступен.
- Плагин сам проверяет целостность скачанных .jar/.zip файлов - если файл битый, он не установится.
- Сообщения можно кастомизировать в разделе
messageконфига.
AutoUpdatePlugins реально экономит кучу времени, особенно если у тебя сервер с десятками плагинов. Просто настроил один раз и забыл - всё само обновляется. На слабом железе или VDS с ограниченным трафиком лучше выставить интервал проверки побольше, чтобы не долбить сеть каждые 5 минут.
