Updating an installation used to mean logging into the server and running the updater from the command line. With this delivery, POST /_api/system/update with action=run starts the same updater in the background and answers 202 with the run id.
What runs underneath
It is the path the CLI already used: deploy lock, a snapshot of what will be overwritten, a database dump, a check after the swap, and automatic restore of the files when the check fails. The package is the latest Gestor release, or the tag you pass.
Follow and undo
action=run-statusreturns the state (running,success,rolled_back,locked,error), the snapshot and the end of the log.action=runslists the latest runs./_api/system/rollbackrestores the files from a snapshot.- From the terminal,
c2f update:core <project> --waitstarts and follows the run. The API goes through the very Gestor being replaced, so the follow-up tolerates a few seconds of downtime.
Status
Implemented and validated on an isolated test tenant, with a deliberately broken artifact to exercise the automatic restore. Final acceptance is still pending.
Source: Core · req-201 · BATCH-209