e164b1e71c
feat: add notification preferences database & audit support ( #14100 )
2024-08-05 16:18:45 +02:00
166467caf0
fix: don't require organization_id
in body when updating a custom role ( #14102 )
2024-08-02 11:25:00 -06:00
bf4b7abf14
chore(coderd): allow creating workspaces without specifying an organization ( #14048 )
2024-07-30 10:44:02 -06:00
cf1fcab514
feat: notify about created user account ( #14010 )
2024-07-30 15:37:45 +02:00
58b810fb0a
fix: fix dormancy notifications ( #14029 )
2024-07-29 11:20:04 -03:00
eacdfb9f9c
fix: change time format string from 15:40 to 15:04 ( #14033 )
...
* Change string format to constant value
2024-07-26 17:57:47 -04:00
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
2279441517
feat: add --key flag to provisionerd start ( #14002 )
2024-07-25 15:26:26 -04: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
15fda232b7
feat: implement premium vs enterprise licenses ( #13907 )
...
* feat: implement premium vs enterprise licenses
Implement different sets of licensed features.
2024-07-24 12:07:59 -05: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
0a71c34d46
feat: create and modify organization groups ( #13887 )
2024-07-22 09:47:14 -06:00
03c5d42233
chore: keep active users active in scim ( #13955 )
...
* chore: scim should keep active users active
* chore: add a unit test to excercise dormancy bug
* audit log should not be dropped when there is no change
* add ability to cancel audit log
2024-07-19 16:30:02 -05:00
b697c6939a
chore: add provisioner key crud apis ( #13857 )
2024-07-16 13:27:12 -04:00
1691768fb9
chore: use store enqueuer with external provisioners ( #13881 )
2024-07-12 13:51:13 +02: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
a6d66cc7ec
chore: ensure correct version of golangci-lint is run in ci ( #13869 )
2024-07-10 14:50:38 -05:00
0787de88a9
chore: update documentation links to the new format ( #13797 )
2024-07-10 21:31:37 +03:00
bdd2caf95d
feat: implement thin vertical slice of system-generated notifications ( #13537 )
2024-07-08 15:38:50 +02:00
6c94dd4f23
chore: add DRPC server implementation for network telemetry ( #13675 )
2024-07-02 01:50:52 +10:00
5b59f2880f
fix: fix workspacesdk to return error on API mismatch ( #13683 )
2024-06-27 15:02:43 +04: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
34c67e8428
test: add unit test helper to create templates in second organizations ( #13628 )
...
* chore: add coderdtest helpers
2024-06-24 12:55:57 -05:00
0e933f0537
chore: refactor user -> rbac.subject into a function ( #13624 )
...
* chore: refactor user subject logic to be in 1 place
* test: implement test to assert deleted custom roles are omitted
* add unit test for deleted role
2024-06-21 11:30:02 -05:00
889daf200e
feat(enterprise): add auditing to SCIM ( #13614 )
2024-06-20 17:22:27 -05:00
e987ad1d89
fix: don't allow "new" or "create" as url-friendly names ( #13596 )
2024-06-18 15:36:13 -06: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
3d30c8dc68
chore: protect reserved builtin rolenames ( #13571 )
...
Conflicting built-in and database role names makes it hard to
disambiguate
2024-06-13 15:12: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
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
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
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
de8149fbfd
chore: move template meta last_used_at update to workspacestats ( #13415 )
2024-05-31 12:26:19 -04:00
5789ea5397
chore: move stat reporting into workspacestats package ( #13386 )
2024-05-29 11:49:08 -04:00
afd9d3b35f
feat: add api for patching custom org roles ( #13357 )
...
* chore: implement patching custom organization roles
2024-05-29 09:49:43 -05: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
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
ad8c314130
chore: implement api for creating custom roles ( #13298 )
...
api endpoint (gated by experiment) to create custom_roles
2024-05-16 13:47:47 -05:00
1f5788feff
chore: remove rbac psuedo resources, add custom verbs ( #13276 )
...
Removes our pseudo rbac resources like `WorkspaceApplicationConnect` in favor of additional verbs like `ssh`. This is to make more intuitive permissions for building custom roles.
The source of truth is now `policy.go`
2024-05-15 11:09:42 -05:00
cb6b5e8fbd
chore: push rbac actions to policy package ( #13274 )
...
Just moved `rbac.Action` -> `policy.Action`. This is for the stacked PR to not have circular dependencies when doing autogen. Without this, the autogen can produce broken golang code, which prevents the autogen from compiling.
So just avoiding circular dependencies. Doing this in it's own PR to reduce LoC diffs in the primary PR, since this has 0 functional changes.
2024-05-15 09:46:35 -05:00
721ab2a1b4
chore: add workspace activity linter ( #13273 )
2024-05-14 12:31:31 -04:00
ebee9288ae
fix: properly convert max port share level for oss ( #13261 )
2024-05-13 14:37:51 -04:00
d8e0be6ee6
feat: add support for multiple banners ( #13081 )
2024-05-08 15:40:43 -06:00
24448e79fe
fix: prevent extending if template disallows ( #13182 )
2024-05-08 12:58:14 -03:00