37a859f071
chore(testutil): add testutil.GetRandomName that does not return duplicates ( #14020 )
...
Fixes #13910
Adds testutil.GetRandomName that replaces namesgenerator.GetRandomName but instead appends a monotonically increasing integer instead of a number between 1 and 10.
2024-07-26 09:44:34 +01:00
6c2336b8e9
chore: shorten provisioner key ( #14017 )
2024-07-25 16:08:12 -05:00
7ea1a4c686
chore: protect organization endpoints with license ( #14001 )
...
* chore: move multi-org endpoints into enterprise directory
All multi-organization features are gated behind "premium" licenses. Enterprise licenses can no longer
access organization CRUD.
2024-07-25 16:07:53 -05:00
6161d173d3
feat: add tags to provisioner keys api ( #13989 )
2024-07-25 15:20:45 +00:00
ca83017dc1
feat: accept provisioner keys for provisioner auth ( #13972 )
2024-07-25 10:22:55 -04:00
d488853393
fix: notifications: use username in workspace URLs ( #14011 )
2024-07-25 12:02:24 +02:00
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
dd99457a04
chore: although unfortunate, it is possible for a user to be in no orgs ( #13956 )
2024-07-22 10:39:50 -05:00
fbd1d7f9a7
feat: notify on successful autoupdate ( #13903 )
2024-07-18 15:19:12 +02:00
44924cd8d8
chore: add updated_at to codersdk users ( #13928 )
...
* chore: add updated_at to codersdk users
2024-07-17 17:59:42 -05: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
a5e4bf38fe
feat: notify owner about failed autobuild ( #13891 )
2024-07-16 10:48:17 +02:00
c6b7588933
chore: add organization id to provisioner sdk type ( #13883 )
...
* chore: add organization id to provisioner sdk type
2024-07-12 10:56:34 -05:00
687d9538de
chore: provisioner acquirer to respect organization ID of jobs ( #13874 )
...
* test: add unit test to verify creation of templates in multiple orgs
* chore: provisioner acquirer to respect organization ID of jobs
Prior to this the wrong provisioner was awakened on any new job
posting.
* add comment and stricter check
2024-07-11 11:26:47 -05: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
542fff7df0
chore: improve notifications tests ( #13863 )
2024-07-10 15:25:23 +02:00
70046ea08d
fix: missing nolint comment ( #13862 )
2024-07-10 09:55:30 +00:00
54898033b1
fix: dbpurge: disable parallel tests ( #13848 )
2024-07-09 15:10:57 +02:00
bdd2caf95d
feat: implement thin vertical slice of system-generated notifications ( #13537 )
2024-07-08 15:38:50 +02:00
10aa32ca08
chore: refactor AgentHasNotConnectedSinceWeek_LogsExpired
( #13802 )
2024-07-08 13:52:56 +02:00
7c41f957de
feat: autostop workspaces owned by suspended users ( #13790 )
2024-07-04 13:35:41 +00:00
e5268e4551
chore: spin clock library out to coder/quartz repo ( #13777 )
...
Code that was in `/clock` has been moved to github.com/coder/quartz. This PR refactors our use of the clock library to point to the external Quartz repo.
2024-07-03 15:02:54 +04: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
65b9f9bfd6
chore: audit organization member add/delete/edit ( #13620 )
...
* chore: audit organization member add/removals
2024-06-24 14:19:32 -05:00
2ef2f97388
chore: improve error message on adding existing org_member ( #13621 )
2024-06-20 18:05:11 -05: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
d04959cea8
chore: implement custom role assignment for organization admins ( #13570 )
...
* chore: static role assignment mapping
Until a dynamic approach is created in the database, only org-admins
can assign custom organization roles.
2024-06-13 15:59:06 -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
5ccf5084e8
chore: create type for unique role names ( #13506 )
...
* chore: create type for unique role names
Using `string` was confusing when something should be combined with
org context, and when not to. Naming this new name, "RoleIdentifier"
2024-06-11 08:55:28 -05:00
8326a3a675
chore: change mock clock to allow Advance() within timer/tick functions ( #13500 )
2024-06-10 15:27:24 +04: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
7c3b8b6224
chore: duplicate migration file fix, 000216 ( #13498 )
2024-06-06 16:13:00 -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
fade8ba759
fix: fix MeasureLatencyRecvTimeout to accept send=0 ( #13477 )
...
Fixes the flake seen here: https://github.com/coder/coder/runs/25832852690
Linux is not a real time operating system, and so there is no guarantee that subsequent `time.Now()` `time.Since()` calls will return a non-zero time. This assert is mainly there to ensure we don't return `-1`.
2024-06-05 18:27:56 +04:00
9c3fd5dd26
chore: add explicit Wait() to clock.Advance() ( #13464 )
2024-06-05 15:37:16 +04:00