- Notifications
You must be signed in to change notification settings - Fork928
Closed
Milestone
Description
We want to encourage users (administrators) to run up-to-date Coder installations and make it easy for them to discover when new versions are available.
To achieve this, we should:
- Periodically check for new versions in the Coder server
- Expose this information via API endpoint (e.g.
/api/v2/version
or/api/v2/status
) - Query the API endpoint in the WebUI and show a notification/banner for the administrator, informing of the update
- Allow the above to be dismissed (e.g. mark dismissal in session storage)
For notifying via server:
- Print a log message when a new version is available
- (Optionally) Print a message on every startup
For notifying via WebUI, the following three options are considered:
- Display a persistent (dismissible) banner on the top of page, informing of the update (similar to
WorkspaceDeletedBanner
) - Display a notification via the
GlobalSnackbar
component (needs to be extended with a persistency/dismissal option, or perhaps a new component) - Implement a notification center (e.g. top right corner)
Of these, option 1 is the most attractive option for an MVP. Option 2 is slightly less visible and option 3 requires more thought on what a notification center should look like.
We could also consider a combination of option 1 and 2 where newerpatch
versions are minor nudges viaGlobalSnackbar
andminor
versions are be banners.
Requirements for MVP:
- Notify the administrator when a new update is available
- Link to changelog
- Link to generic update instructions
- Allow dismissing the update notification
Further improvements:
- Detect installation type and give specific update instructions
- (Maybe) Expose this information via CLI (only admins?), e.g.
coder server status