Commit Graph

2148 Commits

Author SHA1 Message Date
Hugo Dutka d3a56ae3ef feat: enable GitHub OAuth2 login by default on new deployments (#16662)
Third and final PR to address
https://github.com/coder/coder/issues/16230.

This PR enables GitHub OAuth2 login by default on new deployments.
Combined with https://github.com/coder/coder/pull/16629, this will allow
the first admin user to sign up with GitHub rather than email and
password.

We take care not to enable the default on deployments that would upgrade
to a Coder version with this change.

To disable the default provider an admin can set the
`CODER_OAUTH2_GITHUB_DEFAULT_PROVIDER` env variable to false.
2025-02-25 16:31:33 +01:00
Steven Masley 658825cad2 feat: add sourcing secondary claims from access_token (#16517)
Niche edge case, assumes access_token is jwt. 

Some `access_token`s are JWT's with potential useful claims.
These claims would be nearly equivalent to `user_info` claims.
This is not apart of the oauth spec, so this feature should not be
loudly advertised. If using this feature, alternate solutions are preferred.
2025-02-24 13:38:20 -06:00
Steven Masley e005e4e51d chore: merge provisioner key and provisioner permissions (#16628)
Provisioner key permissions were never any different than provisioners.
Merging them for a cleaner permission story until they are required (if
ever) to be seperate.

This removed `ResourceProvisionerKey` from RBAC and just uses the
existing `ResourceProvisioner`.
2025-02-24 13:31:11 -06:00
Jaayden Halko 546a549dcf feat: enable soft delete for organizations (#16584)
- Add deleted column to organizations table
- Add trigger to check for existing workspaces, templates, groups and
members in a org before allowing the soft delete

---------

Co-authored-by: Steven Masley <stevenmasley@gmail.com>
Co-authored-by: Steven Masley <Emyrk@users.noreply.github.com>
2025-02-24 12:59:41 -05:00
Edward Angert bebf2d5eb8 docs: update Coder version in Kubernetes doc (#16658)
closes #16570 

thanks @Cjkjvfnby !


@matifali I think there is/was an automation, but I'm not sure if it's
been dropped. `kubernetes.md` has:

```md
<!-- autoversion(mainline): "--version [version]" -->
...
<!-- autoversion(stable): "--version [version]" -->
```

~additionally, I removed the `## Prerequisites` section from
`kubernetes-logs.md` because if it's only a requirement for Coder
versions earlier than 0.28.0, it's probably more confusing than useful
to the majority of readers.~

---------

Co-authored-by: M Atif Ali <atif@coder.com>
2025-02-24 10:02:12 -05:00
Danny Kopping 4c438bd4d3 feat(cli): add local and UTC time options to ping cmd (#16648)
It's sometimes useful to see when each pong was received, for
correlating these times with other events.

---------

Signed-off-by: Danny Kopping <danny@coder.com>
2025-02-24 05:38:17 +00:00
M Atif Ali f8a49f4984 docs: remove the prerequisite step for kubernetes logs streaming (#16625) 2025-02-21 22:58:26 +05:00
Hugo Dutka 8c5e7007cd feat: support the OAuth2 device flow with GitHub for signing in (#16585)
First PR in a series to address
https://github.com/coder/coder/issues/16230.

Introduces support for logging in via the [GitHub OAuth2 Device
Flow](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps#device-flow).

It's previously been possible to configure external auth with the device
flow, but it's not been possible to use it for logging in. This PR
builds on the existing support we had to extend it to sign ins.

When a user clicks "sign in with GitHub" when device auth is configured,
they are redirected to the new `/login/device` page, which makes the
flow possible from the client's side. The recording below shows the full
flow.


https://github.com/user-attachments/assets/90c06f1f-e42f-43e9-a128-462270c80fdd

I've also manually tested that it works for converting from
password-based auth to oauth.

Device auth can be enabled by a deployment's admin by setting the
`CODER_OAUTH2_GITHUB_DEVICE_FLOW` env variable or a corresponding config
setting.
2025-02-21 18:42:16 +01:00
M Atif Ali 53f0007acb chore(docs): fix 2.19 release status in releases.md (#16619) 2025-02-19 13:52:23 +00:00
Danielle Maywood d2419c89ac feat: add tool to send a test notification (#16611)
Relates to https://github.com/coder/coder/issues/16463

Adds a CLI command, and API endpoint, to trigger a test notification for
administrators of a deployment.
2025-02-19 13:08:38 +00:00
Danny Kopping 833ca53e51 chore: document docker-compose development workflow (#16618) 2025-02-19 14:56:24 +02:00
Marcin Tojek 7fd04d4c54 docs: update ssh key description (#16602)
Fixes: https://github.com/coder/coder/issues/15672
2025-02-18 13:06:19 +01:00
Colin Adler a777c2694e chore: upgrade terraform to 1.10.5 (#16519)
- Updates `terraform` to
[v1.10.5](https://github.com/hashicorp/terraform/blob/v1.10.5/CHANGELOG.md#1105-january-22-2025)
- Updates provider to >=2.0.0 in provider testdata fixtures
- Fixes provider to required release version for resource monitors
- Fixes missing leading / in volumes in resource monitor tests
---------

Co-authored-by: Cian Johnston <cian@coder.com>
2025-02-18 11:45:22 +00:00
Edward Angert f66a59f381 docs: highlight the tip in coder-preview section and move step (#16597)
- moves the step out of the tip and the tip into the step
- adds some context to what to do with the URL
2025-02-17 12:36:06 -05:00
Mathias Fredriksson b5329ae1cd feat: add workspace agent connect and app open audit types (#16493)
This commit adds new audit resource types for workspace agents and
workspace apps, as well as connect/disconnect and open/close actions.

The idea is that we will log new audit events for connecting to the
agent via SSH/editor.

Likewise, we will log openings of `coder_app`s.

This change also introduces support for filtering by `request_id`.

Updates #15139
2025-02-17 13:02:30 +00:00
Edward Angert a5643b6f8c docs: add doc on how to try a coder-preview build (#16314)
Co-authored-by: M Atif Ali <atif@coder.com>
2025-02-17 12:36:14 +00:00
Mathias Fredriksson 77306f3de1 feat(coderd): add filters and fix template for provisioner daemons (#16558)
This change adds provisioner daemon ID filter to the provisioner daemons
endpoint, and also implements the limiting to 50 results.

Test coverage is greatly improved and template information for jobs
associated to the daemon was also fixed.

Updates #15084
Updates #15192
Related #16532
2025-02-14 17:26:46 +02:00
Ben Potter a69961bbd2 docs: add mention of CLI command to create token on behalf of another user (#15138)
this was completed by #14813, but not documented

---------

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-14 07:53:19 -06:00
Stephen Kirby 766c05cfc6 chore(docs): update list of events in notification docs (#16516)
Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-13 14:42:28 -06:00
Mathias Fredriksson e38bd27183 feat(coderd): add support for provisioner job id and tag filter (#16556)
This change adds to new filters to the provisionerjobs endpoint, id
(array) and tags (map).

Updates #15084
Updates #15192
Related #16532
2025-02-13 18:24:27 +02:00
Edward Angert ade0a53ddb docs: add markdown fields in webhook payloads (#16542)
These changes were made in #14931 but didn't make it into the
restructured docs

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-13 10:35:05 -05:00
Jullian Pepito d52d2397ea docs: fix link to CODER_QUIET_HOURS_DEFAULT_SCHEDULE in schedule doc (#16545)
Corrects incorrect reference to env variable
`CODER_DEFAULT_QUIET_HOURS_SCHEDULE`. Changes to
`CODER_QUIET_HOURS_DEFAULT_SCHEDULE`. Also hyperlinks to the server flag
(similar to `CODER_ALLOW_CUSTOM_QUIET_HOURS`)
2025-02-12 16:16:42 -05:00
Sas Swart 71cbf735e5 feat(coderd): add support for presets to the coder API (#16526)
This pull request builds on the existing migrations and queries to add
support for presets to the coder API.
2025-02-12 14:41:14 +02:00
Ethan 5ec385b36b feat(cli): support deleting tokens by id (#16341)
Since API keys can be created without a name, and we already perform the
deletion by ID, it makes sense to be able to delete tokens with *just*
the ID.
2025-02-12 18:18:17 +11:00
Bruno Quaresma e85da8b02b chore: return template data for provisioner daemons (#16514)
Return template data in provisioner jobs to be displayed in the
provisioners page.
2025-02-11 14:22:34 -03:00
Sas Swart 34b46f9205 feat(coderd/database): add support for presets (#16509)
This pull requests adds the necessary migrations and queries to support
presets within the coderd database. Future PRs will build functionality
to the provisioners and the frontend.
2025-02-11 13:55:09 +02:00
Bruno Quaresma e9b3561677 refactor: return template_icon and make metadata required (#16496) 2025-02-10 10:00:34 -03:00
Cian Johnston 31b1ff7d3b feat(agent): add container list handler (#16346)
Fixes https://github.com/coder/coder/issues/16268

- Adds `/api/v2/workspaceagents/:id/containers` coderd endpoint that allows listing containers
visible to the agent. Optional filtering by labels is supported.
- Adds go tools to the `coder-dylib` CI step so we can generate mocks if needed
2025-02-10 11:29:30 +00:00
Edward Angert 15d5563423 docs: update licensing steps in faq (#16484)
<details>

<summary>this would be a good candidate for an expand
component</summary>

but I don't think they work in our docs yet

</details>


[preview](https://coder.com/docs/@licensing-faq/tutorials/faqs#how-do-i-add-a-premium-trial-license)

---------

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-07 10:49:49 -05:00
M Atif Ali 33a89abf7a docs: remove official cloud installation methods from the unofficial page (#16452) 2025-02-06 20:05:18 +05:00
Mathias Fredriksson b04d883348 feat: add provisioner job metadata (#16454)
This change adds metadata to provisioner jobs to help with rendering
related tempaltes and workspaces in the UI.

Updates #15084
2025-02-06 16:19:20 +02:00
Edward Angert 44d9f5ff4e docs: comment out optional lines in values.yaml (#16457)
@michaelvp411 pointed out that some optional lines in `values.yaml`
could lead to errors if the user doesn't opt to use them. This PR
comments out those lines so that they're opt-in


[preview](https://coder.com/docs/@k8s-values-comment-opt/install/kubernetes)
(once cache catches up)

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-06 08:56:08 -05:00
M Atif Ali cff89fbf23 docs: cleanup Zed editor connection docs (#16467) 2025-02-06 06:38:50 +00:00
Edward Angert e289578721 docs: remove beta and closed issues from orgs doc (#16361)
## hold for release

track https://github.com/coder/coder/pull/16411

closes https://github.com/coder/internal/issues/291

[preview](https://coder.com/docs/@291-orgs-ga/admin/users/organizations)

---------

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-05 13:19:35 -05:00
Eric Paulsen cf96455901 fix(docs): indicate that custom roles are premium only (#16434)
our docs incorrectly stated that custom roles were included in the
now-deprecated Enterprise plan. this is PR implements the fix.
2025-02-04 20:19:14 +00:00
Vincent Vielle 7cbd77fd94 feat: improve resources_monitoring for OOM & OOD monitoring (#16241)
As requested for [this
issue](https://github.com/coder/internal/issues/245) we need to have a
new resource `resources_monitoring` in the agent.

It needs to be parsed from the provisioner and inserted into a new db
table.
2025-02-04 18:45:33 +01:00
M Atif Ali a15f06a7e3 docs: simplify OIDC config instructions (#16266) 2025-02-04 12:50:37 +05:00
Ben Potter dd6d57ed39 feat: add docs explaining how Coder integrates with PlatformX (#16378)
More details in https://github.com/coder/coder-platformx-notifications

Preview at
https://coder.com/docs/@dx-integration/admin/integrations/platformx (may
be slightly outdated due to caching)

closes https://github.com/coder/coder/issues/16308

---------

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
Co-authored-by: Edward Angert <EdwardAngert@users.noreply.github.com>
2025-02-03 18:06:30 -06:00
Edward Angert 951a8ed98d docs: add new licensing visibility to documentation (#16362)
closes https://github.com/coder/coder/issues/16260

[preview](https://coder.com/docs/@16260-licensing-ui/admin/licensing)

---------

Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
2025-02-03 11:18:44 -06:00
Edward Angert 92a490b3b6 docs: update IdP group and role sync documentation for UI configuration (#16315) 2025-01-31 20:39:03 +00:00
ケイラ 0e2ae10b47 feat: add additional patch routes for group and role idp sync (#16351) 2025-01-31 12:14:24 -07:00
ケイラ b256b204d0 feat: add endpoint for partial updates to org sync field and assign_default (#16337) 2025-01-30 13:55:17 -07:00
ケイラ 2371153a37 feat: add endpoint for partial updates to org sync mapping (#16316) 2025-01-30 10:52:50 -07:00
Guspan Tanadi 1aee589095 docs(admin/templates/): fix terraform provider links (#16338) 2025-01-30 09:08:59 +00:00
Edward Angert 3a179e9e97 docs: add a screenshot of the admin settings to doc (#16333)
add screenshot of admin settings to doc
2025-01-29 23:39:00 -05:00
Edward Angert 3897ea458b docs: adjust steps and add screenshots for orgs (#16248)
first in a series of updates to orgs docs
2025-01-29 12:58:55 -05:00
Cian Johnston b70437dbad chore(docs/admin/networking/index.md): remove duplicate note (#16322) 2025-01-29 11:13:56 +00:00
Cian Johnston 76adde91dc fix(provisioner/terraform/tfparse): allow empty values in coder_workspace_tag defaults (#16303)
* chore(docs): update docs re workspace tag default values
* chore(coderdenttest): use random name instead of t.Name() in newExternalProvisionerDaemon
* fix(provisioner/terraform/tfparse): allow empty values in coder_workspace_tag defaults
2025-01-28 09:11:39 +00:00
Mathias Fredriksson 75c899ff71 feat(cli): add provisioner job cancel command (#16252)
Fixes #16117
Updates #15084
2025-01-27 16:26:56 +00:00
Edward Angert a21306e8d6 docs: add zed editor doc to workspace-access (#16242)
add zed to workspace-access docs
2025-01-24 19:37:02 +00:00