Steven Masley
a1db82582f
chore: Dynamic CSP connect-src to support terminals connecting to workspace proxies ( #7352 )
...
* chore: Expose proxy hostnames to csp header
2023-05-02 08:30:44 -05:00
Ammar Bandukwala
4b9621f9ae
fix(coderd): don't hang on first gitauth clone ( #7331 )
...
Previously, the `coder git ssh` command would hang on the API, which was endlessly polling the database for oauth tokens that expire in the future.
Some oAuth implementations (including GitHub by default) will not give back a token expiry date, and the absence of such a date was represented as a zero data in the database as opposed to a null value.
Follow-up calls to `git clone` would succeed because this hot path doesn't check expiry, perhaps originally by mistake.
In addition to fixing the zero date issue, this PR removes all gitauth PubSub, which added too much complexity when the polling interval is 1 second.
2023-05-01 19:19:41 +00:00
Steven Masley
4a9d1c16c7
chore: UI/UX for regions ( #7283 )
...
* chore: Allow regular users to query for all workspaces
* FE to add workspace proxy options to account settings
* WorkspaceProxy context syncs with coderd on region responses
---------
Co-authored-by: Dean Sheather <dean@deansheather.com >
2023-04-28 16:04:52 -05:00
Colin Adler
59efa4a528
fix(audit): ensure template creation errors are audited ( #7315 )
2023-04-27 18:55:34 -05:00
Marcin Tojek
77d9937dc4
fix: vite fatals on receiving HTTP4xx ( #7306 )
...
* fix: vite fatals on receiving HTTP4xx
* tune Vite
* fmt
* rewrite
* fmt
2023-04-27 19:04:24 +02:00
Marcin Tojek
bb0a38b161
feat: Implement aggregator for agent metrics ( #7259 )
2023-04-27 12:34:00 +02:00
Spike Curtis
b6666cf1cf
chore: tailnet debug logging ( #7260 )
...
* Enable discovery (disco) debug
Signed-off-by: Spike Curtis <spike@coder.com >
* Better debug on reconnectingPTY
Signed-off-by: Spike Curtis <spike@coder.com >
* Agent logging in appstest
Signed-off-by: Spike Curtis <spike@coder.com >
* More reconnectingPTY logging
Signed-off-by: Spike Curtis <spike@coder.com >
* Add logging to coordinator
Signed-off-by: Spike Curtis <spike@coder.com >
* Update agent/agent.go
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
* Update agent/agent.go
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
* Update agent/agent.go
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
* Update agent/agent.go
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
* Clarify logs; remove unrelated changes
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
2023-04-27 13:59:01 +04:00
Dean Sheather
f1dfeb03db
chore: fix flake in apptest reconnecting-pty test ( #7281 )
2023-04-26 00:31:41 +00:00
Colin Adler
b62b6af0eb
fix(healthcheck): don't allow panics to exit coderd ( #7276 )
2023-04-25 15:11:45 +00:00
Dean Sheather
a98341612c
feat: add regions endpoint for proxies feature ( #7277 )
...
* feat: add regions endpoint for proxies feature
2023-04-25 09:37:52 -05:00
Cian Johnston
8fc8559076
fix(coderd): ensure that user API keys are deleted when a user is ( #7270 )
...
Fixes an issue where API tokens belonging to a deleted user were
not invalidated:
- Adds a trigger to delete rows from the api_key stable when the
column deleted is set to true in the users table.
- Adds a trigger to the api_keys table to ensure that new rows
may not be added where user_id corresponds to a deleted user.
- Adds a migration to delete all API keys from deleted users.
- Adds tests + dbfake implementation for the above.
2023-04-24 21:48:26 +01:00
Steven Masley
3129741e08
chore: Proxy health status checks + endpoint ( #7233 )
...
* chore: Implement workspace proxy health check cron
At a given interval will check the reachability of workspace proxies.
* Proxyhealth is an enterprise feature
* Start proxyhealth go routine on enterprise coder
2023-04-24 10:25:35 -05:00
Marcin Tojek
c000f2ec28
fix: coder_parameter fallbacks to default ( #7240 )
2023-04-24 09:51:34 +02:00
Mathias Fredriksson
6f06f8dadb
test: Fix test timeouts due to contexts created too early ( #7242 )
2023-04-21 17:32:25 +03:00
Mathias Fredriksson
ea78ca5dff
test(coderd/workspaceapps): Fix incorrect use of testing.T ( #7243 )
2023-04-21 17:32:10 +03:00
Steven Masley
4353ad7940
chore: Remove url and wildcard url from moon create ( #7224 )
...
* chore: Remove url and wildcard url from moon create
2023-04-20 21:09:14 -05:00
Dean Sheather
68667323f3
chore: support signed token query param for web terminal ( #7197 )
...
* chore: add endpoint to get token for web terminal
* chore: support signed token query param for web terminal
2023-04-20 23:59:45 +00:00
Colin Adler
745868fd8a
revert: chore: upgrade tailscale ( #7236 )
2023-04-20 17:58:22 -05:00
Mathias Fredriksson
ad0070354f
test: Fix generated workspace name length ( #7228 )
2023-04-20 18:40:36 +00:00
Colin Adler
a86830a283
chore: upgrade tailscale ( #7207 )
2023-04-20 13:29:56 -05:00
Kira Pilot
e2a7448cc8
fix: allow update of empty template description ( #7225 )
2023-04-20 10:59:57 -07:00
Steven Masley
7fa1112958
chore: Enforce workspace proxy unique name case insensitive ( #7202 )
...
* chore: Enforce workspace proxy unique name case insensitive
2023-04-20 11:30:52 -05:00
Steven Masley
a5a5c4d400
chore: Add workspace proxy enterprise cli commands ( #7176 )
...
* feat: Add workspace proxy enterprise cli commands
* chore: Handle custom workspace proxy options. Remove excess
* chore: Add endpoint to register workspace proxies
2023-04-20 09:48:47 -05:00
Dean Sheather
528a0686c0
chore: fix deadlock in dbfake and incorrect lock types ( #7218 )
...
I manually went through every single dbfake function and ensured it has
the correct lock type depending on whether it writes or only reads.
There were a surprising amount of methods that had the wrong lock type
(Lock when only reading, or RLock when writing (!!!)).
This also manually fixes every method that acquires a RLock and then
calls a method that also acquires it's own RLock to use noLock methods
instead. You cannot rely on acquiring a RLock twice in the same
goroutine as RWMutex prioritizes any waiting Lock calls.
I tried writing a ruleguard rule for this but because of limitations in
ruleguard it doesn't seem possible.
2023-04-20 21:53:34 +10:00
Colin Adler
5f5edb18b0
chore(healthcheck): fix DERP test flakes ( #7211 )
2023-04-19 20:03:05 -05:00
Colin Adler
57c4de4647
feat(healthcheck): add accessurl check ( #7193 )
2023-04-18 15:52:00 -05:00
Steven Masley
7f041fecd8
test: Enable filter test with cancelled context ( #7189 )
...
* test: Enable filter test with cancelled context
* fixup! test: Enable filter test with cancelled context
2023-04-18 11:06:10 -05:00
Colin Adler
b44e6e6711
fix(healthcheck): remove t.Parallel() from healthcheck tests ( #7174 )
2023-04-17 15:01:47 -05:00
Steven Masley
658246d5f2
chore: add workspace proxies to the backend ( #7032 )
...
Co-authored-by: Dean Sheather <dean@deansheather.com >
2023-04-17 19:57:21 +00:00
Bruno Quaresma
76b5deea78
chore(site): Remove template editor out of experimental ( #7165 )
2023-04-17 14:40:21 -03:00
Ammar Bandukwala
80bf042528
chore(coderd): remove timing check ( #7144 )
2023-04-17 17:40:02 +00:00
Mathias Fredriksson
bf0fed4f3f
chore: Update pion/udp and improve parallel/non-parallel tests ( #7164 )
...
* test(all): Improve and fix subtests with parallell/nonparallel parents
* chore: Update pion/udp to fix buffer close
2023-04-17 20:23:10 +03:00
Mathias Fredriksson
8b2aead7f4
test(coderd/rbac): Use static name for tests ( #7155 )
2023-04-17 12:17:18 +00:00
Steven Masley
2137db0445
test: Handle Filter flake with ctx errors ( #7119 )
...
* test: Handle Fitler flake with ctx errors
* Add unit test to check filter for proper error
* Correctly return category of errors
2023-04-14 12:30:35 -05:00
Marcin Tojek
942aba3a66
feat: expose agent stats via Prometheus endpoint ( #7115 )
...
* WIP
* WIP
* WIP
* Agents
* fix
* 1min
* fix
* WIP
* Test
* docs
* fmt
* Add timer to measure the metrics collection
* Use CachedGaugeVec
* Unit tests
* WIP
* WIP
* db: GetWorkspaceAgentStatsAndLabels
* fmt
* WIP
* gauges
* feat: collect
* fix
* fmt
* minor fixes
* Prometheus flag
* fix
* WIP
* fix tests
* WIP
* fix json
* Rx Tx bytes
* CloseFunc
* fix
* fix
* Fixes
* fix
* fix: IgnoreErrors
* Fix: Windows
* fix
* reflect.DeepEquals
2023-04-14 16:14:52 +02:00
Colin Adler
085330ad96
fix(provisionerd): only heartbeat when logs aren't being flushed ( #7110 )
2023-04-13 14:02:10 -05:00
Colin Adler
f5a8a27714
fix(healthcheck): prevent infinite loop if DERP message exchange fails ( #7112 )
2023-04-13 13:46:16 -05:00
Steven Masley
38e5b9679b
chore: Rbac errors should be returned, and not hidden behind 404 ( #7122 )
...
* chore: Rbac errors should be returned, and not hidden behind 404
SqlErrNoRows was hiding actual errors
* Replace sql.ErrNoRow checks
* Remove sql err no rows check from dbauthz test
* Fix to use dbauthz system user
2023-04-13 13:06:16 -05:00
Kira Pilot
f6c89a2615
feat: differentiate new user registration from user login in the audit log ( #7096 )
...
* auditing register events
* fix tests
* update docs
* update comments
* Update coderd/audit/request.go
Co-authored-by: Colin Adler <colin1adler@gmail.com >
---------
Co-authored-by: Colin Adler <colin1adler@gmail.com >
2023-04-12 11:46:16 -07:00
Colin Adler
a44070e2ec
feat(scaletest): allow scaletests to run using the host credentials ( #7075 )
2023-04-11 19:49:28 +00:00
Marcin Tojek
3b10e89047
Revert "fix: change auto-start to automatically update workspaces ( #6053 )" ( #7084 )
...
This reverts commit bdddc3e7ae .
2023-04-11 14:14:35 +00:00
Steven Masley
9d39371ee0
feat: Option to remove WorkspaceExec from owner role ( #7050 )
...
* chore: Add AllResources option for listing all RBAC objects
* Owners cannot do workspace exec site wide
* Fix FE authchecks to valid RBAC resources
2023-04-11 08:57:23 -05:00
Marcin Tojek
ad2353c3d8
chore: improve syntax in metrics collector ( #7085 )
2023-04-11 13:50:34 +00:00
Kyle Carberry
81e2b2500a
feat: add level support for startup logs ( #7067 )
...
This allows external services like our devcontainer support to display
errors and warnings with custom styles to indicate failures to users.
2023-04-10 14:29:59 -05:00
Ammar Bandukwala
4b99e2d07e
feat: add YAML support to server ( #6934 )
2023-04-07 22:58:21 +00:00
Colin Adler
a3c6cb1768
fix: don't query workspace in UpdateWorkspaceAgentConnectionByID ( #7042 )
2023-04-07 15:21:52 -05:00
Marcin Tojek
0347231bb8
feat: expose agent metrics via Prometheus endpoint ( #7011 )
...
* WIP
* WIP
* WIP
* Agents
* fix
* 1min
* fix
* WIP
* Test
* docs
* fmt
* Add timer to measure the metrics collection
* Use CachedGaugeVec
* Unit tests
* Address PR comments
2023-04-07 17:48:52 +02:00
Dean Sheather
5398150c25
chore: move workspace apps tests to new package ( #7025 )
...
* chore: move workspace apps tests to new package
* chore: move reconnecting pty to apptest package
2023-04-06 16:35:27 -05:00
Steven Masley
b2892c3d17
test: Increase test coverage on auditable resources ( #7038 )
...
* test: Increase test coverage on auditable resources
When adding a new audit resource, we also need to add it to the
function switch statements. This is a likely mistake, now a unit
test will check this for you
2023-04-06 16:16:53 -05:00
Ammar Bandukwala
24d8644c0b
chore: de-flake TestWorkspaceAgent_Metadata (round 2) ( #7039 )
...
This time, we keep the timing / "racey" tests, but avoid running
them in the harsher CI conditions.
2023-04-06 21:10:13 +00:00