-
Notifications
You must be signed in to change notification settings - Fork 879
feat: Add support for update checks and notifications #4810
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 1 commit
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
cc28c1b
feat: Add support for checking for updates
mafredri c163af8
wip(site): Add support for informing of updates
mafredri e9ed0b7
Add /api/v2/updatecheck to noauthorize list
mafredri 64ad0f5
Fix edge case where update check has never succeeded
mafredri 0238d5a
Fix logging
mafredri 9e1ea9e
Use AlertBanner for coder version notice
mafredri 979ff80
Update golden files
mafredri b80de3c
Fix margins, improve alert banner and add stories
mafredri 81d11dd
Add authorization, dismissal and fetch after login
mafredri 392d06e
Apply suggestions from code review
mafredri ad38c3b
Add forgotten UpdateCheckBanner.stories.tsx
mafredri 1c9dbc1
fix(api): Amend PR comments
mafredri 49a7bfc
fix(site): Always show prefix for update check errors, remove as const
mafredri 44f6475
fix(site): Add jest tests for UpdateCheckBanner
mafredri File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Add /api/v2/updatecheck to noauthorize list
- Loading branch information
commit e9ed0b753a1c605e22290ec4120c824ab048cb11
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
review(api): Technically, we restrict access in the WebUI so that only owners can view this information. It's not sensitive information by any means, but it's somewhat pointless to show to users. That's why we do not require authorization here (but I can change it if this behavior seems too weird).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unless the "updatecheck" can trigger a real update and potentially crash the deployment, I guess that it's safe to expose it to everyone. On the other hand, if there is a known security issue, all users would be informed that there is an update to install, so the system is currently vulnerable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The updatecheck is read-only, so it won't do anything scandalous. If we ever add a POST endpoint, that should obviously be protected. You raised a good point about vulnerabilities. Since Coder is an open source product, this information would be available to anyone checking the GitHub releases too. More than protecting this endpoint, we should consider how we convey this information through our releases.