Steven Masley
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
Kyle Carberry
c9cca9d56e
fix: transform underscores to hyphens for github login ( #13384 )
...
Fixes #13339 .
2024-06-11 13:34:05 +00:00
Ethan
dd243686e4
chore!: remove deprecated agent v1 routes ( #13486 )
2024-06-11 12:22:59 +10:00
Garrett Delfosse
5b9a65e5c1
chore: move Batcher and Tracker to workspacestats ( #13418 )
2024-06-10 15:35:23 -04:00
Spike Curtis
8326a3a675
chore: change mock clock to allow Advance() within timer/tick functions ( #13500 )
2024-06-10 15:27:24 +04:00
Steven Masley
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
Cian Johnston
48ecee1025
chore(cli): address cli netcheck test flake ( #13492 )
...
* netcheck: removes check for healthy node report in test
* coderd/healthcheck/derphealth: do not override parent context deadline
2024-06-07 10:01:54 +01:00
Steven Masley
7c3b8b6224
chore: duplicate migration file fix, 000216 ( #13498 )
2024-06-06 16:13:00 -05:00
Steven Masley
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
Kayla Washburn-Love
44a70a5bc2
feat: edit org display names and descriptions ( #13474 )
2024-06-06 10:59:59 -06:00
Cian Johnston
1131772e79
feat(coderd): set full name from IDP name claim ( #13468 )
...
* Updates OIDC and GitHub OAuth login to fetch set name from relevant claim fields
* Adds CODER_OIDC_NAME_FIELD as configurable source of user name claim
* Adds httpapi function to normalize a username such that it will pass validation
* Adds firstName / lastName fields to dev OIDC setup
2024-06-06 13:37:08 +01:00
Steven Masley
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
Spike Curtis
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
Spike Curtis
9c3fd5dd26
chore: add explicit Wait() to clock.Advance() ( #13464 )
2024-06-05 15:37:16 +04:00
Spike Curtis
42324b386a
chore: add clock pkg for testing time ( #13461 )
...
Adds a package for testing time/timer/ticker functions. Implementation is limited to `NewTimer` and `NewContextTicker`, but will eventually be expanded to all `time` functions from the standard library as well as `context.WithTimeout()`, `context.WithDeadline()`.
Replaces `benbjohnson/clock` for the pubsub watchdog, as a proof of concept.
Eventually, as we expand functionality, we will replace most time-related functions with this library for testing.
2024-06-05 13:55:45 +04:00
Steven Masley
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
Cian Johnston
168d2d6ba0
chore(coderd): add update user profile test for members ( #13463 )
2024-06-04 14:17:17 +01:00
Marcin Tojek
cd32c42699
fix(cli): inherit provisioner tags from last template version ( #13462 )
2024-06-04 11:59:54 +00:00
Colin Adler
40390ecc30
chore: fix TestServer/Prometheus/DBMetricsDisabled test flake ( #13453 )
...
See: https://github.com/coder/coder/actions/runs/9352137263/job/25739550487#step:5:368
2024-06-03 15:38:59 -05:00
Colin Adler
e4ac691468
chore: fix (*coderdtest.WorkspaceAgentWaiter).Wait() flake ( #13451 )
2024-06-03 14:46:56 -05:00
Steven Masley
27f26910b6
chore: external auth validate response "Forbidden" should return invalid, not an error ( #13446 )
...
* chore: add unit test to delete workspace from suspended user
* chore: account for forbidden as well as unauthorized response codes
2024-06-03 13:16:51 -05:00
Colin Adler
9d00a26a90
fix: add missing route for codersdk.PostLogSource ( #13421 )
2024-06-03 12:29:50 -05:00
Steven Masley
973cc2b875
chore: add edit organization role to cli ( #13365 )
...
Editing custom org roles from hidden org cli command.
2024-06-03 09:34:10 -05:00
Steven Masley
24ba81930b
chore: return failed refresh errors on external auth as string (was boolean) ( #13402 )
...
* chore: return failed refresh errors on external auth
Failed refreshes should return errors. These errors are captured
as validate errors.
2024-06-03 09:33:49 -05:00
Marcin Tojek
bf98b0dfe4
fix: correct swagger description for Insights API ( #13442 )
2024-06-03 15:48:31 +02:00
Kayla Washburn-Love
b248f125e1
chore: rename notification banners to announcement banners ( #13419 )
2024-05-31 10:59:28 -06:00
Garrett Delfosse
de8149fbfd
chore: move template meta last_used_at update to workspacestats ( #13415 )
2024-05-31 12:26:19 -04:00
Garrett Delfosse
5789ea5397
chore: move stat reporting into workspacestats package ( #13386 )
2024-05-29 11:49:08 -04:00
Steven Masley
afd9d3b35f
feat: add api for patching custom org roles ( #13357 )
...
* chore: implement patching custom organization roles
2024-05-29 09:49:43 -05:00
Cian Johnston
cca3cb1c55
feat(provisioner): pass owner git ssh key ( #13366 )
2024-05-29 11:43:08 +01:00
Kyle Carberry
79d73f77f5
chore: skip Azure TestExpiresSoon ( #13385 )
...
Adds some context to the test skip so it can be removed or enabled in the future.
2024-05-28 16:45:41 +00:00
Dean Sheather
e5bb0a7a00
chore: add easy NAT integration tests part 2 ( #13312 )
2024-05-24 16:32:30 +10:00
Steven Masley
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
Spike Curtis
b43344b672
feat: use latest gVisor and go 1.22.3 ( #13338 )
2024-05-23 08:22:44 -04:00
Marcin Tojek
c2837a62e4
feat: evaluate provisioner tags ( #13333 )
2024-05-23 07:53:51 +00:00
Kayla Washburn-Love
3f1e9c038a
feat(coderd): add endpoints for editing and deleting organizations ( #13287 )
2024-05-21 12:46:31 -06:00
Steven Masley
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
Marcin Tojek
b8b80fe6d2
feat: store coder_workspace_tags in the database ( #13294 )
2024-05-20 13:30:19 +00:00
Kayla Washburn-Love
a63d427efd
chore: add unique org name constraint to db ( #13311 )
2024-05-17 12:40:38 -06:00
Steven Masley
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
Colin Adler
85de0e966d
chore: fix TestMeasureLatency/MeasureLatencyRecvTimeout flake ( #13301 )
2024-05-16 13:42:42 -05:00
Steven Masley
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
Steven Masley
194be12133
chore: verify validity of built in rbac roles ( #13296 )
...
Verifies our built in roles are valid according to our policy.go. Working on custom roles requires the dynamic roles to adhere to these rules. Feels fair the built in ones do too.
2024-05-16 12:07:44 -05:00
Mathias Fredriksson
a0fce363cd
feat(coderd): add times_used to coder_apps 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
Steven Masley
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
Steven Masley
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
Garrett Delfosse
721ab2a1b4
chore: add workspace activity linter ( #13273 )
2024-05-14 12:31:31 -04:00
Steven Masley
9ced001570
chore: add multi-org experiment for UI view toggling ( #13260 )
...
* chore: Add multi-org experiment
UI will use to toggle different views
2024-05-13 13:46:01 -05:00
Garrett Delfosse
ebee9288ae
fix: properly convert max port share level for oss ( #13261 )
2024-05-13 14:37:51 -04:00
Danny Kopping
4671ebb330
feat: measure pubsub latencies and expose metrics ( #13126 )
2024-05-10 12:31:49 +00:00