feat(update): add rolling dev update channel for per-commit builds

Adds an opt-in Dev channel so panels running CI per-commit builds can self-update to the latest commit, mirroring the stable online-update flow.

CI publishes/overwrites a single fixed-tag pre-release (dev-latest), force-moved to the newest main commit and marked --latest=false so releases/latest stays the stable tag. Builds stamp the short commit via -ldflags; the panel compares the running commit to the dev release commit to detect an update, and update.sh honors XUI_UPDATE_TAG to install from that tag. Linux/systemd only.
This commit is contained in:
MHSanaei
2026-06-24 18:11:22 +02:00
parent 93ff60e568
commit aad2b3eb1e
25 changed files with 556 additions and 48 deletions
+43
View File
@@ -4240,6 +4240,49 @@
}
}
},
"/panel/api/server/setUpdateChannel": {
"post": {
"tags": [
"Server"
],
"summary": "Toggle the panel update channel between stable and the rolling per-commit dev release. Only effective on dev builds.",
"operationId": "post_panel_api_server_setUpdateChannel",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object"
},
"example": {
"dev": true
}
}
}
},
"responses": {
"200": {
"description": "Successful response",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"msg": {
"type": "string"
},
"obj": {}
}
}
}
}
}
}
}
},
"/panel/api/server/updateGeofile": {
"post": {
"tags": [