749307ef08
feat: provide endpoint to lock/unlock workspace ( #8239 )
2023-06-28 16:12:49 -05:00
98a5ae7f48
feat: add provisioner job hang detector ( #7927 )
2023-06-25 13:17:00 +00:00
ba9d038d42
feat: add periodic cleanup of PG Coordinator state ( #8142 )
...
* PG Coordinator cleans orphaned state
Signed-off-by: Spike Curtis <spike@coder.com >
* Don't need pubsub
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-06-23 13:23:28 +04:00
f56db1b41b
feat: add user search query param on last_seen ( #8139 )
...
* feat: add sql filter for before/after on last_seen column
2023-06-22 15:24:48 -05:00
1b0124ecdb
feat: automatically stop workspaces based on failure_ttl ( #7989 )
2023-06-22 00:33:22 -04:00
cc17d2feea
refactor: add postgres tailnet coordinator ( #8044 )
...
* postgres tailnet coordinator
Signed-off-by: Spike Curtis <spike@coder.com >
* Fix db migration; tests
Signed-off-by: Spike Curtis <spike@coder.com >
* Add fixture, regenerate
Signed-off-by: Spike Curtis <spike@coder.com >
* Fix fixtures
Signed-off-by: Spike Curtis <spike@coder.com >
* review comments, run clean gen
Signed-off-by: Spike Curtis <spike@coder.com >
* Rename waitForConn -> cleanupConn
Signed-off-by: Spike Curtis <spike@coder.com >
* code review updates
Signed-off-by: Spike Curtis <spike@coder.com >
* db migration order
Signed-off-by: Spike Curtis <spike@coder.com >
* fix log field name last_heartbeat
Signed-off-by: Spike Curtis <spike@coder.com >
* fix heartbeat_from log field
Signed-off-by: Spike Curtis <spike@coder.com >
* fix slog fields for linting
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-06-21 16:20:58 +04:00
69f911dfd5
feat: add queue_position and queue_size to provisioner jobs ( #8074 )
2023-06-20 15:07:18 -05: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
c3aef9363b
feat: add locked TTL field to template meta ( #8020 )
2023-06-19 22:37:55 -04: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
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
fa8153a0fd
chore: make default workspace proxy editable ( #7903 )
...
* chore: add editing the default workspace proxy
2023-06-08 10:30:15 -05: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
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
a7366a8b76
feat!: drop support for legacy parameters ( #7663 )
2023-06-02 11:16:46 +02:00
c795a0e500
feat: Fix Deployment DAUs to work with local timezones ( #7647 )
...
* chore: Add timezone param to DAU SQL query
* Merge DAUs response
* Pass time offsets to metricscache
2023-05-30 13:18:27 -04:00
702c9081e0
fix: do not skip parameter validation if min or max = 0 ( #7707 )
2023-05-30 14:57:06 +02:00
d9299caa12
feat: order workspaces by running first ( #7656 )
...
* wip
* use updated sql
* wip
* Implement sorting in databasefake.go
* More fixes
* sql fmt
---------
Co-authored-by: Marcin Tojek <marcin@coder.com >
2023-05-25 13:35:47 -03:00
00a2413c03
feat: add telemetry support for workspace agent subsystem ( #7579 )
2023-05-17 22:49:25 -05:00
b5ad628460
chore: Allow editing proxy fields via api. ( #7435 )
...
* chore: Add ability to update workspace proxy fields
2023-05-09 13:46:50 -05:00
5ffa6dae50
feat: add inactivity cleanup and failure cleanup configuration fields to Template Schedule Form ( #7402 )
...
* added workspace actions entitlement
* added workspace actions experiment
* added new route for template enterprise meta
* removing new route; repurposing old
* add new fields to get endpoints
* removed workspace actions experiment
* added logic to enterprise template store
* added new form fields
* feature flagged new fields
* fix validation
* fixed submit btn
* fix tests
* changed ttl defaults
* added FE tests
* added BE tests
* fixed lint
* adjusted comment language
* fixing unstaged changes check
* fix test
* Update coderd/database/migrations/000122_add_template_cleanup_ttls.down.sql
Co-authored-by: Dean Sheather <dean@deansheather.com >
* Update coderd/database/migrations/000122_add_template_cleanup_ttls.up.sql
Co-authored-by: Dean Sheather <dean@deansheather.com >
---------
Co-authored-by: Dean Sheather <dean@deansheather.com >
2023-05-05 08:19:26 -07:00
8bd9f9c351
feat: unified tracing between coderd<->provisionerd ( #7370 )
2023-05-03 23:02:35 +00:00
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
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
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
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
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
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
eb66cc9f35
chore: move app proxying code to workspaceapps pkg ( #6998 )
...
* chore: move app proxying code to workspaceapps pkg
Moves path-app, subdomain-app and reconnecting PTY proxying to the new
workspaceapps.WorkspaceAppServer struct. This is in preparation for
external workspace proxies.
Updates app logout flow to avoid redirecting to coder-logout.${app_host}
on logout. Instead, all subdomain app tokens owned by the logging-out
user will be deleted every time you logout for simplicity sake.
Tests will remain in their original package, pending being moved to an
apptest package (or similar).
Co-authored-by: Steven Masley <stevenmasley@coder.com >
2023-04-05 13:41:55 -05:00
b4afbe7720
feat: Implement experiment gated CRUD for workspace proxies ( #6928 )
...
* feat: Implement basic moon crud
* chore: Implement enterprise endpoints for moons
2023-04-04 15:07:29 -05:00
c12bc39821
fix: always show a newly created workspace at the top of the list ( #6984 )
...
Fixes #5795 .
2023-04-04 08:24:04 -05:00
e33941b7c2
feat: allow disabling autostart and custom autostop for template ( #6933 )
...
API only, frontend in upcoming PR.
2023-04-04 12:48:35 +00:00
2d051094e7
fix: ignore deleted workspaces in global stats ( #6973 )
...
Fixes #6568 .
2023-04-03 14:46:09 +00:00
633dfbdb2e
feat: rich parameters: introduce display_name ( #6919 )
...
* model
* DB
* fix: DisplayName
* proto
* Proto
* Update go dep
* fixme
* fix format
* config
* fmt
* fix
* Fix
* fix
* chore(UI): redirecting from workspace page if 404 (#6880 )
* model
* CLI: Display parameter
* fix
* update dep
* fix
* fix
* fix
* UI changes
* fmt
---------
Co-authored-by: Kira Pilot <kira@coder.com >
2023-04-03 14:37:47 +02:00
ca4fa81570
feat: add agent metadata ( #6614 )
2023-03-31 15:26:19 -05:00
56f00a82e1
chore: update sqlc to v1.17.2 ( #6920 )
...
* WIP
* chore: Update sqlc to v1.17.2
2023-03-31 14:05:20 +02:00
665b84de0d
feat: use app tickets for web terminal ( #6628 )
2023-03-30 23:24:51 +10:00
42b3d90221
chore: rename "InsertOrUpdate" to Upsert around the codebase ( #6823 )
...
* chore: rename "InsertOrUpdate" to Upsert around the codebase
The shorter name uses up less line width, is easier to read
and is used more often.
* make gen
2023-03-28 00:55:10 +00:00
7fa5afa268
fix: Users that can update a template can also read the file ( #6776 )
...
* fix: Users that can update a template can also read the file
This currently has a strange RBAC story. An issue will be filed
to streamline this.
This is a hotfix to resolve current functionality
* Only showsource code tab if the user has permission to edit the template
---------
Co-authored-by: Bruno Quaresma <bruno_nonato_quaresma@hotmail.com >
2023-03-27 09:21:41 -05:00
cb7375450b
feat: add startup script logs to the ui ( #6558 )
...
* Add startup script logs to the database
* Add coderd endpoints for startup script logs
* Push startup script logs from agent
* Pull startup script logs on frontend
* Rename queries
* Add constraint
* Start creating log sending loop
* Add log sending to the agent
* Add tests for streaming logs
* Shorten notify channel name
* Add FE
* Improve bulk log performance
* Finish UI display
* Fix startup log visibility
* Add warning for overflow
* Fix agent queue logs overflow
* Display staartup logs in a virtual DOM for performance
* Fix agent queue with loads of logs
* Fix authorize test
* Remove faulty test
* Fix startup and shutdown reporting error
* Fix gen
* Fix comments
* Periodically purge old database entries
* Add test fixture for migration
* Add Storybook
* Check if there are logs when displaying features
* Fix startup component overflow gap
* Fix startup log wrapping
---------
Co-authored-by: Asher <ash@coder.com >
2023-03-23 14:09:13 -05:00
8857971552
feat(coder): Add PATCH /templateversions/:templateversion endpoint ( #6698 )
2023-03-23 13:26:50 -03:00
f91b3acf93
fix: group routine workspace agent stats by id ( #6601 )
...
Before this was creating separate rows for distinct stat entries, which
resulted in significantly more data being sent to telemetry.
2023-03-14 10:52:03 -05:00
7587850a1c
feat: import value from legacy variable to build parameter ( #6556 )
2023-03-14 12:02:44 +00:00
35df1b10d0
feat: add workspace agent stat reporting to telemetry ( #6577 )
...
This aggregates stats periodically and sends them by agent ID to
our telemetry server. It should help us identify which editors are
primarily in use.
2023-03-13 14:16:54 -05:00
7eb2c2ff6d
Revert "chore: Implement joins with golang templates ( #6429 )" ( #6560 )
...
This reverts commit 8b125d6c5d
.
2023-03-10 10:39:02 -06:00
8b125d6c5d
chore: Implement joins with golang templates ( #6429 )
...
* feat: Implement view for workspace builds to include rbac info
* Removes the need to fetch the workspace to run an rbac check.
* chore: Use workspace build as RBAC object
* chore: Use golang templates instead of sqlc files
2023-03-10 09:44:38 -06:00
7f25d31745
feat: Allow changing the 'group' oidc claim field ( #6546 )
...
* feat: Allow changing the 'group' oidc claim field
* Enable empty groups support
* fix: Delete was wiping all groups, not just the single user's groups
* Update docs
* fix: Dbfake delete group member fixed
2023-03-09 23:31:38 -06:00