38b573857b
feat(site): edit organization member roles ( #13977 )
2024-07-24 11:36:45 -06:00
0d9615b4fd
feat(coderd): notify when workspace is marked as dormant ( #13868 )
2024-07-24 13:38:21 -03:00
0a07c7e554
feat: get org scoped provisioners ( #13953 )
2024-07-23 14:56:46 +00:00
a8e6e89f65
feat: add organization details to audit log response ( #13961 )
...
* Allow creating test audits with nil org
Not all audit entries have organization IDs, so this will allow us to
test those cases.
* Add organization details to audit log queries
* Add organization to audit log response
This replaces the old ID. This is a breaking change but organizations
were not being used before.
2024-07-22 13:28:44 -08:00
a3f40d5ef8
feat: add members settings page for organizations ( #13817 )
2024-07-16 12:25:36 -06:00
b697c6939a
chore: add provisioner key crud apis ( #13857 )
2024-07-16 13:27:12 -04:00
b2dab3308d
feat: implement observability of notifications subsystem ( #13799 )
2024-07-11 10:57:49 +02:00
7bb3e0db4a
chore: return organization's display name and icon in templates ( #13858 )
...
* chore: templates return organization display name and icon
* templates api response includes organization display name and icon
2024-07-10 10:06:49 -05:00
bf392ffea4
feat: add killswitch for notifications ( #13794 )
2024-07-10 16:15:06 +02:00
bdd2caf95d
feat: implement thin vertical slice of system-generated notifications ( #13537 )
2024-07-08 15:38:50 +02:00
7c41f957de
feat: autostop workspaces owned by suspended users ( #13790 )
2024-07-04 13:35:41 +00:00
128674918b
chore: include organization name when fetching templates ( #13751 )
...
* chore: include organization name when fetching templates
* chore: rename template_with_user to template_with_names
2024-07-02 09:08:30 -05:00
3cc86cf62d
chore: implement sane default pagination limit for audit logs ( #13676 )
...
* chore: implement sane default pagination limit for audit logs
2024-06-28 07:38:04 -05:00
0a221e8d5b
feat: create database tables and queries for notifications ( #13536 )
2024-06-28 09:21:25 +00:00
08e728bcb2
chore: implement organization scoped audit log requests ( #13663 )
...
* chore: add organization_id filter to audit logs
* chore: implement organization scoped audit log requests
2024-06-26 12:38:46 -05:00
8a3592582b
feat: add "Full Name" field to user creation ( #13659 )
...
Adds the ability to specify "Full Name" (a.k.a. Name) when
creating users either via CLI or UI.
2024-06-26 09:00:42 +01:00
87ad560aff
feat: add groups and group members to telemetry snapshot ( #13655 )
...
* feat: Added in groups and groups members to telemetry snapshot
* feat: adding in test to dbauthz for getting group members and groups
2024-06-25 11:01:40 -07:00
43e45f4ab7
fix: fill out zero-value user properties in /audit ( #13604 )
2024-06-20 12:40:08 -08:00
a1db6d809e
chore: implement delete organization member ( #13589 )
...
Side effects of removing an organization member will orphan their
user resources. These side effects are not addressed here
2024-06-20 10:06:37 -05:00
de9e6889bb
chore: merge organization member db queries ( #13542 )
...
Merge members queries into 1 that also joins in the user table for username.
Required to list organization members on UI/cli
2024-06-12 09:23:48 -10:00
28228f1bcb
feat: allow editing org icon ( #13547 )
2024-06-12 12:28:13 -06:00
0d65143301
chore: implement audit log for custom role edits ( #13494 )
...
* chore: implement audit log for custom role edits
2024-06-07 14:11:57 -05:00
e2b330fcba
chore: change sql parameter for custom roles to be a (name,org_id)
tuple ( #13480 )
...
* chore: sql parameter to custom roles to be a (name,org) tuple
CustomRole lookup takes (name,org_id) tuples as the search criteria.
2024-06-06 15:36:37 -05:00
44a70a5bc2
feat: edit org display names and descriptions ( #13474 )
2024-06-06 10:59:59 -06:00
8f62311f00
chore: remove organization_id suffix from org_member roles in database ( #13473 )
...
Organization member's table is already scoped to an organization.
Rolename should avoid having the org_id appended.
Wipes all existing organization role assignments, which should not be used anyway.
2024-06-05 11:25:02 -05:00
e3206612e1
chore: implement typed database for custom permissions (breaks existing custom roles) ( #13457 )
...
* chore: typed database custom permissions
* add migration to fix any custom roles out there
2024-06-04 09:27:44 -05:00
b248f125e1
chore: rename notification banners to announcement banners ( #13419 )
2024-05-31 10:59:28 -06:00
1b4ca00428
chore: include custom roles in list org roles ( #13336 )
...
* chore: include custom roles in list org roles
* move cli show roles to org scope
2024-05-23 07:54:59 -10:00
3f1e9c038a
feat(coderd): add endpoints for editing and deleting organizations ( #13287 )
2024-05-21 12:46:31 -06:00
c61b64be61
feat: add hidden enterprise cmd command to list roles ( #13303 )
...
* feat: add hidden enterprise cmd command to list roles
This includes custom roles, and has a json ouput option for
more granular permissions
2024-05-21 13:14:00 -05:00
b8b80fe6d2
feat: store coder_workspace_tags
in the database ( #13294 )
2024-05-20 13:30:19 +00:00
cf91eff7cf
chore: implement databased backend for custom roles ( #13295 )
...
Includes db schema and dbauthz layer for upserting custom roles. Unit test in `customroles_test.go` verify against escalating permissions through this feature.
2024-05-16 13:11:26 -05:00
a0fce363cd
feat(coderd): add times_used
to coder_app
s in insights API ( #13292 )
...
For now, only applied to `coder_app`s, same logic can be implemented for
VS Code, SSH, etc.
Part of #13099
2024-05-16 16:53:01 +03:00
d8e0be6ee6
feat: add support for multiple banners ( #13081 )
2024-05-08 15:40:43 -06:00
a69fc657f2
chore(coderd/database): reduce dbpurge load with smaller batches of agent stats ( #13049 )
2024-04-23 15:01:56 +03:00
e17e8aa3c9
feat(coderd/database): keep only 1 day of workspace_agent_stats
after rollup ( #12674 )
2024-04-22 13:11:50 +03:00
0a8c8ce5cc
chore: remove InsertWorkspaceAgentStat query ( #12869 )
...
* chore: remove InsertWorkspaceAgentStat query
InsertWorkspaceAgentStats (batch) exists. We only used the singular in
a single unit test place. Removing the single for the batch, reducing
the interface size.
2024-04-09 12:35:27 -05:00
f96ce80ab9
feat: add owner groups to workspace data ( #12841 )
2024-04-05 15:06:17 -04:00
79fb8e43c5
feat: expose workspace statuses (with details) as a prometheus metric ( #12762 )
...
Implements #12462
2024-04-02 09:57:36 +02:00
79441e3609
perf(coderd/database): optimize GetWorkspaceAgentAndLatestBuildByAuthToken
( #12809 )
2024-03-28 19:38:16 +02:00
47fd190064
fix(coderd/database): improve perf of GetTemplateInsightsByInterval
( #12773 )
...
Refs #12122
2024-03-27 14:10:46 +02:00
0da29d74ac
fix(coderd/database): improve query perf of GetTemplateAppInsights
( #12767 )
...
Refs #12122
2024-03-27 12:28:36 +02:00
ae0ee622bb
fix(coderd/database): improve data exclusion in UpsertTemplateUsageStats
( #12764 )
...
The PostgreSQL query analyzer wasn't able to eliminate the agent stats without re-introducing this filter.
Before: https://explain.dalibo.com/plan/21h7gb4f4bef391g
After: https://explain.dalibo.com/plan/721ec1cccee91egc
2024-03-26 17:21:05 +02:00
b183236482
feat(coderd/database): use template_usage_stats
in *ByTemplate
insights queries ( #12668 )
...
This PR updates the `*ByTempalte` insights queries used for generating Prometheus metrics to behave the same way as the new rollup query and re-written insights queries that utilize the rolled up data.
2024-03-25 17:42:02 +02:00
2332d8197a
feat(coderd/database): use template_usage_stats
in GetUserActivityInsights
query ( #12672 )
...
This PR updates the `GetUserActivityInsights` query to use rolled up `template_usage_stats` instead of raw agent and app stats.
2024-03-25 16:16:41 +02:00
a8ed689bda
feat(coderd/database): use template_usage_stats
in GetUserLatencyInsights
query ( #12671 )
...
This PR updates the `GetUserLatencyInsights` query to use rolled up `template_usage_stats` instead of raw agent and app stats.
2024-03-25 16:07:40 +02:00
5738a03930
feat(coderd/database): use template_usage_stats
in GetTemplateAppInsights
query ( #12669 )
...
This PR updates the `GetTemplateAppInsights` query to use rolled up `template_usage_stats` instead of raw agent and app stats.
2024-03-25 15:58:37 +02:00
5f3be62c83
feat(coderd/database): use template_usage_stats
in GetTemplateInsightsByInterval
query ( #12667 )
...
This PR updates the `GetTemplateInsightsByInterval` query to use rolled up `template_usage_stats` instead of raw agent and app stats.
2024-03-25 15:45:49 +02:00
35d08434a9
feat(coderd/database): use template_usage_stats
in GetTemplateInsights
query ( #12666 )
...
This PR updates the `GetTemplateInsights` query to use rolled up `template_usage_stats` instead of raw agent and app stats.
2024-03-25 15:33:31 +02:00
c674128105
chore: allow search by build params in workspace search filter ( #12694 )
...
* chore: workspace search filter allow search by params
* has_param will return all workspaces with the param existance
* exact matching
2024-03-22 14:22:47 -05:00