Updater tool written in Go
- Go 100%
|
All checks were successful
Release / Release (push) Successful in 29s
Reviewed-on: #18 |
||
|---|---|---|
| .forgejo | ||
| cmd/updater | ||
| internal/app | ||
| .gitignore | ||
| CHANGELOG.md | ||
| go.mod | ||
| LICENSE | ||
| README.md | ||
| VERSION | ||
Vanaportal Updater
Updater companion for VanaPortal, written in Go.
Overview
- Started by Vanaportal (plugin) automatically on load.
- If started manually, it expects the Windower root path.
- Derives:
root/plugins/for thepluginfiles.root/addons/Vanaportal/for theaddonfiles.root/addons/Vanaportal/data/update.jsonfor metadataroot/addons/Vanaportal/data/tmp/for staged zip assetsroot/addons/Vanaportal/data/updater.state.jsonfor handled/staged state
- Watches the game process
pol.exe. - While
pol.exeis running, it look for new releases and stages new zip files. - When
pol.exeprocess is no longer detected, it applies any staged updates and exits. pluginandaddonare updated independently.
Metadata
The updater writes a JSON metadata file:
{
"channel": "stable",
"status": "idle",
"plugin": {
"version": "",
"download_url": "",
"staged": false
},
"addon": {
"version": "",
"download_url": "",
"staged": false
}
}
status values:
idleupdate_availablestagedapplyingappliederror
Notes
- Zip archives are extracted directly into the target directories.
- Already handled versions are persisted in
updater.state.jsonso the updater does not re-download the same release on every run.