b8ba287128
fix: disable websocket compression for startup logs in Safari ( #8087 )
2023-06-20 16:29:32 +03:00
8dac0356ed
refactor: replace startup script logs EOF with starting/ready time ( #8082 )
...
This commit reverts some of the changes in #8029 and implements an
alternative method of keeping track of when the startup script has ended
and there will be no more logs.
This is achieved by adding new agent fields for tracking when the agent
enters the "starting" and "ready"/"start_error" lifecycle states. The
timestamps simplify logic since we don't need understand if the current
state is before or after the state we're interested in. They can also be
used to show data like how long the startup script took to execute. This
also allowed us to remove the EOF field from the logs as the
implementation was problematic when we returned the EOF log entry in the
response since requesting _after_ that ID would give no logs and the API
would thus lose track of EOF.
2023-06-20 14:41:55 +03:00
b1d1b63113
chore: ensure logs consistency across Coder ( #8083 )
2023-06-20 12:30:45 +02:00
c3aef9363b
feat: add locked TTL field to template meta ( #8020 )
2023-06-19 22:37:55 -04:00
af45e64b1d
chore(coderd/database/gen): improve generated fake stub ( #8088 )
...
* chore(coderd/database/gen): generate arg validation where applicable
* fix(coderd/database/gen): support pointers and slices as return types
2023-06-20 00:05:26 +03:00
9df9ad4503
feat: embed common client requests into the template html ( #8076 )
...
This should reduce the number of API requests a client makes
when loading the dashboard dramatically!
2023-06-18 13:57:27 -05:00
0c5077464b
fix: avoid missed logs when streaming startup logs ( #8029 )
...
* feat(coderd,agent): send startup log eof at the end
* fix(coderd): fix edge case in startup log pubsub
* fix(coderd): ensure startup logs are closed on lifecycle state change (fallback)
* fix(codersdk): fix startup log channel shared memory bug
* fix(site): remove the EOF log line
2023-06-16 17:14:22 +03:00
751c0505bf
chore: add benchmark for prometheusmetrics.MetricsAggregator ( #8066 )
...
* add benchmark for prom metrics aggregator
* fixup! add benchmark for prom metrics aggregator
* make fmt
2023-06-16 14:04:28 +01:00
3ec2e96ff4
chore: tidy up grafana example dashboard ( #8056 )
2023-06-15 14:22:31 -05:00
6e598234b6
fix: only collect prometheus database metrics when explicitly enabled ( #8045 )
...
* fix: only collect prometheus database metrics when explicitly enabled
* add missing test
* de-duplicate wrapping
2023-06-15 12:34:16 +01:00
6c4c3d6ce5
feat: add login type 'none' to prevent password login ( #8009 )
...
* feat: add login type 'none' to prevent login
Users with this login type must use tokens to authenticate.
Tokens must come from some other source, not a /login with password
authentication
2023-06-14 12:48:43 -05:00
3619a3a6dd
feat: add disabling of default 'everyone' group access to template ( #7982 )
...
* feat: add disabling of default 'everyone' group access to template
* add FE to disable everyone group
* require entitlement to uncheck box
2023-06-14 11:08:58 -05:00
e4b6f5695b
chore: separate pubsub into a new package ( #8017 )
...
* chore: rename store to dbmock for consistency
* chore: remove redundant dbtype package
This wasn't necessary and forked how we do DB types.
* chore: separate pubsub into a new package
This didn't need to be in database and was bloating it.
2023-06-14 15:34:54 +00:00
2c843f4011
fix: fix --header flag in CLI ( #8023 )
2023-06-14 21:52:01 +10:00
8c4b7c01e2
chore: remove redundant dbtype package ( #8014 )
...
* chore: rename store to dbmock for consistency
* chore: remove redundant dbtype package
This wasn't necessary and forked how we do DB types.
2023-06-13 19:14:55 +00:00
4f512fb230
chore: use gcr.io for postgres image in OpenContainerized
( #8015 )
...
Refs #7935
2023-06-13 22:03:33 +03:00
7d54fd5e0d
chore: rename store to dbmock for consistency ( #8013 )
2023-06-13 13:57:43 -05:00
a658c94a67
chore: automatically generate dbauthz when new queries are added ( #8007 )
...
* chore: automatically generate dbauthz when new queries are added
* Merge system functions
2023-06-13 13:40:46 -05:00
c12c9f1f4e
chore(go.mod): update cdr.dev/slog ( #7994 )
...
* chore(mod): update cdr.dev/slog
* fix: change uses of []slog.Field to []any to match new API
2023-06-13 18:17:04 +00:00
794a551176
chore: generate dbmetrics automatically when adding new queries ( #7999 )
...
* chore: rename dbgen package files and remove small file
* chore: automatically generate dbmetrics when new queries are added
2023-06-13 12:35:12 -05:00
51226c55ab
test(coderd): close metricscache and avoid background context ( #7996 )
2023-06-13 20:18:31 +03:00
24953869a6
chore: remove key comparison check to fix gitsshkey flake ( #8002 )
...
In tests we use weak randomness and the same key was generated which
caused a test flake here.
2023-06-13 15:51:45 +00:00
9cf3c582cb
test: add unit test that deletes abandoned workspace ( #7990 )
...
* test: add unit test that deletes abandoned workspace
This is to ensure we do not break this functionality in future.
This is important incase this edge case happens, an admin can
clean up the abandoned resources.
2023-06-13 10:42:18 -05:00
9440b3da66
chore: rename dbgen package files and remove small file ( #7997 )
2023-06-13 09:21:12 -05:00
1d0fae83a2
fix(coderd): prevent lost messages in watchWorkspaceAgentMetadata
( #7934 )
...
* fix(codersdk): wait for subscription in WatchWorkspaceAgentMetadata
* fix(coderd): subscribe before sending initial metadata event
* test(coderd): add retries to TestWorkspaceAgent_Metadata to avoid flake
2023-06-13 12:21:06 +00:00
518300a26c
fix(coderd/database): improve pubsub closure and context cancellation ( #7993 )
2023-06-13 15:19:56 +03:00
28f35393e7
chore: generate and order dbfake funcs automatically ( #7986 )
...
* chore: rename `databasefake` to `dbfake`
* Remove unused method
* chore: add generation to dbfake
* Auto gen on make gen
* Fix preserving imports
* gen dbfake
* Add goimports
* Fix the makefile
* Make it panic instead of a comment
2023-06-12 17:40:58 -05:00
685abfc6d7
chore: rename databasefake
to dbfake
( #7979 )
...
* chore: rename `databasefake` to `dbfake`
* Remove unused method
2023-06-12 16:05:37 -05:00
f13632cea8
feat: add impending deletion filter to workspaces page ( #7860 )
...
* add workspace deletion dialog
* add deleting_by query param
* added test
* filtering on workspaces to be deleted
* cleaned up form
* added story
* added banner filter
* PR feedback
* fix lint and stories
* PR feedback
* added enterprise test
* added unit tests in search_test.go
* remove unused fn
* unstaged changes
2023-06-12 11:55:51 -07:00
4068f70d2b
fix(coderd): avoid deadlock in (*logFollower).follow
( #7983 )
2023-06-12 18:38:46 +00:00
c60ea38691
chore: use gcr.io for postgres image in CI ( #7935 )
2023-06-09 13:39:55 +00:00
e4744686ec
fix(codersdk): handle API older than client for startup script behavior ( #7933 )
2023-06-09 13:01:56 +00:00
30a635aa5f
fix(enterprise): ensure scim usernames are validated ( #7925 )
2023-06-08 17:59:49 -05:00
a4cc883be1
chore: add proxy health interval flag/env config ( #7919 )
...
* chore: plumbing for proxy health interval from flag/env
2023-06-08 12:58:24 -05:00
fa8153a0fd
chore: make default workspace proxy editable ( #7903 )
...
* chore: add editing the default workspace proxy
2023-06-08 10:30:15 -05:00
94aa9be33a
feat(cli/ssh): implement wait options and deprecate no-wait ( #7894 )
...
Fixes #7768
Refs #7893
2023-06-08 16:52:44 +03:00
b2324325fa
chore: add warning log if misconfigured groups oidc ( #7874 )
...
* chore: add warning log if misconfigured groups oidc
This is not perfect, but if we find a 'groups' claim and it is not
configured, put out a warning log to give some information
2023-06-08 08:51:59 -05:00
f6db95e71c
test(coderd/database/migrations): increase fixture test timeout
2023-06-07 23:17:29 +00:00
f0c5201617
feat: allow cross-origin requests between users' own apps ( #7688 )
2023-06-07 11:08:14 -08:00
125e9ef00e
fix: validate that parameter names are unique ( #7882 )
2023-06-07 09:44:50 -08:00
74ffd2756a
fix: respect uppercase letters in username filter for audit ( #7880 )
...
* fix: respect uppercase letters in username filter for audit
* updated documentation
2023-06-07 05:48:08 -07:00
5eaf809851
fix(cli): speed up CLI over SSH ( #7885 )
...
By caching the terminal's color profile, we avoid myriad round trips during command execution.
2023-06-07 05:22:58 +00:00
72f59950f2
chore: add prometheus timing to latency endpoint ( #7742 )
...
* chore: Prometheus timing to latency endpoint
2023-06-06 10:26:13 -05:00
ee45b3df77
fix: ignore case while sorting usernames ( #7870 )
2023-06-06 12:37:41 +02:00
660bbb8d38
refactor: deprecate login_before_ready
in favor of startup_script_behavior
( #7837 )
...
Fixes #7758
2023-06-06 11:58:07 +03:00
93378daeb3
feat: sort users by username ( #7838 )
2023-06-06 08:47:59 +02:00
fa8f50a169
fix: fix workspace status filter returning more statuses that requested ( #7732 )
2023-06-05 18:12:10 -05:00
bbecff28ae
feat: return better error if file size is too big to upload ( #7775 )
...
* feat: return better error if file size is too big to upload
* Use a limit writer to capture actual tar size
2023-06-05 11:19:25 +00:00
e016c307ae
Fix postgres ephemeral ports; don't use for TestPubsub_Disconnect ( #7798 )
...
Signed-off-by: Spike Curtis <spike@coder.com >
2023-06-05 09:24:44 +04:00
8f736fe5f5
fix(prometheusmetrics): ensure periodic metrics tick on startup ( #7585 )
2023-06-02 11:56:37 -05:00