92c217bd85
fix: add index on workspace_agents.auth_token
( #5244 )
2022-12-02 01:29:05 +00:00
ab3b3d5fca
feat: add debouncing to provisionerd rpc calls ( #5198 )
2022-12-01 16:54:53 -06:00
5457dd0c65
feat: Let port-forwarding support custom http(s) port ( #5084 )
2022-12-02 06:39:19 +10:00
2ec3b09ca7
fix: Fix nil-pointer deref on checkAuthorization
( #5236 )
...
Remove call to `err.Error()` on a `nil` error in `checkAuthorization`.
2022-12-01 18:42:10 +00:00
d9f2aaf3b4
feat: Add support for update checks and notifications ( #4810 )
...
Co-authored-by: Kira Pilot <kira@coder.com >
2022-12-01 19:43:28 +02:00
2a73362026
fix: add mutex to MockAuditor export to prevent race ( #5189 )
...
See: https://github.com/coder/coder/actions/runs/3575201153/jobs/6011435900 .
2022-11-30 16:25:30 +00:00
8b73844f69
feat: Validate Git tokens before consuming them ( #5167 )
...
* feat: Validate Git tokens before consuming them
This works the exact same way that the Git credential manager does. It ensures the user token is valid before returning it to the client.
It's been manually tested on GitHub, GitLab, and BitBucket.
* Fix requested changes
2022-11-29 12:08:27 -06:00
15f8967a8a
feat: tracing improvements ( #4988 )
2022-11-29 07:22:10 +10:00
d402914eb7
refactor: Return template version name in the workspace build API ( #5178 )
2022-11-28 19:53:56 +00:00
ab9298f382
chore: Rewrite rbac rego -> SQL clause ( #5138 )
...
* chore: Rewrite rbac rego -> SQL clause
Previous code was challenging to read with edge cases
- bug: OrgAdmin could not make new groups
- Also refactor some function names
2022-11-28 12:12:34 -06:00
d5ab4fdeb8
fix: auto-stop bumper works and refreshes ( #5162 )
...
* Publish updates to workspace deadline
* Fix sync between machines
2022-11-28 10:59:43 -05:00
a4a319a76e
feat: add CODER_OIDC_IGNORE_EMAIL_VERIFIED config knob ( #5165 )
...
* Adds a configuration knob CODER_OIDC_IGNORE_EMAIL_VERIFIED that allows
ignoring the email_verified OIDC claim
* Adds warning message at startup if CODER_OIDC_IGNORE_EMAIL_VERIFIED=true
* Adds warning whenever an unverified OIDC email is let through
* Skips flaky test on non-linux platforms
Co-authored-by: Mathias Fredriksson <mafredri@gmail.com >
2022-11-25 10:10:09 +00:00
25da224513
Filter query: has-agent connecting, connected, disconnected, timeout ( #5145 )
...
* WIP
* has-agent:connecting, connected
* Fix
* Fix
* has-agent:disconnected, timeout
* Fix: typo
* Fix
* TODOs
* databasefake
* Fix: typo
* More TODOs
* databasefake
* Timeout tests
* Address PR comments
* Implement FIXMEs
* Renamings
* Address PR comments
* Fix: readability
* Fix: refactor CASE logic
* CASE logic
* Fix
* Use CTE
* Polishing
* Comment
* WIP
* IS NOT NULL
* Without CTE
* One more optimization
* 2nd optimization
2022-11-24 15:33:13 +01:00
eff99f78fa
feat: Add support for MOTD file in coder agents ( #5147 )
2022-11-24 12:22:20 +00:00
913e461f79
Don't override 0 ttl with template default ( #5151 )
2022-11-23 10:30:38 -05:00
6786ca2854
Audit build outcomes/kira pilot ( #5143 )
...
* auditing failed builds
* logging workspace build successes
* remove duplicate workspace build entry
* fixed workspacebuilds_test
* PR feedback
* lint and migrations
* fix nil auditors
* workspace_build test
* fixed workspaces_teest
Co-authored-by: Colin Adler <colin1adler@gmail.com >
2022-11-22 13:22:56 -05:00
1f20cab110
fix: don't use yamux for in-memory provisioner{,d} streams ( #5136 )
2022-11-22 12:19:32 -06:00
2b6c229e4e
fix: Trigger workspace event after agent timeout seconds ( #5141 )
...
Fixes #5116
2022-11-22 11:01:28 +00:00
67941b4f80
chore: refactor audit page to use window function for count ( #5133 )
...
* Move count query to window function
* Unpack count and update types
* Remove count endpoint
* Update tests, wip
* Fix tests
* Update frontend, wip
* Remove space
* Fix frontend test
* Don't hang on error
* Handle no results
* Don't omit count
* Fix frontend tests
2022-11-21 11:30:41 -05:00
e86539db11
feat: Allow user to cancel workspace jobs ( #5115 )
...
* Add database column allow_user_cancel_workspace_jobs
* Adjust API
* site: typesGenerated.ts
* Expose template.allow_ in Workspaces API
* Fix: site tests
* Fix: make fmt/prettier
* Fix: enterprise
* Database tests
* Add CLI tests
* Add checkbox
* i18n
* Logic: block cancelling
* Unit tests for conditional cancel
* Fix: message
* Address PR comment
* Address PR comments
* Fix: make
2022-11-21 11:43:53 +01:00
ae38bbeab6
chore: refactor agent stats streaming ( #5112 )
2022-11-18 16:46:53 -06:00
69e8c9e7b4
feat: add reconnectingpty loadtest ( #5083 )
2022-11-17 16:57:15 +00:00
acf34d4295
site: support high build time variation in progress bar ( #4941 )
2022-11-17 16:56:56 +00:00
fb9ca7b830
feat: Add the option to generate a trial license during setup ( #5110 )
...
This allows users to generate a 30 day free license during setup to
test out Enterprise features.
2022-11-16 17:09:49 -06:00
b6703b11c6
feat: Add external provisioner daemons ( #4935 )
...
* Start to port over provisioner daemons PR
* Move to Enterprise
* Begin adding tests for external registration
* Move provisioner daemons query to enterprise
* Move around provisioner daemons schema
* Add tags to provisioner daemons
* make gen
* Add user local provisioner daemons
* Add provisioner daemons
* Add feature for external daemons
* Add command to start a provisioner daemon
* Add provisioner tags to template push and create
* Rename migration files
* Fix tests
* Fix entitlements test
* PR comments
* Update migration
* Fix FE types
2022-11-16 16:34:06 -06:00
66d20cabac
fix: index GetWorkspaceAgentsByResourceIDs
query ( #5021 )
2022-11-16 14:40:57 -06:00
e7f1192614
fix: add index for GetProvisionerLogsByIDBetween
( #5020 )
2022-11-16 14:32:29 -06:00
015a6f9e26
fix: RBAC should default deny missing variables. ( #5105 )
...
* fix: RBAC should default deny missing variables.
The default behavior was to use 'true' for missing variables. This
was an incorrect assumption. If the variable is missing, the new
default is to deny (fail secure).
* Assert 1 workspace is returned for the owners
2022-11-16 11:01:09 -06:00
e6ead7d915
chore: refactor workspaces query to use window function ( #5079 )
...
* Use window function in query
* Convert workspace rows and unpack count
* Update types
* Fix Scan bug
* Remove getCountError
2022-11-16 10:16:37 -05:00
32927b1a24
feat: show template.display_name on Workspace pages ( #5082 )
...
* feat: expose template.display_name via Workspaces endpoint
* Fix: MockWorkspace
* UI: Workspace stats and row
* Show template.display_name on pages
* Fix: address PR comments
* Add helper function: getDisplayWorkspaceTemplateName
2022-11-16 15:50:32 +01:00
c1ecc91aab
feat: Add fallback troubleshooting URL for coder agents ( #5005 )
2022-11-16 12:53:02 +02:00
fc0a493b72
feat: Add no_refresh
option to Git auth configs ( #5097 )
...
This allows organizations to disable refreshing Git tokens
and instead prompt for authentication again.
2022-11-15 21:06:13 +00:00
9fb710a04f
feat: Add allow everyone option to GitHub OAuth2 logins ( #5086 )
...
* feat: Add allow everyone option for GitHub OAuth
* fix: Detect team when multiple orgs are present
Co-authored-by: 李董睿煊 <dongruixuan@hotmail.com >
2022-11-15 18:56:46 +02:00
f262fb4811
feat: Add template version page ( #5071 )
2022-11-15 16:24:13 +00:00
88f3691dcc
feat: add count to get users endpoint ( #5016 )
2022-11-14 17:22:57 -05:00
49b340e039
Show template.display_name in the site UI ( #5069 )
...
* Show display_name field in the template settings
* Show template.display_name on pages: Templates, CreateWorkspace
* Fix: template.display_name pattern
* make fmt/prettier
* Fix tests
* Fix: make fmt/prettier
* Fix: merge
* Fix: autoFocus
* i18n: display_name
2022-11-14 21:11:50 +01:00
e872e18883
chore: Set initialism for DefaultTTL (from DefaultTtl) ( #4996 )
2022-11-14 20:14:08 +02:00
97dbd4dc5d
Implement Quotas v3 ( #5012 )
...
* provisioner/terraform: add cost to resource_metadata
* provisionerd/runner: use Options struct
* Complete provisionerd implementation
* Add quota_allowance to groups
* Combine Quota and RBAC licenses
* Add Opts to InTx
2022-11-14 17:57:33 +00:00
fefacc5bfd
chore: Expose additional agent options to telemetry ( #5070 )
...
This also adds a few properties for deployments!
2022-11-14 10:11:08 -06:00
cf5d48bb5a
fix: do not skip properties on creating templates ( #5060 )
...
* fix: do not skip properties while creating templates
* test: empty edit
2022-11-14 15:32:18 +01:00
49c7648af5
chore: Close idle connections on test cleanup ( #4993 )
...
It's possible that this was the source of a leak on Windows...
2022-11-13 14:06:03 -06:00
82f494c99c
fix: Improve tailnet connections by reducing timeouts ( #5043 )
...
* fix: Improve tailnet connections by reducing timeouts
This awaits connection ping before running a dial. Before,
we were hitting the TCP retransmission and handshake timeouts,
which could intermittently add 1 or 5 seconds to a connection
being initialized.
* Update Tailscale
2022-11-13 11:33:05 -06:00
95fb59696e
Refactor Provisioner to distinguish Plan and Apply ( #5036 )
2022-11-11 16:45:58 -06:00
4b7c710755
fix: Block creating workspaces with deleted templates ( #5019 )
...
@coadler and @deansheather bricked a Coder deployment with this...
2022-11-10 16:53:14 -06:00
927c241995
fix: Debounce AcquireJob when no jobs are available ( #5017 )
...
This prevents constant database spam at scale to a maximum
of 60 queries/s per coderd instance.
2022-11-10 22:37:33 +00:00
8e5af82275
feat: add api-rate-limit flag ( #5013 )
2022-11-10 21:53:48 +00:00
2042b575dc
feat: Add template display name (backend) ( #4966 )
...
* Rename to nameValidator
* Refactor: NameValid
* Fix: comment
* Define new migration
* Include display_name
* Update typesGenerated.ts
* Update meta
* Adjust tests
* CLI tests
* Fix: audit
* Fix: omitempty
* site: display_name is optional
* unit: TestUsernameValid
* entities.ts: add display_name
* site: TemplateSettingsPage.test.tsx
* Fix: TemplateSettingsForm.tsx
* Adjust tests
* Add comment to display_name column
* Fix: rename
* Fix: make
* Loosen regexp
* Fix: err check
* Fix: template name length
* Allow for whitespaces
* Update migration number
2022-11-10 21:51:09 +01:00
f3eb662208
fix: add index for workspace_resource.job_id
column ( #5009 )
2022-11-10 20:09:44 +00:00
766a2ad590
chore: refactor workspace count to single route ( #4809 )
...
Co-authored-by: Presley Pizzo <presley@coder.com >
2022-11-10 13:25:46 -05:00
4885ecc3ad
fix: Allow dumping db with pg_dump, utilize make cache ( #4964 )
2022-11-10 12:54:47 +02:00