Skip to content

frontend: Enforce upgrade policy

Administrator requested to merge core/safe-upgrades into master

Created by: tsenart

This commit changes the frontend to enforce our upgrade policy on startup. A versions table is introduced, where the latest seen version of a service in the Sourcegraph architecture is stored.

For the frontend, this is done on startup, before database migrations are run. If an admin violates our upgrade policy, the frontend will shutdown with a descriptive error, pointing to our documentation.

In a future PR, we'll ensure our upgrade policy is respected by other services. This will be done by sending the service's version along to the frontend on calls to api.InternalClient.WaitForFrontend during a service's startup procedure, and having the frontend respond with an error if the upgrade is invalid, which the service should handle by logging and shutting itself down.

Fixes #7702 Follow-up in #8382

Merge request reports

Loading