983e8c3ae8
feat: add API support for workspace automatic updates ( #10099 )
...
* Added automatic_updates to workspaces table
Signed-off-by: Spike Curtis <spike@coder.com >
* Queries and API updates
Signed-off-by: Spike Curtis <spike@coder.com >
* Golden files
Signed-off-by: Spike Curtis <spike@coder.com >
* Enable automatic updates on autostart
Signed-off-by: Spike Curtis <spike@coder.com >
* db migration number
Signed-off-by: Spike Curtis <spike@coder.com >
* fix imports and ts mock
Signed-off-by: Spike Curtis <spike@coder.com >
* code review updates
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-10-06 13:27:12 +04:00
45b53c285f
feat: allow external services to be authable ( #9996 )
...
* feat: allow external services to be authable
* Refactor external auth config structure for defaults
* Add support for new config properties
* Change the name of external auth
* Move externalauth -> external-auth
* Run gen
* Fix tests
* Fix MW tests
* Fix git auth redirect
* Fix lint
* Fix name
* Allow any ID
* Fix invalid type test
* Fix e2e tests
* Fix comments
* Fix colors
* Allow accepting any type as string
* Run gen
* Fix href
2023-10-03 14:04:39 +00:00
5596fb20b5
chore: move /gitauth
to /externalauth
on the frontend ( #9954 )
...
* chore: move `/gitauth` to `/externalauth` on the frontend
This actually took a lot more jank than anticipated,
so I wanted to split this up before adding the ability
to embed new providers.
* Rename FE
* Fix em' up
* Fix linting error
* Fix e2e tests
* chore: update helm golden files
2023-09-30 14:30:01 -05:00
8abca9bea7
chore: rename git_auth
to external_auth
in our schema ( #9935 )
...
* chore: rename `git_auth` to `external_auth` in our schema
We're changing Git auth to be external auth. It will support
any OAuth2 or OIDC provider.
To split up the larger change I want to contribute the schema
changes first, and I'll add the feature itself in another PR.
* Fix names
* Fix outdated view
* Rename some additional places
* Fix sort order
* Fix template versions auth route
* Fix types
* Fix dbauthz
2023-09-29 19:13:20 +00:00
92308bec3b
chore: color value_source
for deployment values ( #9922 )
...
* chore: Return populated options vs a blank
* Strip secret values
2023-09-29 12:04:28 -05:00
4c3b579f58
feat: expose insights into user activity ( #9807 )
2023-09-26 18:42:16 +02:00
375c70d141
feat: integrate Acquirer for provisioner jobs ( #9717 )
...
* chore: add Acquirer to provisionerdserver pkg
Signed-off-by: Spike Curtis <spike@coder.com >
* code review improvements & fixes
Signed-off-by: Spike Curtis <spike@coder.com >
* feat: integrate Acquirer for provisioner jobs
Signed-off-by: Spike Curtis <spike@coder.com >
* Fix imports, whitespace
Signed-off-by: Spike Curtis <spike@coder.com >
* provisionerdserver always closes; remove poll interval from playwright
Signed-off-by: Spike Curtis <spike@coder.com >
* post jobs outside transactions
Signed-off-by: Spike Curtis <spike@coder.com >
* graceful shutdown in test
Signed-off-by: Spike Curtis <spike@coder.com >
* Mark AcquireJob deprecated
Signed-off-by: Spike Curtis <spike@coder.com >
* Graceful shutdown on all provisionerd tests
Signed-off-by: Spike Curtis <spike@coder.com >
* Deprecate, not remove CLI flags
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-09-19 10:25:57 +04:00
8d7eb1728c
fix: stop inserting provisioner daemons into the database ( #9108 )
...
Signed-off-by: Spike Curtis <spike@coder.com >
2023-09-08 10:37:36 +00:00
19d7da3d24
refactor(coderd/database): split Time
and Now
into dbtime
package ( #9482 )
...
Ref: #9380
2023-09-01 16:50:12 +00:00
90acf998bf
fix: fix null pointer on external provisioner daemons with daily_cost ( #9401 )
...
* fix: fix null pointer on external provisioner daemons with daily_cost
Signed-off-by: Spike Curtis <spike@coder.com >
* Add logging for debounce and job acquire
Signed-off-by: Spike Curtis <spike@coder.com >
* Return error instead of panic
Signed-off-by: Spike Curtis <spike@coder.com >
* remove debounce on external provisioners to fix test flakes
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-08-30 10:48:35 +00:00
6ba92ef924
ci: enable gocognit ( #9359 )
...
And, bring the server under 300:
* Removed the undocumented "disable" STUN address in favor of the
--disable-direct flag.
2023-08-27 14:46:44 -05:00
7f14b50dbe
chore: rename locked to dormant ( #9290 )
...
* chore: rename locked to dormant
- The following columns have been updated:
- workspace.locked_at -> dormant_at
- template.inactivity_ttl -> time_til_dormant
- template.locked_ttl -> time_til_dormant_autodelete
This change has also been reflected in the SDK.
A route has also been updated from /workspaces/<id>/lock to /workspaces/<id>/dormant
2023-08-24 13:25:54 -05:00
64df076328
feat: add server flag to force DERP to use always websockets ( #9238 )
2023-08-24 17:22:31 +00:00
f35423c041
fix: update conn derpmap every 5s in single tailnet ( #9176 )
2023-08-23 11:20:31 +00:00
22e781eced
chore: add /v2 to import module path ( #9072 )
...
* chore: add /v2 to import module path
go mod requires semantic versioning with versions greater than 1.x
This was a mechanical update by running:
```
go install github.com/marwan-at-work/mod/cmd/mod@latest
mod upgrade
```
Migrate generated files to import /v2
* Fix gen
2023-08-18 18:55:43 +00:00
6fd9975aed
feat(coderd): add coder_app
usage stats ( #9001 )
...
Updates #8658
2023-08-16 15:22:00 +03:00
344d32b2f1
feat(coderd): expire agents from server tailnet ( #9092 )
2023-08-14 20:38:37 -05:00
f4122fa9f5
feat: add auto group create from OIDC ( #8884 )
...
* add flag for auto create groups
* fixup! add flag for auto create groups
* sync missing groups
Also added a regex filter to filter out groups that are not
important
2023-08-08 11:37:49 -05:00
5339a31532
fix: remove refresh oauth logic on OIDC login ( #8950 )
...
* fix: do not do oauth refresh logic on oidc login
2023-08-08 10:05:12 -05:00
9fb18f3ae5
feat(coderd): batch agent stats inserts ( #8875 )
...
This PR adds support for batching inserts to the workspace_agents_stats table.
Up to 1024 stats are batched, and flushed every second in a batch.
2023-08-04 17:00:42 +01:00
bd944e0d21
chore: rename startup logs to agent logs ( #8649 )
...
* chore: rename startup logs to agent logs
This also adds a `source` property to every agent log. It
should allow us to group logs and display them nicer in
the UI as they stream in.
* Fix migration order
* Fix naming
* Rename the frontend
* Fix tests
* Fix down migration
* Match enums for workspace agent logs
* Fix inserting log source
* Fix migration order
* Fix logs tests
* Fix psql insert
2023-07-28 15:57:23 +00:00
2f0a9996e7
chore: add derpserver to wsproxy, add proxies to derpmap ( #7311 )
2023-07-27 02:21:04 +10:00
f827829afe
feat: synchronize oidc user roles ( #8595 )
...
* feat: oidc user role sync
User roles come from oidc claims. Prevent manual user role changes
if set.
* allow mapping 1:many
2023-07-24 08:34:24 -04:00
30fe153296
feat(coderd): add user latency and template insights endpoints ( #8519 )
...
Part of #8514
Refs #8109
2023-07-21 18:00:19 +00:00
dc8b73168e
feat: add user quiet hours schedule and restart requirement feature flag ( #8115 )
2023-07-20 23:35:41 +10:00
164672e5d3
feat: expose docs URL via static meta ( #8594 )
2023-07-19 13:57:43 -03:00
517fb19474
feat: add single tailnet support to moons ( #8587 )
2023-07-19 11:11:11 -05:00
fd7c019fff
chore(coderd): require api key to access derpmap ( #8569 )
2023-07-17 19:40:12 +00:00
c47b78c44b
chore: replace wsconncache with a single tailnet ( #8176 )
2023-07-12 17:37:31 -05:00
3f6a158016
chore: enable exhaustruct linter ( #8403 )
...
* chore: enable exhaustruct linter
* add exlusion rules
* move to allowlist instead
* exhaustruct httpmw package
* fixup! exhaustruct httpmw package
* make lint
* address PR comments
2023-07-11 14:30:33 +01:00
2ee406d7b6
feat: log out and redirect user when converting to oidc ( #8347 )
...
* feat: log out user on conver to oidc
Log out user and redirect to login page and log out user when
they convert to oidc.
2023-07-10 10:25:41 -04:00
90a3debe3f
fix(coderd): pass oauth configs to site ( #8390 )
2023-07-10 17:23:41 +03:00
6015319e9d
feat: show service banner in SSH/TTY sessions ( #8186 )
...
* Allow workspace agents to get appearance
* Poll for service banner every two minutes
* Show service banner before MOTD if not quiet
2023-06-30 10:41:29 -08:00
b5f26d9bdf
feat: add ability for users to convert their password login type to oauth/github login ( #8105 )
...
* Currently toggled by experiment flag
---------
Co-authored-by: Bruno Quaresma <bruno@coder.com >
2023-06-30 08:38:48 -04:00
34467a3289
feat: add github device flow for authentication ( #8232 )
...
* feat: add github device flow for authentication
This will allow us to add a GitHub OAuth provider out-of-the-box
to reduce setup requirements.
* Improve askpass view
* Add routes to improve clarity of git auth
* Redesign the git auth page
* Refactor to add a page view
* Fix sideways layout
* Remove legacy notify
* Fix git auth redirects
* Add E2E tests
* Fix route documentation
* Fix imports
* Remove unused imports
* Fix E2E web test
* Fix friendly message appearance
* Fix layout shifting for full-screen sign-in
* Fix height going to 100%
* Fix comments
2023-06-29 18:58:01 +00:00
749307ef08
feat: provide endpoint to lock/unlock workspace ( #8239 )
2023-06-28 16:12:49 -05:00
bc739bdfce
feat(cli): add hidden netcheck command ( #8136 )
2023-06-21 14:33:19 -05:00
823127e761
feat: add healthcheck database section ( #8060 )
2023-06-20 15:13:22 +00:00
b1d1b63113
chore: ensure logs consistency across Coder ( #8083 )
2023-06-20 12:30:45 +02: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
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
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
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
f0c5201617
feat: allow cross-origin requests between users' own apps ( #7688 )
2023-06-07 11:08:14 -08:00
72f59950f2
chore: add prometheus timing to latency endpoint ( #7742 )
...
* chore: Prometheus timing to latency endpoint
2023-06-06 10:26:13 -05:00
a7366a8b76
feat!: drop support for legacy parameters ( #7663 )
2023-06-02 11:16:46 +02:00
2b63492649
feat(healthcheck): add failing sections to report ( #7789 )
2023-06-01 19:21:24 -05:00
784696dfa5
feat: add prometheus metrics to database.Store ( #7713 )
...
* Adds dbmetrics package and wraps database.Store with a Prometheus HistogramVec of timings.
* Adds Wrappers method to database.Store to avoid double-wrapping interfaces
* Fixes test flake in TestLicensesListFake
2023-05-31 14:55:57 +01:00
022372dd73
feat(healthcheck): add websocket report ( #7689 )
2023-05-30 14:22:32 -05:00