Update
The update is a single command and pulls the latest version from git. If no mode is supplied, it is read from the installation record.
powershell -ExecutionPolicy Bypass -File .\scripts\windows\update.ps1
sudo ./scripts/linux/update.sh
Flow
- The existing installation and the installed version are read →
Current version: X. backend/.envis backed up (.env.bak.<timestamp>);.envitself is never modified.- Git state is validated: on a dirty working tree, the wrong branch or a
non-fast-forward situation it stops safely —
reset --hardis not used, and user data is never silently deleted. - The latest version is fetched with
git fetch+git pull --ff-only→Target version: Y. - If the version and the commit are unchanged, the operation is a NO-OP (
Already up to date). - Dependencies/builds are refreshed; in Docker mode the images are rebuilt and restarted in a controlled way, in native mode the build is refreshed and the services are restarted.
- A healthcheck runs. If it fails, the update is not considered SUCCESS and a controlled rollback to the previous commit is performed.
Options
| Windows | Linux | Description |
|---|---|---|
-Mode auto\|docker\|native |
--mode auto\|docker\|native |
Installation type |
-Branch <name> |
--branch <name> |
Production branch (default: the current checkout) |
| — | --remote <name> |
Git remote (default: origin) |
-NoPull |
--no-pull |
Rebuild/restart only, without pulling from git |
-Force |
--force |
Rebuilds even when the version/commit is unchanged |
-DryRun |
--dry-run |
Lists what would be done without changing anything |
Version behaviour
The single source of truth is the VERSION file at the repository root
(semantic versioning). The installed version, mode and commit are kept in the
installation state file:
- Linux:
/var/lib/iqv-platform/installed-version(root) or~/.local/state/iqv-platform/installed-version - Windows:
%ProgramData%\iqv-platform\installed-version
The update output shows the version before and after the update; the major/minor/patch difference is reported separately.