ViaUpdater icon

ViaUpdater -----

A plugin that keeps your ViaVersion plugins up to date



ViaUpdater
A Paper plugin that keeps your ViaVersion plugins up to date automatically.
It supports pulling builds from Jenkins CI servers and from GitHub Actions artifacts or source code.
Projects are fully configurable through a YAML config file.

Features
  • Update ViaVersion, ViaBackwards, ViaRewind, and any other configurable project
  • Two source types: Jenkins CI and GitHub (source build or workflow artifact)
  • Per-project source selection with a named default
  • Blocking startup update before ViaVersion loads
  • Auto-update scheduler with a configurable interval
  • Cancellable updates via /viaupdater cancel
  • In-game command with tab completion
  • Isolated Gradle and Maven cache inside the tmp folder during source builds (configurable)

Installation
  1. Build the project with ./gradlew build
  2. Drop the jar into your server's plugins folder
  3. Start the server once to generate plugins/ViaUpdater/config.yml
  4. Fill in your GitHub token and adjust the project list as needed
  5. Restart or reload the config with /viaupdater reload

Configuration
# Whether to delete build data automatically after completion
cleanup: false

# Redirect GRADLE_USER_HOME and Maven local repository into the tmp folder during source builds
# Keeps the global Gradle/Maven cache untouched
isolated-cache: true

github:
token: <GITHUB-TOKEN>

jenkins:
endpoint: https://ci.viaversion.com

startup-update:
enabled: false

auto-update:
enabled: false
interval: 24

projects:
- name: ViaVersion
default: jenkins
sources:
- id: github
type: GITHUB
owner: ViaVersion
repository: ViaVersion
branch: master

- id: github-sponsor
type: GITHUB
owner: ViaVersion
repository: ViaVersionDev
branch: preview

- id: jenkins
type: JENKINS
project: ViaVersion


Source Types

JENKINS
  • id - Unique identifier for this source
  • type - JENKINS
  • project - Project name on the Jenkins server

GITHUB (artifact download)
  • id - Unique identifier for this source
  • type - GITHUB
  • owner - Repository owner
  • repository - Repository name
  • branch - Branch to use
  • workflow - Workflow file name (e.g. build.yml)

GITHUB (source build)
When workflow is omitted, the plugin downloads the source zip and builds the project locally using the bundled Gradle wrapper.

Commands
Permission: viaupdater.command

/viaupdater update all - Update all installed plugins using their default source
/viaupdater update <name> - Update a single plugin using its default source
/viaupdater update <name> <source> - Update a single plugin using a specific source
/viaupdater cancel - Cancel the currently running update
/viaupdater reload - Reload the config without restarting the server


Aliases: viaupdate, updatevia, updateviaversion
Resource Information
Author:
----------
Total Downloads: 46
First Release: Apr 11, 2026
Last Update: Apr 16, 2026
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings