Admin OTA
The admin console includes a version update page for controlled online updates. It shows the current version, latest release tag, release notes, OTA artifact metadata, update tasks, task logs and rollback controls.
Admin page:
https://admin.payincus.com/admin/system-updateRecommended Mode
SYSTEM_UPDATE_APPLY_MODE=auto
SYSTEM_UPDATE_RELEASE_REPOSITORY=VipMaxxxx/payincusauto prefers verified GitHub Release OTA artifacts. If no matching artifact exists for the target tag, it can fall back to Git tag build mode.
The page checks the latest release tag when it opens. If the current deployment is already on the latest tag, the latest version remains visible and the primary action changes to "Updated to latest version". Update tasks are capped at 7 rows per page, with pagination for older tasks and logs.
| Mode | Behavior |
|---|---|
auto | Prefer artifact, fall back to Git build |
artifact | Only use verified OTA artifacts |
git | Checkout the tag and build on the server |
Artifact Flow
- Read
ota-manifest.jsonfrom GitHub Release. - Select the artifact for the current Linux architecture.
- Download outside the install directory.
- Verify size and SHA256.
- Extract to staging.
- Create a new atomic release under
/opt/incudal/releases. - Run Prisma migrations.
- Restart the backend and wait for
/api/health. - Run split host and production verification scripts.
Atomic Layout
/opt/incudal/current -> /opt/incudal/releases/<version-timestamp>
/opt/incudal/releases/v0.0.10-...
/opt/incudal/releases/v0.0.11-...Rollback switches the current symlink back to the previous release, restarts the backend and reruns verification.
Notes
- Only super administrators can start updates and rollbacks.
- Update APIs stay under
/api/admin/system-update/*. - The user portal does not include update controls or update APIs.
- Updates and rollbacks preserve
.env,server/certs,agent-release,plugins,plugin-data,plugin-logs,plugin-staging,.npmand.cache.
